Sobre las botnets indestructibles. ¿De verdad que lo son?

En estos días hemos leído en los medios todo tipo información sobre una botnet indestructible que supuestamente ha dejado a todos los expertos del mundo "con la boca abierta" (frase que han empleado en muchos artículos). En este caso concreto, ¿qué significa eso de indestructible?, porque puede llegar a confundir y asustar al usuario:
¿significa que no podré eliminarlo nunca de mi sistema? ¿Significa que nadie podrá eliminar nunca la botnet? Vamos a intentar aclarar por qué se ha llegado a esta conclusión, y si es cierta o no.

Kaspersky ha hecho sonar la alarma. TDL4 era la evolución de TDL (nacida en 2007). Esta nueva versión contaba con 4.5 millones de sistemas infectados, y dispone de recursos muy avanzados para permanecer en el sistema infectado. Cabe destacar que se trata de una botnet destinada a crear fraudes por "click" en publicidad. Sus principales características que destacaba el artículo son:

Nueva con ... ¡4.5 millones de víctimas!

Parece que ya se sabía que la versión 4 estaba activa desde mediados de 2010. ¿4.5 millones de zombis es mucho? Desde el artículo de abuse.ch, llamado How big is big? Se especula sobre la dimensión de ciertas botnets. La verdad es que TDL es de las más grandes, llegando a captar
90.000 direcciones IPs únicas infectadas en 24 horas. Realmente, hoy en día lo complicado no es infectar sistemas o conseguir un gran número de víctimas, sino capitalizar esa legión y sacar buen partido de ella.
Conficker, un gusano de finales de 2009 del que realmente no se sabía muy bien qué objetivo perseguía, consiguió 15 millones de sistemas infectados. La botnet Mariposa, destapada por Panda a mediados de 2010 (y operada desde España), consiguió 13 millones.

Comunicación cifrada entre servidor de control de la botnet y el cliente infectado

Con este método, el troyano consigue eludir los IDS y otros métodos para bloquear el tráfico de red que genera el malware. Estas características ya las usaba Zbot desde 2007. El atacante, a la hora de configurar la botnet, elige una contraseña con la que se cifra el tráfico de red. Es como establecer conexiones SSL entre víctima y sistema de control del atacante. Realmente, no es novedad.

Explotar al máximo el beneficio: Vender la versión previa

Los creadores vendieron a finales del año pasado el código fuente de la versión 3 de la botnet TDL a otros atacantes. ¿Por qué? Porque la versión 4 ya la tenían desarrollada, y era lo suficientemente diferente a su versión previa para no tener que preocuparse. Esto ya ocurrió también con Zeus. Se puso a la venta al mejor postor a principios de año el código fuente de la versión 2, y se abandonó el proyecto. Esto ocurría justo cuando se rumoreaba que los creadores de Zeus se unían a los de Spyeye.

Infectar a nivel de MBR

Esta es una de las características por las que se le ha apodado como "indestructible". Este dato es bastante inexacto. Master Boot Record es el primer sector del disco duro. Ahí es donde acude el ordenador a conocer la tabla de particiones y saber con qué sistema operativo arrancar. El MBR está compuesto por la Master Partition Table y el Master Boot Code. La primera contiene la descripción de las hasta cuatro particiones primarias que puede contener un disco y cuál está activa. El segundo (440 bytes) es el código al que acude la BIOS cuando ya sabe en qué disco físico buscar el sistema operativo. Este código localizará la partición de arranque en su tabla de particiones, y si la encuentra, su sector se cargará en la conocida dirección de memoria 0000:7C00 para lanzar por fin el "kernel loader" (en el caso de Windows, el NTLDR).
Modificando estos valores, el malware toma el control, y el sistema operativo arrancará bajo las condiciones que imponga el malware. O sea, le ataca desde el nivel más bajo y efectivo.

Malware a nivel de MBR se conoce desde hace tiempo. Si nos centramos en botnets, la familia Sinowal de 2007, ya usaba infección por MBR para sobrevivir al formateo del ordenador.

¿Indestructible por esto? Lo hace mucho más complicado, es cierto, pero no tanto. Sin ir más lejos, Kasperksy ofrece herramientas gratuitas para limpiar este malware totalmente. O cualquier herramienta que permita crear particiones podría eliminar la referencia en el MBR.


En estos días hemos leído en los medios todo tipo información sobre una botnet indestructible que supuestamente ha dejado a todos los expertos del mundo "con la boca abierta" (frase que han empleado en muchos artículos). En este caso concreto, qué significa eso de indestructible, porque puede llegar a confundir y asustar al usuario: ¿significa que no podré eliminarlo nunca de mi sistema? ¿Significa que nadie podrá eliminar nunca la botnet? Vamos a intentar aclarar por qué se ha llegado a esta conclusión, y si es cierta o no.

Eliminar competencia.

