Die US-Behörde Cybersecurity and Infrastructure Security Agency (CISA) hat PwnKit als kritische Linux-Schwachstelle in ihre Liste der aktiv ausgenutzten Sicherheitslücken aufgenommen.
Unter der Kennung CVE-2021-4034 und mit einem CVSS-Score von 7,8/10 wurde PwnKit im November 2021 von Qualys entdeckt und kann von Hackern genutzt werden, um die vollständige Kontrolle mit Root-Rechten über wichtige Linux-Distributionen zu erlangen.
Die Schwachstelle befindet sich in der von den meisten Distributionen (Ubuntu, Debian, CentOS und anderen) verwendeten Polkit-Komponente pkexec:
„[der Befehl] ermöglicht es einem autorisierten Benutzer, PROGRAM als ein anderer Benutzer auszuführen. Wenn kein Benutzername angegeben ist, wird das Programm als administrativer Superuser, root, ausgeführt.“
PwnKit ist ein besonders leicht auszunutzender Speicherfehler im Polkit-Dienst. Man muss lediglich ein kleines Archiv entpacken und einige Befehlszeilen verwenden, um auf kompatiblen Rechnern Root-Zugriff zu erlangen. Alle Polkit-Versionen sind betroffen.
Siehe die besten Open-Source-Sicherheitstools
Eine alte Schwachstelle taucht wieder auf
Die Forscher von Qualys stellten fest, dass die Schwachstelle seit 13 Jahren existiert – seit der ersten Veröffentlichung von pkexec im Mai 2009. Auf GitHub gibt es unzählige sofort einsatzbereite POCs (Proofs of Concept). Jeder kann die Binärdatei herunterladen und installieren. Und wenn ich „jeder“ sage, übertreibe ich nicht: Für die Nutzung des Kits sind keine technischen Vorkenntnisse erforderlich.
Danach erhält man in der Regel eine Binärdatei, die man ausführen kann, um Root-Rechte zu erlangen.
Sofern Hacker nicht besonders nachlässig sind oder unter Zeitdruck stehen, hinterlässt der Exploit nicht allzu viele Spuren. Der einzige Nachteil ist, dass zunächst Zugriff erforderlich ist. Dieser kann durch die vorherige Ausnutzung einer anderen Schwachstelle erlangt werden, doch Hacker können Konten mit den geringsten Rechten wie dem Benutzer nobody nutzen, um die Maschine zu rooten.
PwnKit ist in C geschrieben, daher muss das Programm vor der Verwendung kompiliert werden:
gcc -w cve-2021-4034.c -o cve-2021-4034
Selbst wenn gcc nicht auf dem Rechner des Opfers installiert ist, können Hacker das Programm an anderer Stelle kompilieren oder öffentlich verfügbare, vorkompilierte Binärdateien verwenden.
Die CISA wies Bundesbehörden an, die Schwachstelle innerhalb von 3 Wochen zu patchen.
Siehe die beste Patch-Management-Software und -Tools
So schützen Sie sich vor PwnKit
Benutzer und Administratoren müssen ihr System unbedingt patchen, sofern dies noch nicht geschehen ist. Mit der folgenden Befehlszeile lässt sich prüfen, ob Polkit auf dem System installiert ist:
which pkexec
Auch wenn das Paket nicht direkt installiert ist, wird es häufig von anderen Abhängigkeiten benötigt. Daher ist es unwahrscheinlich, dass es auf Ihrem System fehlt – prüfen sollten Sie es trotzdem.
Alternativ können Sie bei einer nicht standardmäßigen Konfiguration Folgendes verwenden:
sudo chmod -s $(which pkexec)
Anschließend können Sie Ihr System aktualisieren:
sudo apt update && sudo apt upgrade && sudo reboot
Beachten Sie, dass die obige Befehlszeile sehr allgemein gehalten ist und die Syntax von Distribution zu Distribution variieren kann. DevOps-Teams sollten außerdem die cloudbasierten Dienste für alle Instanzen patchen.
Weiterlesen: 13 beste Tools zum Scannen von Schwachstellen





