
Proof-of-Concept-Exploit für CVE-2022-0847 (Dirty Pipe), eine Race Condition im Linux-Kernel, die unprivilegierte Schreibzugriffe auf schreibgeschützte Dateien und Privilegieneskalation ermöglicht.
Ein Proof-of-Concept-Exploit für CVE-2022-0847 (Dirty Pipe), eine Linux-Kernel-Schwachstelle, die es unprivilegierten Benutzern ermöglicht, in schreibgeschützte Dateien zu schreiben.
CVE-2022-0847 betrifft Linux-Kernel von 5.8 bis 5.16. Es wird eine Race Condition in der Pipe-Implementierung des Linux-Kernels ausgenutzt, um beliebige Daten in schreibgeschützte, im Speicher zwischengespeicherte Dateiseiten zu schreiben.
/etc/passwd).
├── src/
│ └── exploit.c # Dirty Pipe exploit source code
├── run.sh # QEMU test environment launcher
├── initramfs/ # Root filesystem for testing
├── debugfs.cpio # Compressed initramfs
└── README.md # This file
libelf-dev (für das Kernel-Building)gcc ./src/exploit.c -o ./src/exploit -static -pthread
./run.sh
# Inside QEMU shell:
/home/exploit
cat /etc/passwd # Verify password hash was written
su root # Switch to root (no password needed after exploit)
./src/exploit
Der Exploit modifiziert /etc/passwd, um einen Root-Benutzer mit einem bekannten Passwort-Hash einzuschleusen.
Der Exploit funktioniert folgendermaßen:
PIPE_BUF_FLAG_CAN_MERGE-Flags zu setzensplice(), um eine Dateiseite mit dem Pipe-Puffer zu verbindenDies ermöglicht das Schreiben in schreibgeschützte Speicherseiten, ohne COW (Copy-on-Write) auszulösen.
/proc/self/mem, falls möglichDieser Exploit dient ausschließlich Bildungs- und autorisierten Sicherheitstestzwecken. Unbefugter Zugriff auf Computersysteme ist illegal.
Minh Vu ([email protected])