
Meine Einschätzung zur needrestart Python CVE-2024-48990
Dieses einfache Shell-Skript soll alle erforderlichen Dateien für diese Sicherheitslücke erstellen.
Zuerst erstellt es eine zufällig generierte temporäre Datei, die zum Kompilieren der gefälschten __init__.so-Datei verwendet wird. Wenn die Sicherheitslücke ausgelöst wird, führt diese Datei die Bash-Binärdatei nach /tmp/ribbit und setzt das SUID-Bit. Als Nächstes erstellt es das importlib-Verzeichnis im aktuellen Arbeitsverzeichnis. Dann wird die erstellte temporäre Datei in __init__.so kompiliert und in das neu erstellte Verzeichnis gelegt. Schließlich wird eine weitere zufällig benannte temporäre Python-Datei erstellt, die schläft und darauf wartet, dass die Sicherheitslücke ausgelöst wird. Sobald sie ausgelöst wird, führt sie die SUID-gesetzte Bash-Binärdatei aus, was zu einer Root-Shell führt.
Sobald das Python-Skript gestartet ist, muss needrestart mit Root-Berechtigungen ausgeführt werden. Dies geschieht normalerweise, wenn apt-get verwendet wird.