Derribando viejos mitos: firewall - antivirus

La seguridad es lo más sagrado que hay: voy a intentar analizarlo desde el punto de vista "doméstico". A nivel empresarial hay que matizar algún punto. No por la lógica expuesta a continuación sino por motivos también de seguridad, pero en este caso por "seguridad" de que el responsable de seguridad informática siga en su puesto y no lo pongan en la calle.
Este principio viola la seguridad en sí.

INTRODUCCIÓN

Repasemos. ¿Qué es un virus, troyano, gusano, spyware?: no es nada más que un programa informático. Y para que un programa informático entre en nuestro ordenador solo hay dos vías:

  1. Que ejecutemos un programa infectado.
  2. Que entre por la red. (Internet, red local, etc).

He distinguido los dos puntos, ya que en el primero de ellos se requiere nuestra intervención y en el segundo no. Veamos el desglose del punto 1.:

1.  Que ejecutemos un programa infectado:

  • Ejecutando un programa descargado que esté infectado.
  • Autorizando a que nuestro navegador instale un ActiveX o cualquier complemento infectado
  • Insertando un disquete, pen o cdrom, infectado mientras tenemos configurado el autorun -ejecución automática- en las unidades

Repasemos un poco la distinción de los posibles programas malignos: la diferencia entre virus y troyano es muy sutil, en un principio, un virus era el que hacía la maldad desde el momento en que entraba en nuestra máquina,. Un troyano, por el contrario, era aquel que permanecía oculto hasta que sucedía un evento determinado en el cual se despertaba y hacía la maldad. En cambio un spyware era simplemente aquel que recolectaba nuestros datos o nuestras costumbres para enviarlos a la red -acceso a ciertas páginas, descargas de música legales, etc. Es decir, aquel que espiaba nuestras costumbres. Normalmente, al principio, era solo para recoger estadísticas.

Posteriormente aparecieron los "rootkits". Esta palabra está acuñada del Linux - Unix, en donde surgieron por primera vez. No indica nada más que es un proceso oculto e indetectable. Puede ser maligno o no. Simplemente, para ser un "rootkit" es condición necesaria que sea indetectable por cualquier método de análisis de procesos. Si es detectable mediante algún método de análisis de procesos, entonces no es "rootkit". Esto, semánticamente, nos lleva a la primera contradicción: no pueden existir los anti-rootkits, ya que si son capaces de detectar un proceso oculto este deja de ser un proceso oculto, entonces ese proceso no es un "rootkit".

Como veremos, nos vamos a encontrar en esto del mundo de la seguridad muchas lagunas, muchas inconsistencias. y muchos engaños interesados de las propias casas de "seguridad". Las "herramientas" -por llamarlo de alguna forma- de seguridad dan dinero. Mucho dinero. Los virus, troyanos, spyware, etc. también dan mucho dinero.
El romanticismo de los virus primitivos residía en aquella época gloriosa en que el autor, uno solo o un grupo reducido, destrozaban tu ordenador o bien hacían en algún momento determinado alguna cosa graciosa: invertir todos los textos, o que las letras se cayesen por nuestra pantalla. El objetivo era demostrar que podían hacer lo que querían con tu máquina Que entraban en ella y eran dueños y señores.

 

INTERESES ECONÓMICOS

El romanticismo suele terminar cuando surgen intereses y, si los intereses son económicos, termina radicalmente. Poco a poco descubrieron, gracias al spyware, que también podían capturarse datos muy sensibles: datos personales, datos bancarios, tarjetas de crédito, datos de órdenes de compra en Internet... en ese momento se invirtió la balanza: cambió la táctica.

En la actualidad hay una gran industria detrás de los virus, ahora ya no quieren destrozar tu ordenador, incluso lo cuidan. Se protegen contra otros virus, no quieren causar malfuncionamientos, se ocultan, son muy cuidadosos contigo. ¿Motivos?... si no denotan su presencia de ninguna manera no te preocuparán: una persona no va al médico porque sí, suele ir cuando tiene síntomas. Quieren ser parte de tu máquina, integrarse en el sistema operativo, convivir con el resto de tu software, ser parte de tu IP, de tu dirección, de tus datos. Y sobre todo, por ejemplo, de tus datos bancarios. Por detrás hay ya un grupo organizado de personas y de técnicos a la espera de poder capturar, distribuir, y utilizar dichos datos. Mafias enteras se mueven en la actualidad en países del este recopilando esta información y posteriormente vendiendo paquetes con ellos a mafias locales para su explotación.

