
CVE-2016-5195 (Dirty COW) Exploit, der /etc/passwd modifiziert, um Privilegien zu erweitern und eine Root-Shell auf anfälligen Linux-Kerneln zu starten.
dcow ist ein möglicher Exploit für die Schwachstelle CVE-2016-5195. Wird das Programm als unprivilegierter Benutzer auf einem verwundbaren System ausgeführt, verändert es die Datei /etc/passwd und erzwingt das Passwort „dirtyCowFun" (SHA-512, könnte jedoch für ältere Standards angepasst werden). Im Falle einer erfolgreichen Ausführung steht nach einem „su" mit diesem Passwort eine Root-Shell zur Verfügung. Mit der Option -s (empfohlen) wird automatisch eine Root-Shell geöffnet. Ein Backup der ursprünglichen /etc/passwd wird im aktuellen Ausführungsverzeichnis als .ssh_bak erstellt, wenn dcow ohne Optionen oder mit -n verwendet wird (siehe Beispiel unten).
Dieser Code wurde zu Informations- und Bildungszwecken veröffentlicht. Das Eindringen in Systeme und Dienste ohne Autorisierung des Eigentümers ist illegal. Der Missbrauch der Informationen und der Software in diesem Repository kann zu strafrechtlichen Anklagen gegen den Täter führen. Jegliche Handlungen und/oder Aktivitäten im Zusammenhang mit dem Material in diesem Git-Repository liegen in Ihrer alleinigen Verantwortung. Der Autor wird nicht haftbar gemacht, falls gegen Personen, die die Informationen oder die Software auf dieser Website missbrauchen, um gegen das Gesetz zu verstoßen, strafrechtliche Anklagen erhoben werden.
Ein System, das für CVE-2016-5195 verwundbar ist.
Das Programm wurde erfolgreich verwendet mit:
und kompiliert mit:
EDB-ID: 40847
https://www.exploit-db.com/exploits/40847/
Programm kompilieren: make
Programm starten:
./dcow
oder
./dcow -s # Automatisch eine Root-Shell öffnen und die passwd-Datei wiederherstellen.
./dcow -s -n # Automatisch eine Root-Shell öffnen, aber die passwd-Datei nicht wiederherstellen.
Online-Hilfe:
./dcow -h
Im Abschnitt „wiki" dieser Seite befindet sich eine unvollständige Liste der verwundbaren Kernel/Distributionen.
Im Verzeichnis „legacy" befindet sich ein direkter Port dieses Programms, der die Kompilierung mit Compilern vor C++11 ermöglicht.
Eine Version dieses Exploits, geschrieben in Go + CGO-Sprache, befindet sich im Verzeichnis „golang". Sie ermöglicht die Erstellung einer statischen ausführbaren Datei ohne externe Abhängigkeiten.