SOC Prime Bias: Crítico

27 Mar 2026 16:57

Campanha Pawn Storm Desdobra PRISMEX, Alveja Governos e Infraestruturas Críticas

Author Photo
Ruslan Mikhalov Chefe de Pesquisa de Ameaças na SOC Prime linkedin icon Seguir
Campanha Pawn Storm Desdobra PRISMEX, Alveja Governos e Infraestruturas Críticas
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

Se a atividade PRISMEX for detectada, isole imediatamente os sistemas afetados, capture a memória volátil para extração de assemblies .NET na memória e procure as cargas úteis esteganográficas distintivas em PNG e as entradas de registro de sequestro de COM. Bloqueie todos os Filen.io subdomínios e o domínio wellnesscaremed.com e aplique detecção e bloqueio baseados em IOC para os nomes de arquivos identificados e tarefa agendada. domain, and apply IOC-based detection and blocking for the identified filenames and scheduled task.

Resposta

As organizações devem corrigir CVE-2026-21509 e CVE-2026-21513 sem demora, restringir o acesso a serviços de armazenamento em nuvem não aprovados e desabilitar o objeto COM Shell.Explorer.1 através do registro. Os defensores devem impor restrições de macro, monitorar o registro COM em HKCU\Software\Classes\CLSID, e revisar tarefas agendadas suspeitas como OneDriveHealth. O log ETW também deve ser habilitado para detectar carregamentos CLR inesperados dentro de explorer.exe.

Mitigação

Pesquisadores da TrendAI identificaram os componentes do conjunto de ferramentas PRISMEX — PrismexSheet, PrismexDrop, PrismexLoader e PrismexStager — e os conectaram à atividade anterior da Pawn Storm. Eles encontraram evidências de que os invasores prepararam a infraestrutura semanas antes das vulnerabilidades serem divulgadas publicamente e documentaram o uso de um domínio C2 compartilhado. domínio wellnesscaremed.com e aplique detecção e bloqueio baseados em IOC para os nomes de arquivos identificados e tarefa agendada.. A pesquisa também mapeou as técnicas MITRE ATT&CK usadas ao longo da cadeia de intrusão.

Investigação

Pawn Storm (APT28) lançou uma campanha centrada em um novo kit de malware chamado PRISMEX, visando a cadeia de suprimentos de defesa Ucraniana, bem como organizações governamentais e de logística aliadas. A operação explora duas falhas de zero-day recentemente divulgadas, CVE-2026-21509 e CVE-2026-21513, enquanto abusa de plataformas de nuvem legítimas para comando e controle. O conjunto de ferramentas inclui carregadores esteganográficos, sequestro de COM para persistência, e um stager Covenant Grunt hospedado em Filen.io. A detecção permanece desafiadora devido à execução sem arquivo e ao tráfego de rede criptografado.

