
Linux-Kernel-PoC zur lokalen Rechteausweitung für CVE-2026-68121, das PPPoE, FUSE und IP6GRE verkettet, um Kernel-Speicher zu korrumpieren und Root-Rechte zu erlangen.
[!WARNING] Das PoC wird ausschließlich bereitgestellt, um Verteidigern, Maintainern und autorisierten Sicherheitsteams dabei zu helfen, Patches, Mitigationen, Detektionen und Exposition auf Systemen zu validieren, die sie besitzen oder für deren Test sie ausdrücklich autorisiert sind.
Sie sind allein dafür verantwortlich, sicherzustellen, dass Ihre Nutzung dieses Materials rechtmäßig, autorisiert, kontrolliert und in einer isolierten Testumgebung erfolgt.
[!WARNING] Dieses PoC ist destruktiv. Es korrumpiert absichtlich den Live-Kernelspeicher. Ein fehlplatzierter Overwrite kann unrelated Kernel-Speicher korrumpieren und die Maschine zum Hängen/Booten bringen.
Nur in einer wegwerfbaren VM/Wegwerf-Host ausführen.
Das PoC:
struct file-Objekte enthält, und
groomt eine befüllte fdtable in die Zielallokationdev_hard_header() den skb-Head reallokieren und nutzt dann den veralteten PPPoE-
Header-Zeiger, um einen fdtable-Eintrag auf die gefälschte Datei umzuleiten, und/bin/sh -p.Das PoC geht von x86-64 aus und zielt darauf ab, um die Dinge einfach zu halten. Theoretisch sollte der Bug nicht architekturspezifisch sein, aber man müsste viel portieren (vom Leaken der Kernel-Basis bis zum Rest der Kette).
Zur Vollständigkeit erschöpfend aufgelistet:
6.19.10-300.fc44.x86_64 oder Ubuntu 24.04 mit
6.8.0-124-generic oder 6.8.0-136-generic (Sie können versuchen, diese
Checks zu entfernen, aber andere Distros/Kernel-Versionen erfordern möglicherweise
ziel-spezifische Anpassung/Grooming)passwd-Eintrag und einem Home-Verzeichnis,
das es besitztCAP_NET_ADMIN und
CAP_NET_RAW innerhalb dieses Namespace/dev/fuse, plus FUSE-, PPPoE-, IP6GRE-, AF_PACKET/TX-Ring-
und Team-Unterstützung auf Fedora bzw. Bonding-Unterstützung auf Ubuntumembarrier für ausgewählte Low-Order-LayoutsRLIMIT_NOFILE-Hard-Limit, das groß genug für die gewählte Carrier-Geometrie ist,
zur Laufzeit geprüft und möglicherweise bis zu 8.192 Deskriptoren erforderndNur mit 4GB RAM und verschiedenen 4+ CPU-Anzahlen getestet. Andere CPU-/Speicher-Kombinationen benötigen möglicherweise mehr Grooming und/oder könnten den Write in unrelated Speicher umleiten.
Führen Sie es als unprivilegierter Benutzer mit einem passwd-Eintrag aus. Die Ubuntu-Konvertierung kann
eine Weile dauern (z. B. 300+ Versuche).
python3 pppoeject_root_repro.py
gcc mit libc- und Linux-UAPI-Development-
Headern, taskset, unshare, ip, true und /bin/sh, plus aa-exec
und das geladene trinity-Profil auf Ubuntu, falls direktes unshare -Urn
verweigert wird