Nuevo Malware Diseñado para Resistir el Examen de los Analistas
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
El informe examina una campaña de malware sofisticada de múltiples etapas que involucra cuatro cargas útiles distintas diseñadas para resistir el análisis y la detección. Estas incluyen PavokwiLoader, un cargador en C++ altamente ofuscado, RMMCRAT, un agente de gestión remota personalizado, un cargador basado en Python que usa descifrado por fuerza bruta, y un beacon de Cobalt Strike. El malware emplea técnicas avanzadas de evasión, incluyendo anti-debugging, comprobaciones anti-VM, elusión de ETW y inyección de procesos.
Investigación
Dos equipos de investigación colaboraron para rastrear una intrusión que involucraba envenenamiento de SEO, herramientas RMM personalizadas y Cobalt Strike. La investigación requirió una ingeniería inversa extensiva de las cargas útiles para descubrir técnicas de ofuscación complejas, incluyendo aritmética MBA, hashing de API personalizado y cifrados ROR dependientes de la posición. Los analistas también identificaron patrones de infraestructura y una técnica específica utilizada para eludir la Cifra de Aplicaciones de Chrome.
Mitigación
Las organizaciones deben monitorizar relaciones inusuales de procesos-padre, particularmente en casos donde explorer.exe inicia procesos inesperados o sospechosos. Los defensores también deben observar cambios no autorizados en el registro bajo Windows NT CurrentVersionWindows claves y la creación inesperada de tareas programadas. Los controles de seguridad deben configurarse para identificar el uso sospechoso de la interfaz RPC APPINFO asociada con intentos de elusión de UAC.
Respuesta
Cuando se detecte actividad maliciosa, los respondedores deben aislar los endpoints afectados e inspeccionarlos en busca del %APPDATA%fontcache_ms marcador. Revisar la telemetría de red en busca de conexiones WebSocket a dominios desconocidos y huellas digitales TLS inusuales como JARM 27d40d40d00040d1dc42d43d00041d6183ff1bfae51ebd88d70384363d525c. Analizar eventos de Bloque de Scripts de PowerShell (ID de Evento 4104) en busca de comandos ofuscados ejecutados a través de tuberías stdin.
Flujo de Ataque
Todavía estamos actualizando esta parte.
Detecciones
Ejecución de Python desde Carpetas Sospechosas (vía línea de comandos)
La Posibilidad de Ejecución a Través de Líneas de Comando de PowerShell Ocultas (vía línea de comandos)
Ejecución de Cambio de Página de Código Inusual (vía línea de comandos)
Cadenas de PowerShell Sospechosas (vía línea de comandos)
Nombre de Archivo Corto (vía línea de comandos)
Cambios Sospechosos en Preferencias de Windows Defender (vía PowerShell)
Comando y Control Sospechoso por Solicitud DNS de Dominio de Nivel Superior (TLD) Inusual (vía DNS)
IOCs (HashSha256) para detectar: Malware Nuevo Diseñado para Sobrevivir al Analista
IOCs (HashMd5) para detectar: Malware Nuevo Diseñado para Sobrevivir al Analista
IOCs (SourceIP) para detectar: Malware Nuevo Diseñado para Sobrevivir al Analista
IOCs (DestinationIP) para detectar: Malware Nuevo Diseñado para Sobrevivir al Analista
Persistencia a través de Claves de Registro y Tareas Programadas [Evento de Registro de Windows]
Inyección de Proceso a través de ZwCreateUserProcess y ZwQueueApcThread [Creación de Proceso de Windows]
Ejecución de Simulación
-
Narrativa del Ataque y Comandos: Un adversario ha logrado obtener acceso inicial y busca establecer persistencia para sobrevivir a un reinicio. Para evadir la detección por AV común, deciden usar una técnica de secuestro de registros conocida pero específica. El atacante intentará modificar la clave de registro
UserInitMprLogonScriptpara apuntar a una carga útil maliciosa. Esta acción está destinada a activar laselección_registroporción de la regla de detección generando un Evento ID 13 de Sysmon. -
Script de Prueba de Regresión:
# Simulación de Persistencia vía UserInitMprLogonScript $registryPath = "HKLM:SOFTWAREMicrosoftWindows NTCurrentVersionWinlogon" $name = "UserInitMprLogonScript" $value = "C:WindowsTempmalicious_payload.exe" Write-Host "[+] Intentando establecer $name en el registro..." try { New-ItemProperty -Path $registryPath -Name $name -Value $value -PropertyType String -Force -ErrorAction Stop Write-Host "[+] Modificación del registro exitosa. Verificar SIEM para el Evento ID 13 de Sysmon." } catch { Write-Host "[-] Fallo al modificar el registro. Asegúrese de que el script se ejecute como Administrador." -ForegroundColor Red } -
Comandos de Limpieza:
# Limpiar la entrada de registro maliciosa $registryPath = "HKLM:SOFTWAREMicrosoftWindows NTCurrentVersionWinlogon" $name = "UserInitMprLogonScript" if (Get-ItemProperty -Path $registryPath -Name $name -ErrorAction SilentlyContinue) { Remove-ItemProperty -Path $registryPath -Name $name -Force Write-Host "[+] Limpieza exitosa: Clave de registro eliminada." } else { Write-Host "[-] Clave de registro no encontrada. Nada que limpiar." }