
PoC zur lokalen Privilegieneskalation für den Linux-Kernel CVE-2022-1015
Dieses Repository enthält einen PoC für die lokale Privilegienausweitung von CVE-2022-1015, einem Fehler in der nf_tables Komponente des Linux-Kernels, den ich gefunden habe. Eine detaillierte Analyse dieser Schwachstelle und der Ausnutzungsstrategie finden Sie in meinem Blog.
Derzeit ist der Exploit etwas chaotisch. Tut mir leid!
Kernel nach Commit 345023b0db31 (v5.12) und vor Commit 6e1acfa387b9 (v5.17) sind anfällig.
Dieser Exploit wird höchstwahrscheinlich keine Root-Shell für einen bestimmten anfälligen Kernel liefern. Sie müssen mit Chain-Hook-Positionen (Input vs. Output usw.), nft_bitwise-Adressleak-Offsets sowie ROP-Gadget- und Symbol-Offsets experimentieren. Ich habe auf 5.16-rc3+ getestet und musste meinen Exploit für einen mit einer anderen gcc-Version kompilierten Kernel-Build erheblich ändern.
Das heißt, mit allen Informationen, die in meinem Blogbeitrag gegeben sind, denke ich, dass die Anpassung des Exploits für einen bestimmten anfälligen Kernel machbar sein sollte.
Führen Sie einfach make aus, und eine ausführbare Datei pwn sollte im Quellverzeichnis erscheinen. Sie benötigen die Entwicklerpakete libmnl und libnftnl sowie die Linux-Header des Ziels.
Sie können die zu verwendenden Kernel-Header explizit angeben, z.B. mit make CFLAGS="-I/path/to/linux-tree/usr/include".
Dieser Code wird unter der Beerware-Lizenz vertrieben. Ich bin rechtlich nicht verantwortlich für alles, was Sie damit tun.