análisis técnico de flashback, el troyano para mac que ya ha infectado a más de 500.000...

18
Fernando de la Cuadra, director de Educación ([email protected]) Josep Albors, director de Comunicación ( [email protected]) Nuevos ESET Smart Security 5 y ESET NOD32 Antivirus 5

Upload: yolanda-ruiz-hervas

Post on 08-Jun-2015

12.810 views

Category:

Documents


0 download

DESCRIPTION

ESET, líder en protección proactiva que está celebrando el 25 aniversario de su tecnología de protección NOD32, sigue investigando el troyano para OSX Flashback. Diseñado específicamente para afectar a usuarios Mac, se ha convertido en el más distribuido hasta la fecha. El análisis técnico del laboratorio de ESET está disponible en Durante la investigación de ESET, se ha visto en el laboratorio cientos de miles de sistemas infectados que forman ya parte de una gran red de bots, y eso teniendo en consideración que lleva solo un año distribuyéndose. “Tuvimos un pico de infecciones que comenzó a hacerse notar en marzo de 2012, cuando esta amenaza se empezó a propagar gracias a una vulnerabilidad del intérprete de Java que incluye el sistema operativo de Apple. Durante los primeros días de abril, desplegamos un sistema de monitorización para que nos ayudara a entender el tamaño de la red de botnets que estaba formando. Justo un par de semanas después, a principios de mayo de 2012, el último servidor de control y comandos (C&C) desde el que se gestionaba la red de ordenadores infectados desapareció. Desde entonces, podemos decir que esta red de botnets está efectivamente muerta”, dice Pierre-Marc Bureau, investigador senior de malware de ESET. ESET decidió investigar el troyano OSX/Flashback por varios motivos. Primero, utiliza técnicas novedosas para espiar a los usuarios cuando están navegando. Además, este ejemplar de malware también hace uso de múltiples métodos para conectar con sus centros de control (C&C) de manera redundante, generando nombres de dominio de forma dinámica y buscando hashtags en Twitter. Finalmente, la escalada de infecciones le hizo bastante interesante, porque no había precedente de una red de botnets con tal cantidad de equipos Mac infectados. “En la investigación participaron varios equipos de ESET. En nuestra central en Bratislava un equipo creó el algoritmo de detección genérico para el bot, mientras que otros equipos localizados en Praga y en Montreal hicieron ingeniería inversa con el código de OSX”, continúa Bureau. El primer objetivo de ESET ha sido siempre la mitigación de la amenaza, y dada la magnitud de OSX/Flashback, necesitamos llevar a cabo dos tipos de actividades. Primero, informar a los usuarios para que pudiesen analizar sus sistemas y, en caso de encontrar infecciones, proceder a su limpieza. Segundo, necesitamos colaborar con otros investigadores de la industria de seguridad para registrar el mayor número posible de nombres de dominios aleatorios generados por el bot, impidiendo de esta manera que el dueño de la botnet enviase comandos a sistemas ya infectados.

TRANSCRIPT

Page 1: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

Fernando de la Cuadra, director de Educación ([email protected])

Josep Albors, director de Comunicación ([email protected])

Nuevos ESET Smart Security 5 y ESET NOD32 Antivirus 5

Page 2: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

El sistema operativo de Apple OSX puede llegar a convertirse en víctima de malware, como todos los sistemas. Antes de la aparición de OSX/Flashback, hubo unos cuantos casos documentados de malware que tenían como objetivo el sistema operativo de Apple, pero este último es el que se ha cobrado el mayor número de víctimas.

En este artículo describimos las características técnicas más interesantes de esta amenaza. Particularmente, su método de espiar las comunicaciones de red y sus algoritmos para generar nombres de dominio de forma dinámica.

Igualmente, resumimos los hitos más importantes de este malware que ha persistido durante varios meses.

Flashback es una amenaza diseñada específicamente para

afectar a la plataforma OSX que fue detectada por primera vez

en otoño de 2011. Tras estar propagándose durante varios

meses sin ser detectado, Flashback atrajo todas nuestras

miradas en abril de 2012, ya que fue capaz de infectar y tener

bajo su control a más de medio millón de ordenadores.

¿Cómo llegó a infectar tantos ordenadores? ¿Son sus técnicas de

ofuscación tan complejas como las que generalmente se asocian

a amenazas para Windows? ¿Cuál era la verdadera intención de

su creador?

En este artículo analizaremos, primero, su método de

propagación. Además, analizamos dos componentes diferentes

