Falsificazione del Processo Padre: Parent PID Spoofing (T1134.004)

La tecnica Parent PID Spoofing consente a un attaccante di alterare l'identificativo del processo padre (PPID) durante la creazione di un nuovo processo Windows, spezzando la naturale catena di parentela che gli strumenti di monitoring usano per distinguere comportamenti legittimi da quelli sospetti. Il meccanismo sfrutta la legittima capacità dell'API CreateProcess di accettare un attributo esplicito (PROC_THREAD_ATTRIBUTE_PARENT_PROCESS) che indica quale processo esistente debba essere registrato come genitore, funzione nata per supportare scenari come l'elevazione UAC gestita da svchost.exe o consent.exe.

MITRE ATT&CK inserisce questa sottotecnica sotto due tattiche complementari: TA0005 Defense Evasion, perché confonde le euristiche parent-child (ad esempio WINWORD.EXE → powershell.exe), e TA0004 Privilege Escalation, perché scegliendo come padre un processo SYSTEM come lsass.exe si eredita il relativo token di accesso, promuovendo il figlio a integrità e privilegi superiori.

Nella kill chain si colloca nelle fasi post-exploitation: dopo l'Initial Access — tipicamente via Spearphishing Attachment con macro Office — l'attaccante spawna il payload assegnandogli un genitore plausibile come explorer.exe, aggirando regole di correlazione basate sulla lineage. Il pattern è documentato in almeno 4 famiglie di malware rilevanti (Cobalt Strike, KONNI, PipeMon, DarkGate), a conferma di un'adozione trasversale tra red team commerciali, APT statali e crimeware.

Per riprodurre Parent PID Spoofing in laboratorio è sufficiente un host Windows 10/11 aggiornato, Visual Studio Build Tools e la possibilità di eseguire codice non firmato. L'implementazione canonica passa da InitializeProcThreadAttributeList, UpdateProcThreadAttribute con l'attributo PROC_THREAD_ATTRIBUTE_PARENT_PROCESS e infine CreateProcessW con il flag EXTENDED_STARTUPINFO_PRESENT. Il target da falsificare si ottiene tramite OpenProcess con almeno PROCESS_CREATE_PROCESS, e questo è il vero limite: serve un handle valido sul processo scelto come padre.

Sul fronte offensive-tooling Cobalt Strike (a pagamento) espone nativamente il primitivo attraverso il comando spawnto combinato con ppid nel Beacon, così il post-exploitation module scelto (mimikatz, hashdump, ecc.) viene ospitato in un processo figlio di un padre arbitrario. Nel mondo open source strumenti come Nim-Loader e i vari PoC pubblicati da @_RastaMouse o @djhohnstein (open source, disponibili su GitHub) mostrano l'attributo esteso in C, C# via P/Invoke e Nim; per rapide validazioni in PowerShell si può ricorrere a PowerSploit (open source, non più mantenuto ma ancora didattico) o al più recente PSReflect-Functions.

Una catena realistica da simulare in un red team engagement parte da un documento Office con macro VBA che chiama Shell verso un loader nativo. Il loader ottiene l'handle di explorer.exe, prepara la STARTUPINFOEX, invoca CreateProcessW per lanciare powershell.exe con un one-liner AMSI-bypass, e il Beacon che ne risulta appare in EDR come figlio della shell dell'utente anziché di WINWORD.EXE. Combinando la tecnica con Token Impersonation (T1134.001) su lsass.exe, il figlio eredita anche il token SYSTEM, ottenendo elevazione senza toccare runas o UAC.

Per misurare l'efficacia rispetto ai controlli difensivi conviene usare Atomic Red Team (open source), che include il test T1134.004 con eseguibili pre-compilati, e strumentare l'host con Sysmon (gratuito) configurato tramite il template di SwiftOnSecurity o quello di Olaf Hartong (entrambi open source): l'EventID 1 riporta sia ParentProcessId sia il vero ParentImage, permettendo di verificare se lo spoofing è visibile. Un ulteriore banco di prova utile è ETW-based tooling come SilkETW (open source) che sottoscrive il provider Microsoft-Windows-Kernel-Process mostrando la reale relazione creator/created.

Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?

Accedi alle lezioni gratuite e segui il percorso corretto fin dal primo passo

TEST GRATUITO
2 minuti · 7 domande Che professionista cyber sei? Scopri il profilo più vicino al tuo modo di pensare e inizia dal percorso giusto.
We use cookies

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.