Acabo de comentar que una persona no suele ir al médico porque sí. No es del todo cierto, si estamos usando los símiles con la medicina, también se va a reconocimientos periódicos, etc. De una manera similar, podríamos decir que la medicina preventiva en este caso serían los antivirus.
Esto es un error tal y como veremos más adelante. Anticipemos: ¿para qué me vale una medicina preventiva que sólo diagnostica catarros comunes, que se pueden curar de una manera muy sencilla, y no diagnostica ninguna enfermedad grave o incurable? ¿Si me protejo de las enfermedades peligrosas también estaré protegido de esos catarros?

 

UN POCO DE HISTORIA

Repasemos un poco la historia de la seguridad. La historia, que casi siempre se olvida, es precisamente la que nos puede dar la clave de prácticas obsoletas o impensables en la actualidad pero que han llevado a crear mitos. Leyendas urbanas.
Hay una fecha crítica: mediados de agosto del año 2003. Nació un gusano: el "blaster". Los gusanos, son variantes de los "bichos" anteriores, pero que se reproducen por la red (punto 2. citado anteriormente). Para poder reproducirse, usan alguna vulnerabilidad del sistema operativo.
Repasemos con detalle la historia, porque hubo un antes y un después en Microsoft. Y hubo un antes y un después (apogeo) en las casa de antivirus.

Hasta esa fecha, Microsoft no era consciente de la seguridad, o mejor dicho. no le preocupaba. Los virus además eran de los del tipo "romántico" por lo que si entraban bastaba con echar la culpa al usuario que ejecutaba lo que no debía. Los pocos gusanos que había (alguno muy prolífico) tampoco le preocupaban en exceso, ya que sólo afectaban a servidores (por ejemplo el CodeRed en los servidores web IIS) y por tanto era responsabilidad de los Administradores de estos servidores el intentar poner las medidas que estaban en sus manos.

Pero el "blaster" saltó al gran público. Y saltó porque en esa época lo normal no era tener ADSL con router, sino un simple conexión de acceso telefónico, o bien, los pocos privilegiados que tenían ADSL usaban el router en modo bridge (puente), con lo cual la dirección IP de la máquina era la pública de Internet. Nuestra máquina estaba "en directo" con Internet.
En aquel entonces, los creadores de virus seguían siendo románticos pero empezaban a vislumbrar ya intereses económicos. Existían todavía páginas "altruistas" llamadas los 0Day (zero day) que no informaban de vulnerabilidades hasta que Microsoft las parcheaba. Pero los creadores de virus también descubrieron que, en vez de buscar agujeros en el sistema operativo, les era más rápido y práctico esperar a que saliese el parche de Microsoft e inmediatamente analizar qué es lo que ese parche arreglaba. Debido a que los parches en general son pequeños, es más fácil hacer ingeniería inversa sobre el parche y ver lo que corrige: de esta manera, se podían preparar gusanos que entrasen en máquinas no parcheadas, en máquinas que no hubiesen usado WindowsUpdate.
Fue igualmente necesario crear la primera leyenda urbana interesada: los parches estropeaban el sistema operativo. Transmitiendo esta leyenda sabían que siempre tendrían máquinas a su disposición.
En aquellos años, en general, la gente se resistía a usar WindowsUpdate por dos motivos: uno por esa "leyenda urbana" en la cual querían creer sobre todo por el motivo de que: era caro y lento (conexión telefónica) tener la máquina al día con todas las actualizaciones de WindowsUpdate.

Estaba preparado el caldo de cultivo.
Los hackers habían conseguido velocidad en la ingeniería inversa de los parches. Eran capaces en aquel momento de descifrar y preparar un "bicho" en unos 15 días. En la actualidad son capaces de hacerlo y distribuir un "bicho" en cuestión de horas.
En estas condiciones, el "blaster" infectó en pocos días a millones de máquinas A pesar de ser totalmente detectable y fácilmente interceptable, las casas de antivirus no actuaron con rapidez. Los sistemas operativos no tenían cortafuegos: un simple router de Internet, o en su defecto un simple cortafuegos, habrían impedido su distribución. El desastre estaba servido.