de Flashback: el de instalación y su librería, que es utilizada para

interceptar el tráfico de red para espiar a los usuarios.

Page 3: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback Vector de infección

El método utilizado para infectar a las víctimas de Flashback ha evolucionado a lo largo del tiempo. Las primeras variantes se camuflaban como una actualización de Adobe Flash Player. La víctima era redirigida a un sitio web malicioso, probablemente como resultado de aplicar Black Hat SEO (indexación y posicionamiento en motores de búsqueda de webs maliciosas que suplantan a otras lícitas). La víctima, convencida de que era una actualización legítima, procedía a descargar y a ejecutar el fichero en cuestión. Y de esta forma, el usuario permitía que Flashback se autoinstalase en su Mac al introducir sus claves solicitadas durante la instalación.

Sin embargo, el segundo método de infección que fue identificado utilizaba un applet de Java firmado.

Visitando el sitio web malicioso, la víctima recibía un mensaje del

intérprete de Java solicitándole permiso para ejecutar un applet

firmado, supuestamente, por Apple. El certificado, por supuesto, no

procedía de Apple, por lo que tras dar la autorización, el Mac del

usuario era infectado.

Sin lugar a dudas, el método más efectivo utilizado para la

propagación de Flashback ha sido el que se ha aprovechado de dos

agujeros de seguridad en Java: CVE- 2012-0507 o CVE-2011-3544. En

este caso, las vulnerabilidades han permitido la instalación automática

de Flashback sin el conocimiento ni el consentimiento del usuario, ya

que se producía simplemente con visitar una web que contenía el

applet malicioso de Java. Más de medio millón de ordenadores Mac

han resultado infectados por este método.

Con el tiempo, los métodos de ofuscación de cada uno de sus

componentes se volvieron más complejos. Este análisis se basa en la

última variante de Flashback, la que ha conseguido infectar a la mayoría

de ordenadores utilizando la vulnerabilidad CVE-2011-0507.

Page 4: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

El paquete de instalación

Una vez que el exploit de Java se ha instalado satisfactoriamente, un fichero ejecutable Mach-O es instalado en el directorio raíz del usuario. Con el objetivo de permanecer escondido, el nombre del fichero empieza con un punto. Además, crea un fichero en ~/Library/LaunchAgents para ejecutar el comando cada vez que el usuario accede al ordenador infectado. El único objetivo de este ejecutable es descargar e instalar el componente capaz de interceptar el tráfico web.

Técnicas de ofuscación

El análisis dinámico del paquete de instalación muestra que cuando es ejecutado por primera vez, el malware envía el UUID de la Plataforma del sistema infectado al Centro de comando y control (C&C) a través de HTTP. La respuesta que recibe no es generada por el malware. Por lo tanto, la URL no es el objetivo del control automático. Creemos que solo es utilizada por el desarrollador del malware para obtener datos estadísticos.

Después de esta primera ejecución, nos dimos cuenta de que el fichero ejecutable se había modificado a sí mismo. ¿Cuál podría ser la diferencia? Pues, primero, vimos que la URL utilizada para la estadísticas en el primer comando había sido eliminada del fichero ejecutable. Y además, un gran parte de la sección de datos había cambiado completamente.

Page 5: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

A pesar de los cambios, el fichero permanece como un ejecutable válido. En las siguientes ejecuciones, su comportamiento era igual que la primera vez con una excepción: no generaba más tráfico a la URL que había sido borrada. Por lo tanto, parecía que estábamos enfrentándonos a un malware capaz de autocifrarse.

Con el fin de analizar los ficheros maliciosos cifrados enviados por los usuarios o encontrados por Internet, tuvimos que analizar primero los métodos de cifrado utilizado por Flashback. Primero de todo, echemos un vistazo a la sección de código utilizada al principio de la ejecución.

Page 6: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

En el código anterior, podemos ver que el malware adquiere el UUID de Plataforma del ordenador. El UUID de Plataforma es un identificador único que tienen todos los ordenadores Mac, como un tipo de número de serie de la dirección MAC en una tarjeta de red que se suele asignar de forma única a un dispositivo. Pensamos que si el comando contenía una URL, no debería haber cifrado. Y en efecto, al ser su primera ejecución, no se había producido el cifrado. Así que simplemente lo copiamos de la memoria. En el caso de que no hubiera URL, ya sabíamos que el fichero había sido modificado. El autor había implementado el algoritmo RC4 para descifrar el contenido utilizando el UUID de Plataforma como clave.

