Iscriviti al webinar gratuito del 12 Maggio per diventare Forensic Analyst! Scopri di più
Corso Ethical Hacker: accedi alla promozione fino al 30 Arile! Scopri di più
L'exploitation for privilege escalation è il meccanismo attraverso cui un avversario sfrutta un errore di programmazione — nel kernel, in un servizio di sistema o in un driver firmato — per passare da un contesto a basso privilegio a SYSTEM, root o persino uscire da un ambiente virtualizzato verso l'host sottostante. La tecnica si colloca nella tattica TA0004 – Privilege Escalation, il momento della kill chain in cui l'attaccante, già presente nel sistema con permessi limitati, ha bisogno di elevare i propri diritti per raggiungere gli obiettivi finali.
Il panorama è ampio: si va dal classico exploit kernel su Windows o Linux, alla tecnica Bring Your Own Vulnerable Driver (BYOVD), in cui l'avversario porta con sé un driver firmato ma vulnerabile per ottenere l'esecuzione di codice in kernel mode. Con 22 gruppi APT, 19 famiglie software, 2 campagne documentate e 5 mitigazioni censite, questa tecnica rappresenta uno dei pilastri operativi dell'arsenale offensivo, sfruttata tanto da gruppi di cyber-spionaggio statale quanto da operatori ransomware e gruppi a motivazione finanziaria. La varietà di CVE coinvolte — dal 2007 al 2024 — dimostra che la superficie d'attacco si rinnova costantemente e che il patching tempestivo resta la prima linea di difesa.
L'obiettivo in laboratorio è riprodurre i due vettori principali: exploit kernel classico e BYOVD. Per entrambi serve un ambiente isolato — una VM Windows 10/11 non patchata e una VM Linux con kernel vulnerabile.
Scenario 1 — Exploit kernel Windows con framework
Il punto di partenza è enumerare le patch mancanti sul target. Windows Exploit Suggester – Next Generation (wesng, open source) confronta l'output di systeminfo con il database CVE:
systeminfo > sysinfo.txt
python wes.py sysinfo.txt --exploits-only
L'output evidenzia le CVE sfruttabili. Se il target è vulnerabile a una delle CVE storiche usate dagli APT nei dati — ad esempio CVE-2021-1732, sfruttata sia da BITTER che da MoustachedBouncer — si può cercare il PoC pubblico corrispondente. Cobalt Strike (a pagamento) integra moduli per exploit come MS14-058, mentre Empire (open source) offre moduli per MS16-032 e MS16-135. Anche PoshC2 (open source) include moduli per CVE-2016-9192 e CVE-2016-0099.
In un engagement, la catena tipica prevede: shell iniziale con privilegi utente → enumerazione patch → selezione exploit → esecuzione → verifica con whoami /priv che mostri privilegi SYSTEM.
Scenario 2 — BYOVD in laboratorio
Questo scenario replica il comportamento di Embargo (driver probmon.sys) o Remsec (driver Outpost Sandbox). Il flusso operativo è:
Ad esempio, per caricare un driver vulnerabile:
sc create VulnDrv type= kernel binPath= C:\temp\driver_vuln.sys
sc start VulnDrv
Il progetto KDU – Kernel Driver Utility (open source) automatizza l'abuso di driver vulnerabili noti per ottenere lettura/scrittura arbitraria in kernel memory. È lo stesso principio usato da BlackByte 2.0 Ransomware con il driver RTCore64.sys (CVE-2019-16098).
Scenario 3 — Container escape su Linux
Per replicare scenari come quelli di Siloscape o Hildegard, si può allestire un container Docker su un kernel vulnerabile a CVE-2022-0847 (DirtyPipe). Lo strumento BOtB (open source) — lo stesso citato per Hildegard — automatizza la ricerca di primitive di escape da container, inclusa CVE-2019-5736 su runc.
Scarica la guida gratuita e segui il percorso corretto fin dal primo passo