Un par de sitios del lado oscuro distribuyeron además el famoso programa DCOM, ideal para los script-kiddies, o niños scripts, o mejor dicho, niños idiotas creyéndose hackers con afán de hacer el mal. Con ese programa cualquiera, con solo poner la IP de una máquina (que podía seleccionar al azar, o buscar entre las IP's de participantes de grupos de noticias, o de correos por Internet), podía entrar en una máquina, hacer lo que quisiese y sólo nos enteraríamos cuando el atacante hubiese finalizado y se desconectase. En ese momento surgiría un error del subsistema RPC de Windows con una ventana diciendo que nuestra máquina se reiniciaría en menos de 1 minuto. El mal era inevitable, el atacante ya había hecho todo lo que tenía que hacer.

La imagen pública de Microsoft empezó a dañarse. Por primera vez en la historia de la informática, un fabricante de Sistemas Operativos empezó a ser consciente de su responsabilidad. Llegado a este punto, creo que al creador del 'blaster' había que darle una medalla ya que fue, irónicamente, el que hizo que existiese un antes y un después. y una conciencia pública de lo que podía pasar. Obligó además a un gigante de la informática a preocuparse de la seguridad de los sistemas operativos que él mismo distribuía.

 

PRIMERAS MODIFICACIONES EN S.O.

Recordemos que en esa época estaba el XP + SP1. Empezó el desarrollo del SP2 y cambió el enfoque de Microsoft: había que orientarlo, por obligación gracias al creador del “blaster”, a la seguridad. No ironizo cuando hago comentarios sobre que la informática en general  tiene mucho que agradecerle ya que gracias a él se tomó conciencia a nivel público de la seguridad.

Las acciones por parte de Microsoft a nivel del sistema operativo fueron tres:

  1. Incorporar cortafuegos.
  2. Incorporación del centro de seguridad que vigilaba el punto 1. y que aconsejaba montar antivirus.
  3. Prevenir el “desbordamiento de buffer”, método por el cual se podía inyectar código a un programa vulnerable que no lo controlase y ejecutarse (el famoso DEP). Este punto es un poco técnico, por lo que merece un capítulo aparte.

Y simultáneamente desarrollar una herramienta, Windows Defender, de tipo reactivo. Es decir: análisis por detrás de posibles spyware (basado en bases de datos sobre programas que recaban información en nuestra máquina). Al ser de tipo reactivo no influye en el rendimiento de la máquina.

Vamos a analizaralgunas de las acciones mencionadas:

 

EFECTIVIDAD DE LOS ANTIVIRUS

 Seamos ahora entonces un poco más serios: veamos la efectividad de los antivirus y sus ventajas e inconvenientes.
¿Qué es un antivirus?: Es un programa del tipo “activo” que vigila la posible entrada de virus en nuestra máquina Al ser “activo” está controlando online –o lo intenta- cualquier método por el cual pueda entrar un elemento peligroso en nuestra máquina Por tanto, debe controlar:

Fijémonos en que coloca dos filtros a nivel máquina: controla todos los accesos a al red, y todos los accesos a disco. Forma un cuello de botella en ambos, todo tiene que pasar por el antivirus. Con la CPU’s actuales esto no debiera ser excesivo problema -a menos que queramos tener una máquina puntera y de reacción inmediata-, pero siempre causa problemas por los drivers que tiene que incorporar a los sistemas. Estos drivers nunca están tan bien afinados como el propio sistema operativo y son causantes de bloqueos, pantallazos azules, etc. Cuando sucede una situación de estas es difícil para el usuario determinar si el culpable es o no al antivirus, pero siempre es posible analizando el volcado de memoria que se produce en una pantalla azul.
Es muy problemático desmontar el antivirus de un sistema. Debido a que necesita interceptar todo, se mete a todos los niveles dentro del sistema operativo. Sus programas de “desinstalación” siempre son incompletos, de tal forma que las propias casas de antivirus han tenido que hacer herramientas de limpieza, que dejan en sus webs, para desinstalarlos. Siempre hay que pasar un herramienta de estas, bajadas de la web del fabricante de antivirus, para intentar hacer una limpieza mas o menos aceptable.

¿Efectividad? La localización de los virus se basa en dos ámbitos de actuación:

Con respecto a los elementos subsidiarios que controla (navegador, mensajería y correo) lo que hace es bloquear todo lo que potencialmente considera peligroso y ser un alarmista con respecto a ello. El problema de ser alarmista es que cuando vemos que no pasa nada, dejamos ya de hacer caso a la herramienta… o la bajamos en cuanto a su nivel de control.

A la vista de lo anterior, parece que nos “fiamos” de una herramienta… que no es fiable. Ese grado de confianza hace que nuestras propias herramientas de defensa: el sentido común y las buenas prácticas, se pierdan. Este es el punto más negativo que veo con respecto a los antivirus. Incluso los problemas nombrados de errores, pantallas azules, el no acertar, la sobrecarga de CPU y de acceso a disco, la lentitud de la red… serían puntos aceptables siempre y cuando no perdiésemos las buenas prácticas y el sentido común.
Es paradójico que al poner una herramienta de seguridad lo que consigamos precisamente es el efecto contrario: menos seguridad.

 

BUENAS PRÁCTICAS

¿Qué se entiende por “Buenas Practicas”?

... continuará.....

--

José Manuel Tella Llop
jmtella@compuserve.com

Multinglés/JMT        

23 - junio - 2009