SOC Prime Bias: Alto

01 Jul 2026 09:16 UTC

Dentro del Arte de Kimsuky con CHM: Ejecución en Múltiples Etapas y Entrega Selectiva de Cargas

Author Photo
SOC Prime Team linkedin icon Seguir
Dentro del Arte de Kimsuky con CHM: Ejecución en Múltiples Etapas y Entrega Selectiva de Cargas
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumen

Kimsuky utiliza archivos HTML Compilados maliciosos (.chm) como cebos iniciales para desencadenar una cadena de infección de múltiples etapas. La operación abusa de utilidades nativas de Windows como PowerShell, certutil, y wscript para perfilar el sistema, establecer persistencia a través de tareas programadas, y exfiltrar datos recopilados. El actor también aplica la entrega selectiva de cargas útiles, proporcionando el componente operativo final solo después de que se satisfacen ciertas condiciones ambientales o de comportamiento.

Investigación

El investigador analizó una muestra CHM sospechosa y reconstruyó su cadena de ejecución, que consistía en múltiples etapas de VBScript y PowerShell. Al reproducir solicitudes de red y probar desde diferentes ubicaciones de proxy, el investigador descubrió un modelo de respuesta selectiva en el que la carga útil final no se entregaba al entorno enjaulado. La investigación también conectó la infraestructura a una actividad conocida de Kimsuky a través de similitudes de favicon y toma de huellas dactilares de servidores web.

Mitigación

Las organizaciones deben monitorear la ascendencia de los procesos sospechosos, especialmente casos donde hh.exe or wscript.exe lanza PowerShell o cmd.exe. Restringir la ejecución de contenido de script desde ubicaciones escribibles por el usuario, como el caché de Internet, puede ayudar a bloquear la persistencia. Monitorear cambios no autorizados en la configuración del registro de Internet Explorer y Microsoft Edge también puede mejorar la detección de la manipulación del host.

Respuesta

Si se detecta esta actividad, aísle el punto final afectado inmediatamente para prevenir tráfico adicional de comando y control. Realice análisis forense de memoria para identificar cualquier carga útil de PowerShell sin archivos cargada en la memoria del proceso. Revise tareas programadas en busca de entradas sospechosas como Edge Updater e inspeccione el directorio %USERPROFILE%Links en busca de .dat or .ini archivos engañosos.

Flujo de Ataque

Ejecución de Simulación

Prerequisito: El Chequeo Previo de Telemetría y Baseline 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 la narrativa DEBEN reflejar directamente los TTP 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 diagnósticos erróneos.

  • Narrativa de Ataque y Comandos: El adversario apunta a lograr la ejecución inicial a través de un archivo .chm armado. Una vez que el usuario abre el archivo, el archivo de Ayuda HTML Compilada usa un script incrustado para invocar hh.exe. Para evadir la detección estándar, el actor utiliza hh.exe para lanzar PowerShell, enmascarando efectivamente la ejecución del shell bajo un proceso legítimo de ayuda de Windows. El objetivo es establecer un punto de apoyo ejecutando un comando PowerShell oculto que puede descargar una carga útil de segunda etapa.

  • Script de Prueba de Regresión:

    # Simulación de Cadena de Ejecución de Kimsuky CHM-a-PowerShell
    # Este script simula el comportamiento de hh.exe generando PowerShell según lo detectado por la regla.
    
    Write-Host "[+] Iniciando Simulación de Kimsuky CHM..." -ForegroundColor Cyan
    
    # 1. Simular hh.exe generando PowerShell (Coincide con selección_hh)
    Write-Host "[+] Activando Regla: hh.exe generando PowerShell..." -ForegroundColor Yellow
    Start-Process "hh.exe" -ArgumentList "powershell.exe -NoProfile -ExecutionPolicy Bypass -Command Write-Output 'Simulación Exitosa'"
    
    # 2. Simular wscript.exe ejecutando VBScript (Coincide con selección_wscript)
    Write-Host "[+] Activando Regla: wscript.exe con bandera VBScript..." -ForegroundColor Yellow
    $tempVBS = "$env:TEMPtest_sim.vbs"
    "WScript.Echo ""Simulación Exitosa""" | Out-File -FilePath $tempVBS -Encoding ascii
    Start-Process "wscript.exe" -ArgumentList "/e:vbscript $tempVBS"
    
    # 3. Simular cmd.exe con ventana oculta (Coincide con selección_cmd)
    Write-Host "[+] Activando Regla: cmd.exe con Estilo de Ventana Oculta..." -ForegroundColor Yellow
    Start-Process "cmd.exe" -ArgumentList "/c PowerShell -WindowStyle Hidden -Command Write-Output 'Simulación Exitosa'"
    
    Write-Host "[+] Comandos de simulación despachados." -ForegroundColor Green
  • Comandos de Limpieza:

    # Limpiar archivos temporales creados durante la simulación
    Remove-Item -Path "$env:TEMPtest_sim.vbs" -ErrorAction SilentlyContinue
    Write-Host "[+] Limpieza completa." -ForegroundColor Cyan