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
glpi-logbleed — PoC für CVE-2026-53629, blinde SQL-Injection im Filter des GLPI-Verlaufsprotokolls | Kitploit
Tools/GitHubGitHub/5kr1pt/glpi-logbleed
SchwachstellenanalyseExploitationWebanwendungs-ExploitationDatenexfiltrationPenetrationstests
GitHub5kr1pt/glpi-logbleed

glpi-logbleed

PoC für CVE-2026-53629, blinde SQL-Injection im Filter des GLPI-Verlaufsprotokolls

Repository anzeigen
12vor 1 MonatNoch nicht geprüft
Webseite

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

glpi-logbleed

glpi-logbleed läuft

Blinde SQL-Injection im GLPI-Verlaufslogfilter. CVE-2026-53629, behoben in 11.0.8 und 10.0.26, defekt seit 9.4.0.

Benötigt ein beliebiges Konto mit dem Recht logs READ. Das mitgelieferte Read-Only-Profil besitzt es.

Sicherheitshinweis: GHSA-cpcj-x335-5cmh Artikel: wie ich es gefunden habe

Der Bug

Log::convertFiltersValuesToSqlCriteria() zerlegt den Filter affected_fields in key:operator:values. Der Patch für CVE-2026-29047 validierte den Operator und castete den Array-Index, ließ $key aber unverändert.

DBmysqlIterator::analyseCrit() setzt , und nicht als Spaltennamen in Anführungszeichen. Es rekursiert in deren Werte, und diese Rekursion endet in einem veralteten Zweig, der einfache Zeichenketten als rohes SQL zurückgibt.

OR
AND
NOT

Wenn also OR als Schlüssel verwendet wird, landet alles Beliebige in der WHERE-Klausel:

root@kitploit:~
/front/log/export.php?itemtype=Entity&id=0&filter[affected_fields][0]=OR::1 AND sleep(5)
root@kitploit:~
SELECT * FROM `glpi_logs`
WHERE `items_id` = '0' AND `itemtype` = 'Entity'
AND (((((1 AND sleep(5))))))

Der Tab „Verlauf“ macht dasselbe über filters[affected_fields][0].

Einschränkungen des Payloads

explode(',', $values) zerbricht alles mit einem Komma, daher sind SUBSTRING(s,1,1) und IF(a,b,c) nicht möglich. CASE WHEN ... THEN ... ELSE ... END und MID(s FROM n FOR 1) erledigen die Arbeit. Hexadezimale Literale statt Anführungszeichen, 0x676c7069 ist glpi.

Der Payload wird pro Zeile in glpi_logs ausgeführt, sodass sich der Schlaf multipliziert. Sechs Zeilen mit sleep(5) ergeben 30 Sekunden. Reduziere ihn bei einer echten Instanz auf 0.1, sonst kommt die Anfrage nie zurück.

Ausführen

root@kitploit:~
pip install requests
python3 glpi_sqli_extract.py http://glpi.lab.local -u readonly -p readonly

Liest glpi_users.password Zeichen für Zeichen per binärer Suche. --id für einen anderen Benutzer, --sleep und --threshold für langsamere Ziele.

Der gleiche Trick liest api_token, personal_token sowie die SMTP- und LDAP-Zugangsdaten in glpi_configs.

Behebung

Upgrade durchführen. Falls das nicht möglich ist, entzieh den Profilen, die es nicht benötigen, das Recht logs READ. Upstream hat den Schlüssel auf die Whitelist gesetzt:

root@kitploit:~
$allowed_keys = ['linked_action', 'id_search_option', 'itemtype_link'];
if (!in_array($key, $allowed_keys, true)) {
    continue;
}

Veröffentlicht, nachdem der Fix verfügbar war. Nicht auf Systemen ausführen, die dir nicht gehören.

Tool herunterladen