Turla es un conocido grupo de espionaje que ha estado activo, por lo menos, durante los últimos diez años. En 2008 el grupo se hizo conocido cuando vulneró el Departamento de Defensa de los Estados Unidos [1]. A partir de ahí, se registraron numerosos incidentes de seguridad que involucraron a Turla como el principal responsable de ataques dirigidos a varios negocios gubernamentales, tales como la industria de la defensa[2].

En enero de 2018, publicamos un white paper [3] que representó el primer análisis de una campaña de Turla a la cual denominamos Mosquito y de la que publicamos los indicadores de compromiso [4]. A partir de ahí, la campaña se mantuvo activa y los atacantes han estado ocupados modificando sus tácticas para mantenerse lo más cauteloso posible.

A comienzos de marzo de 2018, observamos un cambio significativo en la campaña: ahora se apoya en usar un framework como  Metasploit antes de droppear el backdoor personalizado llamado Mosquito. No es la primera vez que Turla utiliza herramientas genéricas, ya vimos el  grupo  utiliza herramientas como Mimikatz para robar contraseñas.. Sin embargo, hasta donde sabemos, esta es la primera vez que Turla utiliza Metasploit como backdoor en la primera parte del ataque, en lugar de recurrir a un herramienta propia como puede ser Skipper [5].

Distribución

Como describimos en nuestro análisis previo [3], el vector de infección más utilizado de la campaña Mosquito continua siendo un falso instalador de Flash, aunque en realidad instala ambos; es decir, el backdoor de Turla y el legítimo Adobe Flash Player. Asimismo, los blancos más comunes siguen siendo embajadas y consulados de Europa del Este.

Mostramos que la infección ocurre cuando el usuario descarga un instalador de Flash de get.adobe.com mediante HTTP. El tráfico era interceptado entre la máquina de la víctima y los servidores de Adobe, permitiendo que quienes están detrás de Turla reemplacen el ejecutable legítimo de Flash por una versión troyanizada. La imagen a continuación muestra los diferentes puntos donde el tráfico podría, en teoría, ser interceptado. Téngase en cuenta que consideramos que la quinta posibilidad podría ser excluida, ya que, según entendemos, Adobe/Akamai no se vio comprometido.

A pesar de no poder detectar la intercepción del tráfico posterior, descubrimos un nuevo ejecutable que nuevamente intenta simular ser el instalador de Flash, y que lleva el nombre de flashplayer28_xa_install.exe. Asimismo, creemos que el mismo método utilizado inicialmente para comprometer al usuario sigue siendo utilizado

Análisis

Al principio de marzo de 2018, como parte de nuestro regular seguimiento de la actividad de Turla, observamos algunos cambios en la campaña de Mosquito. A pesar de que no utilizaron técnicas innovadoras, representa un giro significativo en la Táctica, Técnica y Procedimiento (ITTPs) de Turla.

Anteriormente, la cadena de compromiso era un falso instalador de Flash que droppeaba un loader y el backdoor principal. La siguiente imagen resume el proceso.

Recientemente, detectamos un cambio en la forma en que es droppeado el backdoor. La campaña de Turla aún sigue utilizando un falso instalador de Flash, pero en lugar de droppear directamente los dos DLL maliciosos, ejecuta una shellcode de Metasploit y luego descargar de Google Drive un instalador de Flash legítimo. Luego, se abre una sesión de Meterpreter, usando un típico payload Metasploit [6], que permite al atacante controlar la máquina comprometida. Finalmente, la máquina puede recibir el backdoor Mosquito. La imagen a continuación resume el nuevo proceso.

Debido a que Metasploit está siendo utilizado, podemos suponer que un operador controla el proceso de explotación manualmente. El tiempo del ataque fue relativamente corto ya que el backdoor final terminó siendo droppeado solo treinta minutos después de que comenzó el intento de infección.

La shellcode de Metasploit está cifrada usando  shikata_ga_nai encoder [7]con siete repeticiones. La imagen a continuación muestra el payload codificado y decodificado.

Una vez que la shellcode es decodificada, contacta su C&C a https://209.239.115[.]91/6OHEJ, el cual dirige la descarga de una shellcode adicional. Basados en nuestra telemetría, identificamos la siguiente fase como una sesión de Meterpreter. Esa dirección IP ya era conocida como un dominio de un C&C utilizado por Mosquito; en octubre esta dirección IP se resolvía como psychology-blog.ezua[.]com.

