En el día de ayer (martes, 29 de mayo de 2012 REPOSTEADO CON FINES DE APRENDIZAJE)
pudimos ver incontables noticias y artículos acerca de un nuevo malware, llamado Flame/Flamer/SkyWiper, con una sofisticación técnica que incluso supera a Stuxnet o DuQu y que, igualmente, había afectado a países de oriente medio.
Aparentemente, el troyano tiene como misión labores de inteligencia, y parece que está orientado a países de oriente medio.
Con este post simplemente quiero hacer una recopilación de todos los datos que se han ido dando (muchos de ellos sin confirmar) para poder tener una visión más completa del asunto.
El troyano es bastante complejo (se han detectado hasta cinco tipos de cifrado, unos más robustos que otros, p.e boot32drv.sys hace un XOR con 0xFF) y si a eso añadimos la ofuscación del código, se estima que el estudio y comprensión de Flame les va a llevar años a las casas de antivirus.
Como ya he comentado anteriormente, se trata de un malware de una sofisticación técnica comparable a la encontrada en Stuxnet y DuQu (forma de propagación, objetivos concretos evitando un ataque masivo, posible uso de vulnerabilidades de tipo 0day, etc).
A pesar de que el concepto de Flame es diferente frente a los otros dos (se puede caracterizar como una toolkit configurable para cada objetivo), se cree que puede tratarse de un proyecto paralelo del mismo contratista detrás de ellos.
Para darle credibilidad a esta postura, se hace hincapié en que utiliza las mismas vulnerabilidades para su propagación (usb, vulnerabilidades en impresoras print_spooler - MS10-061) y por tanto, que tuvieran ambos equipos de desarrollo acceso al mismo "kit de exploits".
Aun así, en el caso de Flame estos mecanismos de propagación están deshabilitados por defecto para evitar una infección masiva y que pudiese ser detectado (aunque no se descarta que en las primeras versiones estuviera habilitado y a raíz de que se parchearan, se deshabilitaran para evitar ser detectado por los antivirus actualizados). Flame es capaz de infectar equipos Windows 7 up2date, por lo que es posible que incorpore también exploits de tipo 0day (como en el caso de Stuxnet). También se maneja la posibilidad de que se aproveche de un grupo de vulnerabilidades críticas (MS10-033) en la descompresión de medios.
Si atendemos al timeline del descubrimiento del malware, podemos observar como se descubrió hace solamente dos semanas, cuando Kaspersky estudio los reportes de abril sobre un malware en Irán que estaba atacando empresas energéticas del país. Aun así, como comenta Sergio de los Santos en su análisis en Una al día, la primera muestra en VirusTotal data del 15 de mayo de 2011.
Con respecto a las muestras de Irán y Líbano, nos encontraríamos con fechas del 2010. Además, se han descubierto en foros muestras del fichero wavesup3.drv que datan del 2007. A pesar de las fechas que ha estado manejando Kaspersky, ya a principios de mayo MAHER (el CERT nacional iraní) ya compartió con algunas empresas e instituciones una aplicación para detectar si el sistema estaba infectado con este malware. Según comentaron ayer, están a la espera de publicar una herramienta que permita la eliminación de Flame en un sistema infectado.
Con respecto a la infección, Kaspersky maneja cifras en torno al millar de equipos infectados (se trata de una estimación en base al número de sus clientes que ha sido infectado y extrapolando dicho dato a las cifras de los clientes de otras casas de antivirus), y como ya se ha comentado, prácticamente localizados en países de oriente medio. A pesar de esta focalización de los sistemas infectados, no parece que haya ningún objetivo como en el caso de Stuxnet
pudimos ver incontables noticias y artículos acerca de un nuevo malware, llamado Flame/Flamer/SkyWiper, con una sofisticación técnica que incluso supera a Stuxnet o DuQu y que, igualmente, había afectado a países de oriente medio.
Aparentemente, el troyano tiene como misión labores de inteligencia, y parece que está orientado a países de oriente medio.
Con este post simplemente quiero hacer una recopilación de todos los datos que se han ido dando (muchos de ellos sin confirmar) para poder tener una visión más completa del asunto.
El troyano es bastante complejo (se han detectado hasta cinco tipos de cifrado, unos más robustos que otros, p.e boot32drv.sys hace un XOR con 0xFF) y si a eso añadimos la ofuscación del código, se estima que el estudio y comprensión de Flame les va a llevar años a las casas de antivirus.
Como ya he comentado anteriormente, se trata de un malware de una sofisticación técnica comparable a la encontrada en Stuxnet y DuQu (forma de propagación, objetivos concretos evitando un ataque masivo, posible uso de vulnerabilidades de tipo 0day, etc).
A pesar de que el concepto de Flame es diferente frente a los otros dos (se puede caracterizar como una toolkit configurable para cada objetivo), se cree que puede tratarse de un proyecto paralelo del mismo contratista detrás de ellos.
Para darle credibilidad a esta postura, se hace hincapié en que utiliza las mismas vulnerabilidades para su propagación (usb, vulnerabilidades en impresoras print_spooler - MS10-061) y por tanto, que tuvieran ambos equipos de desarrollo acceso al mismo "kit de exploits".
Aun así, en el caso de Flame estos mecanismos de propagación están deshabilitados por defecto para evitar una infección masiva y que pudiese ser detectado (aunque no se descarta que en las primeras versiones estuviera habilitado y a raíz de que se parchearan, se deshabilitaran para evitar ser detectado por los antivirus actualizados). Flame es capaz de infectar equipos Windows 7 up2date, por lo que es posible que incorpore también exploits de tipo 0day (como en el caso de Stuxnet). También se maneja la posibilidad de que se aproveche de un grupo de vulnerabilidades críticas (MS10-033) en la descompresión de medios.
Si atendemos al timeline del descubrimiento del malware, podemos observar como se descubrió hace solamente dos semanas, cuando Kaspersky estudio los reportes de abril sobre un malware en Irán que estaba atacando empresas energéticas del país. Aun así, como comenta Sergio de los Santos en su análisis en Una al día, la primera muestra en VirusTotal data del 15 de mayo de 2011.
Con respecto a las muestras de Irán y Líbano, nos encontraríamos con fechas del 2010. Además, se han descubierto en foros muestras del fichero wavesup3.drv que datan del 2007. A pesar de las fechas que ha estado manejando Kaspersky, ya a principios de mayo MAHER (el CERT nacional iraní) ya compartió con algunas empresas e instituciones una aplicación para detectar si el sistema estaba infectado con este malware. Según comentaron ayer, están a la espera de publicar una herramienta que permita la eliminación de Flame en un sistema infectado.
Con respecto a la infección, Kaspersky maneja cifras en torno al millar de equipos infectados (se trata de una estimación en base al número de sus clientes que ha sido infectado y extrapolando dicho dato a las cifras de los clientes de otras casas de antivirus), y como ya se ha comentado, prácticamente localizados en países de oriente medio. A pesar de esta focalización de los sistemas infectados, no parece que haya ningún objetivo como en el caso de Stuxnet
Como ya se ha dicho anteriormente, se trata de un malware muy pesado (en torno a los 20mb,
frente a los 500kb de Stuxnet), y esto es debido a la cantidad de
módulos que puede incorporar a la instalación base y que lo hace
configurable para cada objetivo. Realmente, el core del malware pesa
6mb que incluye una media docena de módulos que descomprime, descifra
y, una vez cargados, queda a la espera de las ordenes de los servidores
de comando y control (aunque mientras, ejecuta las tareas de esos
módulos como se comentará más adelante).
Se ha encontrado otra variante de Flame que pesa únicamente 900kb y que, al cargarse, intenta descargar los módulos. Por lo tanto, queda claro que deja abierto un backdoor en el sistema infectado a través del cual se comunica con el servidor, (siempre a través de protocolos cifrados), descarga e instala nuevos módulos y envía la información obtenida.
A pesar de no tener hardcodeado un 'time-to-death', si que dispone de un modulo de 'auto-eliminación' encargado de borrar todo el rastro del malware, ya sean sus binarios o toda la información que haya ido recopilando (capturas de pantalla, grabaciones, tráfico).
Este troyano tiene varios puntos que llaman bastante la atención:
Se ha encontrado otra variante de Flame que pesa únicamente 900kb y que, al cargarse, intenta descargar los módulos. Por lo tanto, queda claro que deja abierto un backdoor en el sistema infectado a través del cual se comunica con el servidor, (siempre a través de protocolos cifrados), descarga e instala nuevos módulos y envía la información obtenida.
A pesar de no tener hardcodeado un 'time-to-death', si que dispone de un modulo de 'auto-eliminación' encargado de borrar todo el rastro del malware, ya sean sus binarios o toda la información que haya ido recopilando (capturas de pantalla, grabaciones, tráfico).
Este troyano tiene varios puntos que llaman bastante la atención:
- Hay muchas partes escritas en LUA (exótico lenguaje de programación)
- Emplea el bluetooth del sistema para identificar otros dispositivos
- Tiene capacidad para grabar conversaciones empleando el micrófono del sistema
- Permite tomar capturas de pantalla en función de que aplicaciones estén en uso (entre ellas, aplicaciones de mensajería instantánea)
En base a toda la información que ha sido publicada hasta el momento, he
realizado un pequeño script que comprueba si tu sistema está o no
infectado con Flame.
La aplicación comprueba concretamente la existencia de una serie de ficheros tanto en el directorio windows/system32 como en el windows/temp, la existencia de unas carpetas específicas en "Common Files\Microsoft Shared" y si ha modificado entradas en el registro (concretamente la clave Authentication Packages en "SYSTEM\CurrentControlSet\Control\Lsa\"
La aplicación comprueba concretamente la existencia de una serie de ficheros tanto en el directorio windows/system32 como en el windows/temp, la existencia de unas carpetas específicas en "Common Files\Microsoft Shared" y si ha modificado entradas en el registro (concretamente la clave Authentication Packages en "SYSTEM\CurrentControlSet\Control\Lsa\"
La herramienta se puede descargar desde aquí
Las fuentes consultadas para realizar este recopilatorio han sido:
[1] Una al dia
[2] MAHER, Iranian National CERT
[3] Wired
[4] Crysys
[5] Securelist I / Securelist II
Fuente: http://www.securitybydefault.com
No hay comentarios:
Publicar un comentario