Esto es bastante antiguo. Ya en 2004, Netsky, Bagle y MyDoom protagonizaron una divertida guerra mediática, cuando cada uno intentaba eliminar al anterior en los equipos infectados. A otro nivel mucho más serio, cuando apareció SpyEye, ofrecía una opción para eliminar Zbot de los sistemas infectados. TDL contiene instrucciones para eliminar malware concreto como Gbot, Clishmic, Optima, etc. No porque supongan competencia, sino para pasar inadvertida. Elimina malware menos sofisticado a la hora de esconderse que podría levantar sospechas y llevar a la víctima a que se preocupara de "limpiar a fondo" su sistema o abandonarlo por completo.

Conexión P2P

Una conexión P2P para comunicarse permite que no haya un único punto de fallo. Al no estar centralizada la comunicación, es más complicado "echar abajo" la botnet, puesto que todos los nodos funcionan como puntos de comunicación. Se conocen botnets que usan P2P desde hace más de tres años. Sin embargo, usaban protocolos P2P propios. La novedad de TDL es que usa la red P2P pública KAD, que no es tan fácil cerrar ni controlar. Esto sí es interesante. Los atacantes ponen en la red pública de intercambio un fichero cifrado llamado ktzerules, donde se almacenan los comandos. El funcionamiento es parecido a una red P2P normal: el troyano descarga una lista de nodos, se conecta, y distribuye el archivo con los comandos. Los clientes que lo reciben, los descifran y ejecutan.

Esto sí es una novedad interesante, y otra de las razones por lo que se la ha llamado "indestructible". Efectivamente, complica muchísimo el poder "echar abajo" la red. Pero existirían algunas formas que harían que dejase de funcionar, al menos temporalmente.

El problema de este tipo de "botnet descentralizada" no es nuevo. Ya se da con los dominios dinámicos, otro método que viene complicando el asunto de la perdurabilidad de las botnets desde hace tiempo. Durante muchos años, el malware no ha confiado en un solo punto de control para recibir órdenes, puesto que es consciente de que, si cae, perdería el control. Por tanto, se utiliza un sistema que, si bien no lo hace indestructible, complica mucho echar abajo una red. El malware se dedica a calcular nombres de domino casi aleatorios (resultado de un algoritmo que solo el programador conoce) cada día, y se conecta a todos ellos buscando órdenes. Los atacantes registran solo unos pocos dominios cada vez (puesto que cuesta dinero) y a menos que se haga ingeniería inversa del algoritmo, no se pueden predecir. La única protección sería conocer el algoritmo, comprar todos los dominios antes que los atacantes y bloquearlos. Estamos ante una forma sofisticada de resistencia con la que convivimos desde hace tiempo.

Otra forma simple de hacer que una red de botnets sea compleja de destruir es simplemente registrando los servidores en ISP rusos llamados "bulletproof", o sea, a prueba de bombas. Están comprados por las mafias y cooperan con ellas para mantener el servidor operativo todo el tiempo que sea posible al margen de la ley.

Otras características

TDL parece funcionar solo fuera de Rusia (país de origen). También, sus creadores fueron los primeros en crear un driver para los sistemas de 64 bits en 2010, y así poder infectar máquinas de esta arquitectura a nivel de rootkit.

Conclusión: ¿Indestructible?

Este ha sido el adjetivo más utilizado para describirla. Pero nada es tan tajante hoy en día. Se podría atacar desde varios frentes que serían muy eficaces en combinación. Para empezar, se tendría que haber dejado claro desde qué punto se supone que es indestructible. Desde el punto de vista del usuario (erradicarlo de su sistema) es relativamente sencillo eliminarlo. Desde el punto de vista global de la botnet, habría que estudiar cómo desactivar su infraestructura, pero no es un problema nuevo. Desde cualquier punto de vista, y en todo caso, se puede combatir en varios frentes: desde afinar las firmas de los antivirus (si Windows lo introduce eficazmente en su MSRT podría darle un buen varapalo), hasta intervenir la red KAD para bloquear el nombre que actualmente utiliza ("ktzerules"), pasando por mejorar los sistemas antivirus para evitar que se escriba en la MBR o facilitar su restauración... etc.

En definitiva, por supuesto que TDL ha elevado el nivel de complejidad, pero no es ningún descubrimiento que haya aparecido de la nada.
Introduce novedades interesantes, pero hay que entender que es una evolución lógica que aglutina "lo mejor de cada casa" en cuestión de malware. Analizado fríamente, ofrece pocos problemas nuevos a los que no se hayan enfrentado antes los analistas, solo que todos juntos a la vez (que no es poco). En resumen, ante este tipo de noticias, hay que plantearse seriamente qué es relevante y qué es ruido innecesario.

Fuente: http://www.hispasec.com/unaaldia/4643

Comentarios

Entradas populares de este blog

¿Como atacar Kerberos?

El Modelado de Amenazas de Seguridad

MPLS vs. Ethernet: ¿Qué opción de conectividad WAN es mejor?