“graph TB %% Class definitions classDef action fill:#99ccff classDef exploit fill:#ffcc99 classDef file fill:#ffeb99 classDef malware fill:#ff9999 classDef tool fill:#cccccc classDef c2 fill:#ccffcc %% Nodes step1_phishing[“<b>Ação</b> – <b>T1566.001 Phishing: Anexo de Spearphishing</b><br/>Adversários enviam documentos RTF direcionados com objetos OLE maliciosos para vítimas.”] class step1_phishing action artifact_rtf[“<b>Arquivo</b> – <b>Nome</b>: Documento RTF Malicioso<br/>Contém objeto OLE fabricado”] class artifact_rtf file step2_vba[“<b>Ação</b> – <b>T1059.005 Comando e Interpretador de Scripts: Visual Basic</b><br/>Macro VBA embutido executa automaticamente na abertura do documento.”] class step2_vba action step3_exploit[“<b>Exploit</b> – CVEu20112026u201121509 Bypass OLE<br/>Macro contata servidor WebDAV malicioso e baixa .lnk”] class step3_exploit exploit artifact_lnk[“<b>Arquivo</b> – <b>Nome</b>: Atalho .lnk Malicioso”] class artifact_lnk file step4_html[“<b>Ação</b> – <b>T1218.001 Execução de Proxy Binário do Sistema: Arquivo HTML Compilado</b><br/>.lnk aciona CVEu20112026u201121513 no MSHTML, executando carga útil HTML embutida.”] class step4_html action artifact_html[“<b>Arquivo</b> – <b>Nome</b>: Carga útil HTML embutida”] class artifact_html file step5_com_hijack[“<b>Ação</b> – <b>T1546.009 Execução Disparada por Evento: DLLs AppCert</b><br/>Carga útil registra DLL malicioso como InProcServer32 para um CLSID para persistência.”] class step5_com_hijack action malicious_dll[“<b>Malware</b> – <b>Nome</b>: DLL PrismexLoader<br/>Disfarçado como DLL do Windows legítimo”] class malicious_dll malware step6_dll_hijack[“<b>Ação</b> – <b>T1574.001 Sequestro de Fluxo de Execução: DLL</b><br/>DLL Proxy encaminha chamadas legítimas enquanto executa código malicioso.”] class step6_dll_hijack action step7_stego[“<b>Ação</b> – <b>T1027.003 Arquivos ou Informações Ofuscadas: Esteganografia</b><br/>DLL Proxy extrai carga útil .NET oculta em PNG usando Bit Plane Round Robin.”] class step7_stego action stego_png[“<b>Arquivo</b> – <b>Nome</b>: Imagem PNG com carga útil oculta”] class stego_png file dotnet_payload[“<b>Malware</b> – <b>Nome</b>: Stager .NET Covenant Grunt”] class dotnet_payload malware step8_c2[“<b>Ação</b> – <b>T1102 Serviço Web</b><br/>Stager comunica-se com subdomínios de armazenamento em nuvem Filen.io para C2.”] class step8_c2 action c2_filen[“<b>C2</b> – Armazenamento em nuvem Filen.io”] class c2_filen c2 step9_exfil[“<b>Ação</b> – <b>T1567.002 Exfiltração Via Serviço Web: Exfiltração para Armazenamento em Nuvem</b><br/>Dados coletados criptografados e carregados para Filen.io.”] class step9_exfil action step10_email[“<b>Ação</b> – <b>T1114.001 Coleta de E-mail: Coleta Local de E-mail</b><br/>Malware coleta arquivos da caixa de correio do Outlook para reconhecimento.”] class step10_email action outlook_data[“<b>Arquivo</b> – <b>Nome</b>: Arquivos da caixa de correio do Outlook (OST/PST)”] class outlook_data file %% Connections step1_phishing –>|entrega| artifact_rtf artifact_rtf –>|aciona| step2_vba step2_vba –>|executa| step3_exploit step3_exploit –>|baixa| artifact_lnk artifact_lnk –>|aciona| step4_html step4_html –>|executa| artifact_html artifact_html –>|carrega| step5_com_hijack step5_com_hijack –>|registra| malicious_dll malicious_dll –>|carrega| step6_dll_hijack step6_dll_hijack –>|extrai| step7_stego step7_stego –>|lê| stego_png stego_png –>|contém| dotnet_payload dotnet_payload –>|comunica-se com| step8_c2 step8_c2 –>|usa| c2_filen dotnet_payload –>|exfiltra dados via| step9_exfil step9_exfil –>|armazena em| c2_filen step10_email –>|coleta| outlook_data dotnet_payload –>|coleta e-mail de| outlook_data %% Atribuições de classe class step1_phishing,step2_vba,step3_exploit,step4_html,step5_com_hijack,step6_dll_hijack,step7_stego,step8_c2,step9_exfil,step10_email action class artifact_rtf,artifact_lnk,artifact_html,stego_png,outlook_data file class malicious_dll,dotnet_payload malware class step3_exploit step4_html step5_com_hijack step6_dll_hijack step7_stego exploit class c2_filen c2 “

Fluxo de Ataque

Execução de Simulação

Pré-requisito: O Check Pré-voo de Telemetria & Base deve ter passado.

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 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 de Ataque & Comandos:

    1. O adversário obteve uma DLL maliciosa (evil.dll) colocada em um diretório gravável (e.g., C:Tempevil.dll).
    2. Para obter persistência, eles selecionam o CLSID {68DDBB56-9D1D-4FD9-89C5-C0DA2A625392} (um dos GUIDs acompanhados pela regra).
    3. Usando o reg.exe (ou PowerShell) embutido, eles definem o valor padrão do sub‑chave InProcServer32 para o caminho da DLL maliciosa, sequestrando assim qualquer ativação de COM daquele CLSID.
    4. A mudança no registro gera uma entrada EventID 13 com o TargetObject exato que corresponde à regra de detecção.
  • Script de Teste de Regressão:

    # -------------------------------------------------
    # Simulação de Persistência de Sequestro de COM do PrismexSheet
    # -------------------------------------------------
    $guid = '{68DDBB56-9D1D-4FD9-89C5-C0DA2A625392}'
    $dllPath = "C:Tempevil.dll"
    
    # Ensure the malicious DLL exists (placeholder for test)
    if (-not (Test-Path $dllPath)) {
        New-Item -Path $dllPath -ItemType File -Force | Out-Null
        Set-Content -Path $dllPath -Value "Malicious payload placeholder"
    }
    
    $regPath = "HKCU:SoftwareClassesCLSID$guidInProcServer32"
    
    # Create the key if it does not exist
    New-Item -Path $regPath -Force | Out-Null
    
    # Set the default value to point to the malicious DLL
    Set-ItemProperty -Path $regPath -Name '(Default)' -Value $dllPath
    
    Write-Host "COM hijack persisted at $regPath -> $dllPath"
  • Comandos de Limpeza:

    # Remove the malicious COM registration
    $guid = '{68DDBB56-9D1D-4FD9-89C5-C0DA2A625392}'
    $regPath = "HKCU:SoftwareClassesCLSID$guid"
    Remove-Item -Path $regPath -Recurse -Force
    
    # Delete the dummy DLL
    Remove-Item -Path "C:Tempevil.dll" -Force -ErrorAction SilentlyContinue
    
    Write-Host "Cleanup completed."