Como el UUID de Plataforma es único para cada máquina, el

fichero ejecutable cifrado no puede ser ejecutado desde otro

ordenador Mac diferente al que lo hizo por primera vez. Y como

la mayoría de las variantes recibidas, así como aquellas que

hemos encontrado en Internet, estaban cifradas, era imposible

comprobar su contenido sin conocer el UUID de Plataforma de la

máquina infectada.

Pero… ¿qué podría contener esta porción de código cifrado?

Incluso después de un descifrado con RC4, todavía no tenemos

ninguna cadena de caracteres clara ni una estructura de datos

reconocible. Veamos cómo se utiliza el bloque posteriormente.

Para ello necesitamos seguir monitorizando la ejecución para

encontrar llamadas a una función que pueda encontrar cadenas

en su estructura. Aquí encontraréis algunos ejemplos de este tipo

de llamadas:

Page 7: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

Vamos a examinar el contenido de la función:

get_string que usa cinco parámetros

1. strings_struct: estructura que contiene punteros a nuestros

datos.

2. key: el valor clave a encontrar en los datos.

3. xor_key: XOR key es utilizado para descifrar el contenido.

4. decrypted: como salida, contendrá el puntero al valor de

descifrado en el diccionario.

5. decrypted_length: como salida, contendrá la longitud de la

cadena

get_string encuentra la cadena en el diccionario con la clave con

find_string, y entonces aplica la clave XOR dada a todos los bloques

de 64-bit. Si analizamos find_string, encontramos la estructura de

un diccionario en memoria. La siguiente tabla muestra la estructura

que representa el diccionario.

Page 8: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

Afortunadamente, los datos y sus claves XOR son los mismos en todas las variantes, lo que facilita el proceso de descifrado de todas ellas, estadísticamente hablando. La parte cifrada debería por tanto contener un diccionario de claves y de valores que son usados por el paquete de instalación.

A partir de aquí, empezamos a ver cadenas más claras, pero muchas de ellas están todavía ofuscadas. Una última pasada de descifrado desvela su valor final. El algoritmo que es utilizado en el último descifrado parece que no es conocido. En breve, se genera lo que parece ser una lista aleatoria determinante de 216 bytes. Cada palabra de 2 bytes en la cadena es equivalente al índice del octeto deseado de la lista.

Una vez que hemos llevado a cabo todos estos pasos, hay varias listas separadas por "|". Este es el resultado final del descifrado.

Page 9: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

En la clave 0x92fa, vemos una lista de rutas a software antivirus, cortafuegos personales y software diseñado para el uso por parte de usuarios experimentados. Si alguno de esos ficheros existen en el sistema infectado, la ejecución terminará y el malware se desinstalará del sistema.

Encontramos igualmente nombres de librerías y de funciones en las claves 0xf12e y

0xe002. Estas se cargarán dinámicamente con dlopen y dlsym. Sabiendo ahora las

funciones a las que llama, entendemos mucho mejor el comportamiento de este

malware.

Periódicamente, el software malicioso busca entre una lista de dominios desde los

cuales puede descargar y ejecutar un fichero. Los campos son derivados de tres

fuentes diferentes:

1. Una lista de dominios se encuentra en el paquete de instalación (con la clave

0x92be);

2. 5 prefijos de dominios son dinámicamente generados de constantes

encontradas en el paquete de instalación (las tres de la clave 0x6192);

3. Otro prefijo de dominio es generado dinámicamente basándose en la fecha.

Para cada uno de los prefijos de dominio generados dinámicamente en el punto 2 y

3, los sufijos que se añadirán a cada uno se encuentran en la clave 0x1f91. En todas

las variantes que hemos analizado, había cinco dominios principales. Los prefijos

del punto 2 son falsas cadenas de caracteres compuestas de 11 a 13 letras y

generadas al azar. Son diferentes dependiendo de la variante.

El prefijo del punto 3 también es una cadena aleatoria generada dinámicamente

pero es única, ya que coge el dato de la fecha, aunque también es exactamente

igual para todas las variantes. Los 5 sufijos se agregarán también al prefijo diario.

Excluyendo los dominios autogenerados y basados en el día del punto 3, hemos

identificado 185 dominios diferentes de todas las variantes.

Page 10: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

Una de las pecualiaridades del componente de instalación de Flashback es que el autor no ha registrado previamente todos los dominios posibles, quizá porque habían demasiados como para registrarlos periódicamente. Además, el algoritmo utilizado para generar los nombres de dominio del día es el mismo para todas las variantes de Flashback.

