Demo_CVE-2025-3248 — Pädagogischer PoC
Zweck: Simulation der Schwachstelle (CVE-2025-3248) in einer isolierten Umgebung zum Lernen über Informationssicherheit: Labor aufbauen, verwundbares Verhalten beobachten und Gegenmaßnahmen diskutieren.
⚠️ RECHTLICHER & ETHISCHER HINWEIS (NUR ZU ETHISCHEN ZWECKEN)
- Der gesamte Inhalt dieses Repos dient ausschließlich akademischen/Forschungszwecken.
- Auf keinen Fall den enthaltenen Quellcode/die Techniken verwenden, um in Systeme einzugreifen, die nicht im eigenen Besitz sind oder für die keine schriftliche Genehmigung vorliegt.
- Autor/Mitwirkende übernehmen keine Haftung für jegliche Konsequenzen aus missbräuchlicher Verwendung.
- Durch die Nutzung des Repos stimmen Sie den oben genannten Bedingungen zu.
Inhaltsverzeichnis
Einführung
Das Repo bietet:
- Einen verwundbaren Demo-Dienst, der in Docker läuft (Standard-Port
7860).
- PoC-Code (exploit.py) zum Senden von Anfragen, die die Ausnutzung nur in Ihrem Labor demonstrieren.
- Dokumentation zum Aufbau der Umgebung, zum Testen, Beobachten und Ausprobieren von Verteidigungsmaßnahmen.
Laborarchitektur
- Alle Tests werden auf Ihrem Rechner oder in einem von Ihnen kontrollierten Labornetzwerk durchgeführt.
- Diesen Dienst nicht öffentlich im Internet bereitstellen.
Repo-Komponenten
docker-compose.yml — Baut den Container für den verwundbaren Demo-Dienst.
exploit.py — PoC-Client, der die Auslösung des Fehlers demonstriert (nur im Labor verwenden).
LICENSE — Nutzungslizenz.
README.md — Das Dokument, das Sie gerade lesen.
Systemanforderungen
- Docker und Docker Compose (Plugin).
- Python 3.10+ und
pip (zum Ausführen des PoC).
- Berechtigung zum Ausführen von Docker (
sudo unter Linux oder Benutzer in der Gruppe docker).
Schnellstart
A. Labor mit Docker aufbauen
git clone https://github.com/Kiraly07/Demo_CVE-2025-3248.git
cd Demo_CVE-2025-3248
# Demo-Dienst starten (im Hintergrund)
docker compose up -d
# Container prüfen
docker compose ps
# Logs bei Bedarf ansehen
docker compose logs -f
B. Abhängigkeiten für den PoC installieren
python -m venv venv
# Linux/macOS
source venv/bin/activate
# Windows PowerShell
# .\venv\Scripts\Activate.ps1
pip install --upgrade pip
pip install requests colorama argparse
(Optional) requirements.txt erstellen:
requests
colorama
argparse
C. PoC im lokalen Labor ausführen
# Einfaches Beispiel
python exploit.py -u http://[TARGET]:7860
Wichtiger Hinweis: --url nur auf localhost/Ihr Labor-Rechner zeigen. Keine Ziele außerhalb des erlaubten Bereichs anvisieren.
Konfiguration anpassen
- Dienst-Port: Im Abschnitt ports: in docker-compose.yml anpassen.
- Docker-Netzwerk: Ein separates Netzwerk kann hinzugefügt werden, um den Container zu isolieren (empfohlen in komplexen Laboren).
- Reverse-Proxy: Falls nötig, hinter Nginx platzieren und nur lokal öffnen (127.0.0.1 oder internes Netzwerk).
Bereinigung
# Container/Volumes stoppen & löschen
docker compose down -v
# (Optional) venv löschen
deactivate 2>/dev/null || true
rm -rf venv
Hinweise zu Verteidigung / Gegenmaßnahmen
- Software auf gepatchte Versionen aktualisieren, sobald offizielle Ankündigungen vorliegen.
- Angriffsfläche begrenzen: nur notwendige Ports öffnen; hinter Reverse-Proxy mit Authentifizierung platzieren.
- Prinzip der geringsten Rechte für Container:
- Als nicht-privilegierter Benutzer ausführen.
- Capabilities einschränken, read-only Root-FS aktivieren, wenn möglich.
- Netzwerk trennen, keine sensiblen Datenträger mounten.
- Überwachung & Protokollierung: Access-Logs aktivieren; verdächtige Muster verfolgen; Frühwarnung.
- WAF/IDS/IPS: wo geeignet einsetzen; immer Eingabevalidierung (input validation) durchführen.
Troubleshooting
- Port 7860 belegt: Port-Mapping ändern (z. B. 8080:7860) in docker-compose.yml.
- Container startet nicht: Logs ansehen mit docker compose logs -f.
- Fehlende Docker-Berechtigung: sudo verwenden oder Benutzer zur Gruppe docker hinzufügen.
- Fehler bei der Installation von Python-Paketen: pip aktualisieren und Proxy/Firewall intern prüfen.
Vorgeschlagener Lernpfad
- docker-compose.yml lesen, um Angriffsfläche/Abhängigkeiten zu verstehen.
- PoC im lokalen Labor ausführen, HTTP-Request/Response aufzeichnen.
- Gegenmaßnahmen ausprobieren, PoC erneut testen, um die Wirksamkeit zu bewerten.
- Bericht schreiben: Fehlerursache, Exploit-Kette, Auswirkungen und Empfehlungen.
Lizenz
- Siehe Datei LICENSE im Repo-Stammverzeichnis.
Erneute Bestätigung der ethischen Nutzung
Dieses Repo wurde nur zu Lernzwecken erstellt.
Nicht für unbefugte Zwecke verwenden. Holen Sie immer eine ausdrückliche Genehmigung ein, bevor Sie Sicherheitstests an Systemen durchführen, die nicht in Ihrem Besitz sind.