La Campagna Pawn Storm Distribuisce PRISMEX, Prende di Mira Enti Governativi e Infrastrutture Critiche
Detection stack
- AIDR
- Alert
- ETL
- Query
Riassunto
Se viene rilevata l’attività di PRISMEX, isolare immediatamente i sistemi interessati, acquisire la memoria volatile per l’estrazione di assemblaggi .NET in memoria e cercare i distintivi carichi steganografici PNG e le voci di registro hijack COM. Bloccare tutti Filen.io sottodomini e il dominio wellnesscaremed.com, e applicare rilevazione e blocco basati su IOC per i nomi di file identificati e i task pianificati. domain, and apply IOC-based detection and blocking for the identified filenames and scheduled task.
Risposta
Le organizzazioni dovrebbero correggere CVE-2026-21509 e CVE-2026-21513 senza ritardo, limitare l’accesso ai servizi di archiviazione cloud non approvati e disabilitare l’oggetto COM Shell.Explorer.1 tramite il registro. I difensori dovrebbero imporre restrizioni macro, monitorare la registrazione COM sotto HKCU\Software\Classes\CLSID, e rivedere i task pianificati sospetti come OneDriveHealth. Il logging ETW dovrebbe anche essere abilitato per rilevare carichi CLR inaspettati all’interno di explorer.exe.
Mitigazione
I ricercatori di TrendAI hanno identificato i componenti del toolset PRISMEX — PrismexSheet, PrismexDrop, PrismexLoader e PrismexStager — collegandoli alle precedenti attività Pawn Storm. Hanno trovato indizi che gli attaccanti avevano preparato l’infrastruttura diverse settimane prima della divulgazione pubblica delle vulnerabilità e documentato l’uso di un dominio C2 condiviso, dominio wellnesscaremed.com, e applicare rilevazione e blocco basati su IOC per i nomi di file identificati e i task pianificati.. La ricerca ha anche mappato le tecniche MITRE ATT&CK utilizzate lungo la catena di intrusione.
Indagine
Pawn Storm (APT28) ha lanciato una campagna incentrata su un nuovo toolkit malware chiamato PRISMEX, che prende di mira la catena di fornitura della difesa ucraina e le organizzazioni governative e logistiche alleate. L’operazione sfrutta due nuove vulnerabilità zero-day recentemente divulgate, CVE-2026-21509 e CVE-2026-21513, abusando delle piattaforme cloud legittime per il comando e controllo. Il toolset include loader steganografici, hijacking COM per la persistenza e uno stager Covenant Grunt ospitato su Filen.io. La rilevazione rimane difficile a causa dell’esecuzione senza file e del traffico di rete crittografato.
"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>Azione</b> – <b>T1566.001 Phishing: Allegato di Spearphishing</b><br/>Gli avversari inviano documenti RTF mirati con oggetti OLE dannosi alle vittime."] class step1_phishing action artifact_rtf["<b>File</b> – <b>Nome</b>: Documento RTF dannoso<br/>Contiene oggetto OLE artigianale"] class artifact_rtf file step2_vba["<b>Azione</b> – <b>T1059.005 Comando e Interprete di Script: Visual Basic</b><br/>Macro VBA incorporata si autoesegue all’apertura del documento."] class step2_vba action step3_exploit["<b>Sfruttamento</b> – CVEu20112026u201121509 bypass OLE<br/>La macro contatta il server WebDAV dannoso e scarica .lnk"] class step3_exploit exploit artifact_lnk["<b>File</b> – <b>Nome</b>: Scorciatoia .lnk dannosa"] class artifact_lnk file step4_html["<b>Azione</b> – <b>T1218.001 Esecuzione Proxy di Binario di Sistema: File HTML Compilato</b><br/>.lnk attiva CVEu20112026u201121513 in MSHTML, eseguendo il carico utile HTML incorporato."] class step4_html action artifact_html["<b>File</b> – <b>Nome</b>: Carico utile HTML incorporato"] class artifact_html file step5_com_hijack["<b>Azione</b> – <b>T1546.009 Esecuzione Attivata da Evento: DLL AppCert</b><br/>Il carico utile registra una DLL dannosa come InProcServer32 per un CLSID per la persistenza."] class step5_com_hijack action malicious_dll["<b>Malware</b> – <b>Nome</b>: DLL PrismexLoader<br/>Si maschera da DLL di Windows legittima"] class malicious_dll malware step6_dll_hijack["<b>Azione</b> – <b>T1574.001 Dirottare Flusso di Esecuzione: DLL</b><br/>La DLL proxy inoltra chiamate legittime eseguendo codice dannoso."] class step6_dll_hijack action step7_stego["<b>Azione</b> – <b>T1027.003 File o Informazioni Offuscati: Steganografia</b><br/>La DLL proxy estrae il carico utile .NET nascosto in PNG usando Bit Plane Round Robin."] class step7_stego action stego_png["<b>File</b> – <b>Nome</b>: Immagine PNG con carico utile nascosto"] class stego_png file dotnet_payload["<b>Malware</b> – <b>Nome</b>: Stager Covenant Grunt .NET"] class dotnet_payload malware step8_c2["<b>Azione</b> – <b>T1102 Servizio Web</b><br/>Stager comunica con sottodomini di archiviazione cloud Filen.io per C2."] class step8_c2 action c2_filen["<b>C2</b> – Archiviazione cloud Filen.io"] class c2_filen c2 step9_exfil["<b>Azione</b> – <b>T1567.002 Esfiltrazione su Servizio Web: Esfiltrazione su Archiviazione Cloud</b><br/>Dati raccolti criptati e caricati su Filen.io."] class step9_exfil action step10_email["<b>Azione</b> – <b>T1114.001 Raccolta Email: Raccolta Email Locale</b><br/>Il malware raccoglie file di caselle di posta Outlook per il riconoscimento."] class step10_email action outlook_data["<b>File</b> – <b>Nome</b>: File di caselle di posta Outlook (OST/PST)"] class outlook_data file %% Connections step1_phishing –>|consegna| artifact_rtf artifact_rtf –>|attiva| step2_vba step2_vba –>|esegue| step3_exploit step3_exploit –>|scarica| artifact_lnk artifact_lnk –>|attiva| step4_html step4_html –>|esegue| artifact_html artifact_html –>|carica| step5_com_hijack step5_com_hijack –>|registra| malicious_dll malicious_dll –>|carica| step6_dll_hijack step6_dll_hijack –>|estrae| step7_stego step7_stego –>|legge| stego_png stego_png –>|contiene| dotnet_payload dotnet_payload –>|comunica con| step8_c2 step8_c2 –>|utilizza| c2_filen dotnet_payload –>|esfiltra dati tramite| step9_exfil step9_exfil –>|immagazzina in| c2_filen step10_email –>|raccoglie| outlook_data dotnet_payload –>|colleziona email da| outlook_data %% Class assignments 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 "
Flusso di Attacco
Rilevazioni
Binario / Script Sospettosi in Posizione di Avvio Automatico (via file_event)
Visualizza
Possibile Infiltrazione / Esfiltrazione di Dati / C2 tramite Servizi / Strumenti di Terze Parti (via dns)
Visualizza
Possibile Infiltrazione / Esfiltrazione di Dati / C2 tramite Servizi / Strumenti di Terze Parti (via proxy)
Visualizza
Possibile Hijacking COM di Explorer (via registry_event)
Visualizza
Possibile Persistenza Basata su Outlook (via file_event)
Visualizza
Possibile Hijacking COM di Explorer (via file_event)
Visualizza
Indicatori di Compromissione (HashSha256) da rilevare: Pawn Storm Campaign Deploys PRISMEX, Targets Government and Critical Infrastructure Entities
Visualizza
Rileva Inizializzazione CLR Insolita nel Processo di Explorer [Creazione di Processo Windows]
Visualizza
Persistenza Hijacking COM di PrismexSheet [Evento di Registro di Sistema Windows]
Visualizza
Esecuzione Simulazione
Prerequisito: Il Controllo Pre-missione di Telemetria & Baseline deve essere passato.
Motivazione: Questa sezione dettaglia l’esecuzione precisa della tecnica avversaria (TTP) progettata per attivare la regola di rilevazione. I comandi e la narrazione DEVONO riflettere direttamente i TTP identificati e mirare a generare l’esatta telemetria prevista dalla logica di rilevazione. Esempi astratti o non correlati porteranno a una diagnosi errata.
-
Narrazione & Comandi di Attacco:
- L’avversario ha ottenuto una DLL dannosa (
evil.dll) collocata in una directory scrivibile (es.,C:Tempevil.dll). - Per ottenere la persistenza, selezionano il CLSID
{68DDBB56-9D1D-4FD9-89C5-C0DA2A625392}(uno dei GUID tracciati dalla regola). - Utilizzando
reg.exeincorporato (o PowerShell), impostano il valore predefinito delInProcServer32sottochiave al percorso della DLL dannosa, dirottando così qualsiasi attivazione COM di quel CLSID. - La modifica del registro genera un’inserzione EventID 13 con l’esatto
TargetObjectche corrisponde alla regola di rilevazione.
- L’avversario ha ottenuto una DLL dannosa (
-
Script di Test di Regressione:
# ------------------------------------------------- # Simulazione di Persistenza Hijacking COM di PrismexSheet # ------------------------------------------------- $guid = '{68DDBB56-9D1D-4FD9-89C5-C0DA2A625392}' $dllPath = "C:Tempevil.dll" # Assicurarsi che la DLL dannosa esista (segnaposto per il test) if (-not (Test-Path $dllPath)) { New-Item -Path $dllPath -ItemType File -Force | Out-Null Set-Content -Path $dllPath -Value "Segnaposto di carico utile dannoso" } $regPath = "HKCU:SoftwareClassesCLSID$guidInProcServer32" # Creare la chiave se non esiste New-Item -Path $regPath -Force | Out-Null # Impostare il valore predefinito per puntare alla DLL dannosa Set-ItemProperty -Path $regPath -Name '(Default)' -Value $dllPath Write-Host "Dirottamento COM persistito a $regPath -> $dllPath" -
Comandi di Pulizia:
# Rimuovere la registrazione COM dannosa $guid = '{68DDBB56-9D1D-4FD9-89C5-C0DA2A625392}' $regPath = "HKCU:SoftwareClassesCLSID$guid" Remove-Item -Path $regPath -Recurse -Force # Eliminare la DLL fittizia Remove-Item -Path "C:Tempevil.dll" -Force -ErrorAction SilentlyContinue Write-Host "Pulizia completata."