En el curso del análisis de ingeniería inversa aplicado al algoritmo de generación de nombres de dominio, varias compañias incluyendo a DrWeb, ESET, Kaspersky y Symantec fueron capaces de registrar los nombres de dominio disponibles y colocar controladores en ellos, permitiéndonos de esta manera conocer el número de sistemas infectados.

Una vez que el malware establece una conexión con alguno de estos dominios, el software intenta ejecutar un comando HTTP GET. Y espera recibir una respuesta con el formato.

Probablemente has visto la presencia de una llave pública en las anteriores cadenas en las claves 0xd18f y 0x0fa7. Esta clave es utilizada para verificar la firma del fichero descargado.

La única cosa que hemos visto siendo descargada por el componente de instalación es el módulo de intercepción de tráfico de red. La siguiente sección muestra los resultados del análisis de este módulo.

Nuestro análisis indicó que el propósito principal de la instalación del componente

es la inserción de un segundo módulo para interceptar las comunicaciones HTTP y

HTTPS. Esta interceptación permite la inyección de publicidad en la navegación

HTTP y HTTPS, mostrando los anuncios al usuario infectado. Este nuevo módulo es

independiente del componente de instalación que hemos visto previamente. En

esta sección, te enseñaremos las características de la interceptación HTTP usada

por Flashback.

El componente de interceptación no tiene la forma de un ejecutable, ya que es una

librería, lo que origina una buena pregunta: ¿cómo se ejecuta el código? El

componente de Mac OS X que está encargado de cargar dinámicamente las

librerías se llama dyld. Normalmente, las rutas a librerías necesarias para la

ejecución de un programa se encuentran en su cabecera Mach-O, y el componente

dyld está a cargo de cargarlas en su momento de ejecución. La página manual de

dyld muestra varios entornos diferentes de configuración de dyld. Para ser

cargadas, Flashback utiliza DYLD_INSERT_LIBRARY, que permite cargar una librería

antes de que esté especificado en el programa a ejecutar. Para cambiar este

entorno de variables de manera persistente, Flashback utiliza dos técnicas:

1. Si tiene privilegios de administrador, Flashback cambiará los metadatos del

navegador instalados para asignar las variables de entorno antes de su ejecución.

Esto es posible añadiéndola dentro de la clave LSEnvironment dentro de la

aplicación Info.plist.

2. Si no tiene permisos de administración, Flashback añadirá una al fichero

~/.MacOSX/environement.plist. Y se preocupa de crear una en el caso de que no

exista (caso que suele ser habitual). Cundo el usuario se registra, la variable se verá

afectada; por eso la librería se cargará en todas las aplicaciones que sean

ejecutadas por ese usuario.

Page 11: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

Para usuarios infectados por el exploit de Java, el método utilizado es el segundo, porque el applet no tiene privilegios de aministración.

La intervención de Flashback

La librería contiene una sección “ __interpose” que permite reemplazar la función proporcionada por otra librería cargada. Por lo tanto, con DYLD_INSERT_ LIBRARY, es posible situarse entre la función de llamada y la función original. El resultado es similar al uso de LD_PRELOAD en Linux.

Flashback interpone dos funciones: CFReadStreamRead y CFWriteStreamWrite. Estas dos funciones son parte de CoreFoundation, el API del lenguaje de programación en C de Mac OS X. Como indican sus nombres, estas funciones se utilizan para enviar y recibir datos en un flujo. A menos que se utilicen otras funciones de perfil bajo para enviar y recibir, todas las comunicaciones de red en Mac OSX van a través de estas funciones.

Resulta interesante saber que es posible crear un CFStream cifrado en SSL utilizando las funcionalidades de CoreFoundation. Esto significa que la interposición de Flashback permite interceptar los datos en una conexión HTTPS en estado descifrado.

Configuración

Cuando abres la librería en un desensamblador, encontramos una larga

cadena de caracteres codificados en Base64. Incluso descodificándolos,

el resultado no es inteligible, desgraciadamente. No tenemos otra

opción más que encontrar cómo descodificarlo para poder acceder a

sus contenidos. La siguiente sección de la librería muestra la rutina que

se encarga de la descodificación.

Page 12: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

Lo primero que vemos es el clásico descifrado de Base64. “cfinh” es utilizado como un marcador y se encuentra en todas las variantes. Hay además un descifrado con RC4 utilizando para ello la UUID de Plataforma como clave, y finalmente hay que descifrarlo con RC4 utilizando esta vez una clave de 16 caracteres incluida en el binario.

