Dentro da Tecnologia CHM da Kimsuky: Execução em Múltiplas Etapas e Entrega Seletiva de Payload
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
Kimsuky usa Compiled HTML (.chm) malicioso como iscas iniciais para desencadear uma cadeia de infecção em múltiplos estágios. A operação abusa de utilitários nativos do Windows, como PowerShell, certutil, e wscript para perfilar o sistema, estabelecer persistência através de tarefas agendadas, e exfiltrar dados coletados. O ator também aplica entrega seletiva de payloads, fornecendo o componente operacional final apenas após certas condições ambientais ou comportamentais serem satisfeitas.
Investigação
O pesquisador analisou uma amostra CHM suspeita e reconstruiu sua cadeia de execução, que consistia em múltiplos estágios de VBScript e PowerShell. Reproduzindo solicitações de rede e testando a partir de diferentes locais de proxy, o pesquisador descobriu um modelo de resposta seletiva no qual o payload final não foi entregue ao ambiente em sandbox. A investigação também conectou a infraestrutura a atividades conhecidas de Kimsuky através de similaridades de favicon e fingerprinting de servidor web.
Mitigação
As organizações devem monitorar a ancestralidade de processos suspeitos, especialmente casos onde hh.exe or wscript.exe inicia o PowerShell ou cmd.exe. Restringir a execução de conteúdo de script a partir de locais graváveis pelo usuário, como o cache da Internet pode ajudar a bloquear a persistência. Monitorar mudanças não autorizadas nas configurações de registro do Internet Explorer e Microsoft Edge também pode melhorar a detecção de adulteração do host.
Resposta
Se esta atividade for detectada, isole imediatamente o ponto de extremidade afetado para prevenir tráfego adicional de comando-e-controle. Realize forense de memória para identificar quaisquer payloads do PowerShell sem arquivo carregados na memória do processo. Revise tarefas agendadas em busca de entradas suspeitas, como Edge Updater e inspecione o %USERPROFILE%Links diretório em busca de .dat or .ini arquivos enganosos.
Fluxo de Ataque
Detecções
Uso Suspeito de Invoke-RestMethod (via powershell)
Proof of Value
Possível Enumeração de Software Antivírus ou Firewall (via criação de processo)
Proof of Value
Possível Enumeração de Sistema (via cmdline)
Proof of Value
LOLBAS WScript / CScript (via criação de processo)
Proof of Value
Uso de Certutil para Codificação de Dados e Operações de Certificados (via cmdline)
Proof of Value
Decodificação de Arquivo Suspeita com certutil.exe [Windows Sysmon]
Proof of Value
Atividade Maliciosa Kimsuky PowerShell via Arquivo CHM [Windows PowerShell]
Proof of Value
Análise de Execução de Arquivo CHM Kimsuky [Criação de Processo no Windows]
Proof of Value
Execução de Simulação
Pré-requisito: O Check de Pré-Voo de Telemetria & Baseline deve ter sido aprovado.
Justificativa: Esta seção detalha a execução precisa da técnica do adversário (TTP) projetada para acionar a regra de detecção. Os comandos e a narrativa DEVEM refletir diretamente os TTPs identificados e precisam gerar a telemetria exata esperada pela lógica de detecção. Exemplos abstratos ou não relacionados levarão a diagnósticos incorretos.
-
Narrativa de Ataque & Comandos: O adversário visa alcançar a execução inicial via um
.chmarquivo armado. Uma vez que o usuário abre o arquivo, o arquivo de Ajuda HTML Compilada usa um script embutido para invocarhh.exe. Para evitar a detecção padrão, o ator usahh.exepara lançarPowerShell, efetivamente mascarando a execução do shell sob um processo legítimo de ajuda do Windows. O objetivo é estabelecer um ponto de acesso executando um comando PowerShell oculto que pode baixar um payload secundário. -
Script de Teste de Regressão:
# Simulação de Execução de CHM para PowerShell do Kimsuky # Este script simula o comportamento do hh.exe gerando o PowerShell como detectado pela regra. Write-Host "[+] Iniciando Simulação CHM Kimsuky..." -ForegroundColor Cyan # 1. Simular hh.exe gerando PowerShell (Corresponde seleção_hh) Write-Host "[+] Acionando Regra: hh.exe gerando PowerShell..." -ForegroundColor Yellow Start-Process "hh.exe" -ArgumentList "powershell.exe -NoProfile -ExecutionPolicy Bypass -Command Write-Output 'Simulation Success'" # 2. Simular wscript.exe executando VBScript (Corresponde seleção_wscript) Write-Host "[+] Acionando Regra: wscript.exe com flag VBScript..." -ForegroundColor Yellow $tempVBS = "$env:TEMPtest_sim.vbs" "WScript.Echo ""Simulation Success""" | Out-File -FilePath $tempVBS -Encoding ascii Start-Process "wscript.exe" -ArgumentList "/e:vbscript $tempVBS" # 3. Simular cmd.exe com janela oculta (Corresponde seleção_cmd) Write-Host "[+] Acionando Regra: cmd.exe com Estilo de Janela Oculta..." -ForegroundColor Yellow Start-Process "cmd.exe" -ArgumentList "/c PowerShell -WindowStyle Hidden -Command Write-Output 'Simulation Success'" Write-Host "[+] Comandos da simulação despachados." -ForegroundColor Green -
Comandos de Limpeza:
# Limpeza de arquivos temporários criados durante a simulação Remove-Item -Path "$env:TEMPtest_sim.vbs" -ErrorAction SilentlyContinue Write-Host "[+] Limpeza completa." -ForegroundColor Cyan