
Lokaler Privilegieneskalations-Exploit für Linux-Kernel <5.1.17 unter Verwendung der ptrace/pkexec-Sicherheitslücke (CVE-2019-13272). Enthält PoC-Code und Kompilierungsanleitung für autorisierte Sicherheitstests.
⚠️ Nur für Bildungszwecke und autorisierte Sicherheitsforschung
Vielen Dank an den ursprünglichen PoC-Autor BCOLES
Im Linux-Kernel vor 5.1.17 behandelt ptrace_link in kernel/ptrace.c die Aufzeichnung der Berechtigungen eines Prozesses, der eine ptrace-Beziehung aufbauen möchte, fehlerhaft, was es lokalen Benutzern ermöglicht, Root-Zugriff zu erlangen, indem sie bestimmte Szenarien mit einer Eltern-Kind-Prozessbeziehung ausnutzen, bei der ein Elternteil Berechtigungen aufgibt und execve aufruft (was möglicherweise die Kontrolle durch einen Angreifer ermöglicht). Ein beitragender Faktor ist ein Problem mit der Objektlebensdauer (was auch einen Panic verursachen kann). Ein weiterer beitragender Faktor ist die falsche Markierung einer ptrace-Beziehung als privilegiert, was über (zum Beispiel) den pkexec-Helfer von Polkit mit PTRACE_TRACEME ausnutzbar ist. HINWEIS: SELinux deny_ptrace könnte in einigen Umgebungen eine brauchbare Abhilfe sein.

Installieren Sie git und klonen Sie das Skript aus dem GitHub-Repository:
sudo apt install git -y
git clone https://github.com/asepsaepdin/CVE-2019-13272.git
Kompilieren Sie die poc.c mit gcc mit folgendem Befehl:
cd CVE-2019-13272
gcc -s poc.c -o become_root
Führen Sie das Skript mit folgendem Befehl aus:
./become_root