En conclusión, la función descomprimida es llamada para descomprimir los datos cifrados. Una vez más, nos damos cuenta de que una parte muy interesante de Flashback es cifrada con el UUID de Plataforma, que hace que el análisis sea bastante difícil si el proceso de ingeniería inversa no tiene esta información.

Una vez descodificado, las cadenas de caracteres representa un diccionario compuesto por varios elementos.

Cada elemento de la clave, tiene asignado un tipo y un valor, respectivamente. Hemos visto que para otro tipo diferente al “Integer” (tipo 1) el valor se codifica en Base64.

Esta configuración es realmente la clave para nuestro análisis, ya que representa la configuración de Flashback: contiene, entre otras cosas, las direcciones de los centros de mando y control y una lista de nombres de dominio utilizados para autoactualizarse.

Una peculiaridad de Flashback es la larga lista de dominios contenida en su configuración. Hay varios dominios para los servidores centrales de mando y control así como una larga lista de dominios desde donde pueden actualizarse. Analizando nuestras muestras, hemos contado un total de 276 nombres de dominio. Para el componente de la instalación, el autor solo ha registrado unos cuantos de estos.

Lo primero que encontramos en la ruta de red es un comando HTTP

GET towards / scheck. Este es el formato de la respuesta:

El descifrado en Base64 no devuelve nada de interés. Nada de ASCII,

sin fichero comprimido, nada que sepamo. La segunda parte es de

512 octetos. Necesitamos mirar dentro del código para ser capaces

de encontrar el uso que se le da a OpenSLL conectada por esta

query.

Page 13: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

Primero miramos si la firma (la segunda parte de la respuesta) es válida para el payload (la primera parte) con una clave RSA de 2048 bits codificada en la librería verify_signature_with_rsa utiliza RSA_verify de OpenSSL. Entonces revisamos si el payload es el resumen SHA-1 de la dirección del servidor de mando y control. Verificamos que este es el caso aquí.

En la lista del centro de mando y control, varios dominios no han

sido registrados por el autor. Este análisis previo ha sido

implementado para evitar que alguien no autorizado tome el

control y envíe comandos a los Macs infectados.

Interceptación

Cuando intercepta los datos, Flashback determina si es una petición

HTTP GET examinando el principio de los datos enviados a

CFWriteStream. Cuando es una sentencia de búsqueda enviada a

Google, las palabras clave de búsqueda así como la información de

la máquina como la clave UUID de Plataforma y el idioma

configurado se envían al centro de mando y control. La respuesta

posterior para ejecutar la próxima acción se hace cifrando utilizando

RC4 con el hash MD5 usando como clave la UUID de Plataforma. La

consulta a Google no cambia; sin embargo, la respuesta puede ser

alterada para simular un clic en un anuncio. A continuación

encontraréis un ejemplo de una respuesta válida del servidor de

mando y control:

Page 14: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

Durante nuestros experimentos solo hemos observado el uso de dos comandos: BIDOK y BIDFAIL. Los otros comandos, que son utilizados para añadir servidores en su lista (ADD_S) o incluso para autodestruirse (SK), no han sido vistos en nuestras capturas de tráfico.

Utilizando Twitter como un mecanismo de Mando y de Control

Podemos encontrar en la configuración una URL que busca hashtags en Twitter. ¿Cuál es su objetivo? Si echamos un vistazo a cómo está siendo utilizado, encontramos otra técnica disponible para el botmaster (el operador de la red) que le permite controlar su red.

Page 15: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

Se genera un hashtag diferente cada día. Una búsqueda en Twitter por este hashtag revela las direcciones IP o el nombre del dominio del nuevo servidor de mando y control disponible. En el tweet, encontramos información entre los delimitadores «beginbump» y «endbump» (estos delimitadores son también parte de la configuración).

generate_string_for_day concatena 3 cadenas de caracteres de una lista en la configuración. Si, por ejemplo, se encuentra esto en la configuración…

el hashtag para el 2 de febrero de 2003 será #efghabcdijkl (el mes de Enero es 0). Hemos listado 6 listas de cadenas de diferentes variantes analizadas. No tenemos rastro del tweet del ciberdelincuente. Probablemente han sido borrados si realmente los ha utilizado. Sin embargo, hemos encontrado que alguien que parece trabajar para una compañía antivirus ha intentado atraer tráfico a su trampa twiteando su dirección con el hashtag correcto.

