Diese Anleitung beschreibt die Schritte zur Einrichtung von Nginx UI mit Docker Compose, zum Erstellen eines Benutzers, zum Ausführen eines Exploits und zur Überprüfung der Ergebnisse innerhalb des Docker-Containers.
Voraussetzungen
Stellen Sie sicher, dass Docker und Docker Compose auf Ihrem Rechner installiert sind.
Vertrautheit mit grundlegenden Befehlszeilenoperationen.
Überprüfen Sie, ob Ihre nginx.conf-Datei diese Zeilen enthält. Hinweis: unter Linux (Ubuntu) befindet sich diese Datei unter /etc/nginx/nginx.conf
root@kitploit:~
http {
# ...
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
Erstellen Sie ein lokales Verzeichnis www in Ihrem Arbeitsverzeichnis. Kopieren Sie dessen Pfad und ändern Sie die erste Hälfte von Zeile 13 im Docker-Compose-YAML (nur den Teil vor dem :).
root@kitploit:~
Line 13 ~/cve_session1/nginx/www
Erstellen Sie Ihren Container mit:
root@kitploit:~
docker compose up -d
Warten Sie ein paar Minuten und überprüfen Sie, ob das Docker-Image läuft:
Erstellen Sie ein Admin-Benutzerkonto. Benutzername: admin , Passwort: admin.
Erstellen Sie dann innerhalb der nginx UI einen weiteren Benutzer: Benutzername: basic , Passwort: basic.
Hinweis: Sie können die Benutzer mit beliebigen Namen und Passwörtern erstellen. Stellen Sie nur sicher, dass Sie das Python-Skript aktualisieren.
Führen Sie den Exploit aus. Er ist weitgehend selbsterklärend.
Melden Sie sich bei Docker an und überprüfen Sie, ob die Befehlsinjektion funktioniert.
root@kitploit:~
# Get container id first
docker ps
# Access container shell
docker exec -it <container-id> /bin/sh
# Check the tmp directory
ls -l /tmp