Finalmente, el falso instalador de Flash instala y ejecuta el verdadero instalador de Adobe de una URL de Google Drive, para de esta manera engañar al usuario y que crea que no ocurrió nada sospechoso.

Herramientas adicionales

De forma adicional al nuevo instalador falso de Flash y el payload de Meterpreter, observamos el uso de otras herramientas

  • Un ejecutable personalizado que solo contiene el Metasploit shellcode. El mismo es utilizado para mantener el acceso a la sesión Meterpreter y es guardado en: C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\msupdateconf.exe, garantizando la ejecución de manera persistente.
  • Otro ejecutable personalizado utilizado para ejecutar scripts de PowerShell.
  • El backdoor Jscript Mosquito que utiliza Google Apps Script como su servidor C&C
  • Escalada de privilegios utilizando el módulo de Metasploit ext_server_priv.x86.dll[8].

Conclusión

En este punto, hemos presentado la evolución que ha tenido la campaña de Turla Mosquito a lo largo de los últimos meses. El cambio principal que observamos fue el uso de Metasploit, un proyecto de código abierto ampliamente utilizado en pruebas de penetración, como primera fase para el backdoor personalizado de nombre Mosquito. Esta información podría ser de utilidad para quienes trabajen brindando respuesta a incidentes ante ataques relacionados con Turla.

Por cualquier consulta o para presentar muestras relacionadas con el tema, escríbenos a la siguiente dirección de correo: threatintel@eset.com.

C&C

  • https://209.239.115[.]91/6OHEJ
  • https://70.32.39[.]219/n2DE3

Enlace al instalador legítimo de Flash

  • https://drive.google[.]com/uc?authuser=0&id=1s4kyrwa7gCH8I5Z1EU1IZ_JaR48A7UeP&export=download

IoCs

Filename SHA1 SHA256 ESET detection name
flashplayer28_xa_install.exe 33d3b0ec31bfc16dcb1b1ff82550aa17fa4c07c5 f9b83eff6d705c214993be9575f8990aa8150128a815e849c6faee90df14a0ea Win32/TrojanDownloader.Agent.DWY trojan
msupdateconf.exe 114c1585f1ca2878a187f1ce7079154cc60db7f5 1193033d6526416e07a5f20022cd3c5c79b73e8a33e80f29f9b06cdc3cb12e26 Win32/Turla.DH trojan
msupdatesmal.exe 994c8920180d0395c4b4eb6e7737961be6108f64 6868cdac0f06232608178b101ca3a8afda7f31538a165a045b439edf9dadf048 Win32/Turla.DH trojan

References

[1] B. KNOWLTON, "Military Computer Attack Confirmed," New York Times, 25 08 2010. [Online]. Available: https://www.nytimes.com/2010/08/26/technology/26cyber.html?_r=1&ref=technology. [Accessed 09 04 2018].

[2] MELANI, " Technical Report about the Malware used in the Cyberespionage against RUAG," 23 05 2016. [Online]. Available: https://www.melani.admin.ch/melani/en/home/dokumentation/reports/technical-reports/technical-report_apt_case_ruag.html.

[3] ESET, "Diplomats in Eastern Europe bitten by a Turla mosquito," ESET, 01 2018. [Online]. Available: https://web-assets.esetstatic.com/wls/2018/01/ESET_Turla_Mosquito.pdf.

[4] ESET, "Mosquito Indicators of Compromise," ESET, 09 01 2018. [Online]. Available: https://github.com/eset/malware-ioc/tree/master/turla#mosquito-indicators-of-compromise.

[5] M. Tivadar, C. Istrate, I. Muntean and A. Ardelean, "Pacifier APT," 01 07 2016. [Online]. Available: https://labs.bitdefender.comhttps://web-assets.esetstatic.com/wls/downloads/pacifier-apt/.

[6] "About the Metasploit Meterpreter," [Online]. Available: https://www.offensive-security.com/metasploit-unleashed/about-meterpreter/.

[7] "Unpacking shikata-ga-nai by scripting radare2," 08 12 2015. [Online]. Available: http://radare.today/posts/unpacking-shikata-ga-nai-by-scripting-radare2/.

[8] "meterpreter/source/extensions/priv/server/elevate/," Rapid7, 26 11 2013. [Online]. Available: https://github.com/rapid7/meterpreter/tree/master/source/extensions/priv/server/elevate.