
LPE-PoC einer Use-After-Free-Schwachstelle im Linux-Netfilter-Subsystem.
LPE-Exploit für CVE-2022-32250 - eine Use-After-Free-Schwachstelle in netfilter.
Meine Analyse der Schwachstelle: Eroberung einer Use-After-Free in nf_tables: Detaillierte Analyse und Ausnutzung von CVE-2022-32250
Zum Kompilieren werden libmnl und libnftnl benötigt.
gcc -lmnl -lnftnl exploit.c -o exploit
Die Schwachstelle betrifft sowohl Versionen, die nur über KMALLOC_NORMAL-Caches verfügen, als auch solche, die zusätzlich KMALLOC_CGROUP besitzen. Beim Erstellen des Exploits habe ich nur Primitive verwendet, die in beiden Fällen funktionieren - die Tests wurden jedoch auf 5.12 durchgeführt, das nur KMALLOC_NORMAL-Caches besitzt. Theoretisch funktioniert er in beiden Fällen - in der Praxis könnte ein wenig Arbeit nötig sein.
Die Zuverlässigkeit des Exploits ist vertretbar - begrenzt durch das Key-Limit in Linux, das unsere Möglichkeiten zum Object Spraying einschränkt (das Limit beträgt 200 für Nicht-Root-Benutzer).
Der Exploit ist ein Proof-of-Concept und kann auf 5.12.0 lokale Privilegieneskalation erreichen. Es war nicht mein Ziel, ihn zu weaponisieren, daher kann ich keinerlei Aussagen über seine Zuverlässigkeit auf anderen Versionen treffen.
Der Proof-of-Concept und die Analyse der Schwachstelle dienen ausschließlich Bildungs- und Forschungszwecken. Verwendung auf eigene Gefahr.