el hashtag para el 2 de febrero de 2003 será #efghabcdijkl (el mes de Enero es 0). Hemos listado 6 listas de cadenas de diferentes variantes analizadas.

No tenemos rastro del tweet del ciberdelincuente. Probablemente han sido borrados si realmente los ha utilizado. Sin embargo, hemos encontrado que alguien que parece trabajar para una compañía antivirus ha intentado atraer tráfico a su trampa twiteando su dirección con el hashtag correcto.

Durante nuestro análisis, hemos visto otro elemento interesante en

nuestra traza de red. Flashback intentaba resolver nombres de dominio

que empezaran con el hashtag del día. Hemos encontrado en la

configuración una lista de sufijos a aplicar para generar la cadena, en el

caso del componente de instalación.

Y en una variante antigua:

Page 16: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

Estos dominios se utilizarán, una vez en la lista de configuración, para auto-actualizarse. Estas actualizaciones están también firmadas, por lo tanto, es muy complicado para un intruso registrar el nombre de dominio del día y distribuir su propio código sin disponer de la clave privada.

Desde principios de abril, ESET fue capaz de registrar nombres de dominio utilizados por el componente de instalación de Flashback. El malware facilita las cosas en cuanto envía el UUID de Plataforma de la máquina donde ha sido instaldo en el campo User-Agent field de la cabecera HTTP. Por lo tanto, es posible contabilizar el número de máquinas infectadas dado que el UUID de plataforma identifica a cada Mac de manera única.

Ttuvimos en nuestra posesión varias muestras de Flashback, pero también tuvimos un gran problema: no fuimos capaces de determinar el UUID de Plataforma de las máquinas infectadas. Con nuestra trampa puesta en marcha, las posibilidades de que un ordenador infectado se comunicara con esta eran altas. Gracias a esta herramienta, fuimos capaces de reunir alrededor de 600.000 identificadores únicos. En este momento, también fue posible utilizar esta lista para forzar el descifrado de las muestras para la instalación del componente, así como el componente de interceptación.

Page 17: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

Algunos usuarios de Mac creen que son inmunes a los efectos del malware porque están utilizando OSX. Ciertamente, las amenazas diseñadas para OSX son más escasas que las de Windows, pero esto no significa que no existan.

Flashback es un ejemplo de un ataque a gran escala contra la plataforma OSX. Hay constancia también de otros ataques dirigidos, como es el caso de Lamadai y MacControl, que atacaron a organizaciones no gubernamentales pro-tibetanas.

La versión de Java instalada en Mac OSX no puede ser actualizada por Oracle. Apple debe validar y distribuir las actualizaciones mediante su sistema, lo que ha dejado a algunos preguntándose si Apple ha sido demasiado lento en publicar la actualización de Java que corregía la vulnerabilidad explotada por Flashback.

Dos meses hemos tenido que esperar para tener una actualización que corrigiera la vulnerabilidad y cuya técnica de explotación está disponible en la Red, creando así una ventana de riesgo.

Desde que Apple ha lanzado Mac OSX Lion (10.7), ya no instala intérpretes de Java por defecto en su sistema operativo, un movimiento que puede ser visto como una forma de reducir los vectores de ataque. También podría interpretarse como un intento de evitar la carga de tener que actualizar software que está bajo su control.

Tras la aparición de Flashback en los medios, Apple reaccionó muy deprisa.

Primero, registró todos los nombres de dominios disponibles conectados con

Flashback, incluyendo aquellos que se habían generado dinámicamente.

Muy poco tiempo después, Apple creó una actualización para OSX que detectaba

la presencia de Flashback y lo desinstalaba del sistema. Sin embargo, Apple ha sido

relativamente lento en esta estrategia (la presencia de Flashback en los medios

difícilmente puede considerarse una buena campaña publicitaria para Apple).

Hay varias preguntas que todavía necesitan respuestas: ¿quiénes son los autores

de Flashback?, por ejemplo. ¿Esperaban tener muchas infecciones y hacerse así

mucha publicidad? ¿Era simplemente una prueba?

Flashback ha demostrado que OSX no es inmune a sufrir infecciones a gran escala y

los creadores de malware pueden estar considerando seriamente a OSX como un

nuevo campo donde lanzar sus creaciones. Los usuarios de Mac, por lo tanto,

deberían estar alerta y adoptar medidas de seguridad.

Page 18: Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más de 500.000 ordenadores

OSX/Flashback

Ficheros analizados