Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
cve-2026-87902 — Lokales Docker-basiertes Labor zur Reproduktion von CVE-2026-87902, einem WordPress-Page-Template-Path-Traversal, das zu lokaler PHP-Dateieinbindung und PEAR-basierter RCE führt, mit einem PoC-Skript. | Kitploit
Tools/GitHubGitHub/xiaxiu555/cve-2026-87902
Container-SicherheitSchwachstellenanalyseExploitationWebanwendungs-ExploitationWebsicherheitLernen & BildungPayload-EntwicklungLabs & Praxis
GitHubxiaxiu555/cve-2026-87902

cve-2026-87902

Lokales Docker-basiertes Labor zur Reproduktion von CVE-2026-87902, einem WordPress-Page-Template-Path-Traversal, das zu lokaler PHP-Dateieinbindung und PEAR-basierter RCE führt, mit einem PoC-Skript.

1vor 29 TagenNoch 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
Repository anzeigen

CVE-2026-87902 WordPress lokale Testumgebung

Lokale Docker-Testumgebung zur Reproduktion von CVE-2026-87902 (WordPress-Seitentemplate-Parsing-Pfad-Traversal → lokale PHP-Dateieinbindung → pearcmd-Dateischreiben-RCE).

⚠️ Nur für Sicherheitslernen und -forschung in autorisierten Umgebungen. Darf ausschließlich in lokalem Docker ausgeführt werden; die Verwendung gegen nicht autorisierte Ziele ist verboten. Die Schwachstelle wurde am 2026-09-22 offiziell behoben, und für alle unterstützten Branches wurden Patches veröffentlicht.

Schwachstelleninformationen

  • CVE: CVE-2026-87902(GHSA-7hp8-65ch-5whp),CWE-98 PHP-Dateieinbindung, CVSS 4.0 9.2 Critical
  • Betroffen: WordPress 4.7.0 – 7.1.1 (Fix: 7.1.2 / 7.0.6, übrige Branches zurückportiert bis 4.7.37)
  • Funktionsweise: get_page_template() führt auf dem benutzerkontrollierbaren Parameter pagename ein zweites urldecode() aus und fügt das Ergebnis in die Kandidatennamen der Templates ein; locate_template() sucht die Datei mit file_exists() und prüft vor dem Laden nur realpath/Endung/Lesbarkeit, ohne zu verifizieren, dass der Pfad noch im Theme-Verzeichnis liegt (Canonicalization vorhanden, Containment nicht)
  • Ursprünglicher PoC und Write-up (Robert Ressl):
    • https://github.com/ressl/cve-2026-87902-poc
    • https://ressl.ch/blog/cve-2026-87902-wordpress/
    • https://github.com/WordPress/wordpress-develop/security/advisories/GHSA-7hp8-65ch-5whp

Die vier im Testumfeld vorkonfigurierten Ausnutzungsbedingungen

#BedingungWie dieses Testumfeld sie erfüllt
1Eine veröffentlichte Seite ohne zugewiesenes benutzerdefiniertes Templatesetup.sh erstellt und bereinigt automatisch eine Beispielseite
2Ein page-*-Verzeichnis auf oberster Ebene des aktiven Themestheme/mytheme/page-templates/ (das aktivierte Theme enthält dieses Verzeichnis)
3Eine lesbare /usr/local/lib/php/pearcmd.phpDas offizielle PHP-Image enthält PEAR
4register_argc_argv=On + beschreibbarer AblageortDas offizielle Image hat keine php.ini, der Kompilierungsstandardwert ist On; /tmp ist beschreibbar

Schnellstart

docker compose up -d      # beim ersten Mal automatisches Herunterladen der Images (ca. 1 GB)
sh setup.sh               # Installation + /flag platzieren + Überprüfung der vier Bedingungen
python cve-2026-87902.py --url http://127.0.0.1:8091

Erwartete Ausgabe:

[*] page id  : 4 (about, default template, via /index.php?rest_route=...)
[*] depth 7  : stage 1 HTTP 200, stage 2 HTTP 200
[+] marker   : 'CVE-2026-87902-POC-OK' found 12 time(s) in the stage-2 response
[+] EXPLOIT SUCCESSFUL - PHP executed with the web-server account's privileges

(12 Mal = die PEAR-Konfigurationsdatei hat 12 Konfigurationseinträge, in jedem ist eine Payload eingebettet)

Überprüfung und Erläuterung

Anzeigen der von PEAR in Stage 1 geschriebenen Datei (serialisierter Text, der mit #PEAR_Config 0.9 beginnt; die Payload ist als normale Zeichen in die 12 Konfigurationseinträge eingebettet):

docker compose exec wordpress cat /tmp/wp-pear-rce-flag.php
  • Stage 1: Ausnutzung von Path Traversal zum Einbinden von pearcmd.php; register_argc_argv=On bewirkt, dass der Query-String an + in $argv aufgeteilt wird, und pearcmd glaubt, im Terminal aufgerufen worden zu sein; config-create <root> <file> schreibt root (mit eingebettetem PHP-Code) unverändert in die Zieldatei
  • Stage 2: Dieselbe Traversal-Kette bindet die gerade geschriebene Datei per include ein, <?=...?> wird ausgeführt und liest /flag aus und gibt es zurück

Backend und Bereinigung

  • WordPress-Backend: http://127.0.0.1:8091/wp-admin (admin / admin123, nur für die lokale Testumgebung)
  • Inhalt des Flags: CVE-2026-87902-POC-OK (befindet sich im Container unter /flag)
  • Windows-Benutzer führen setup.sh bitte mit Git Bash aus

Vollständige Bereinigung (Container + Datenvolumes + Images):

docker compose down -v --rmi all

Dateibeschreibung

docker-compose.yml     WordPress 7.0.2-php8.3-apache + MySQL 8.4 + wp-cli
theme/mytheme/         Experimentelles Theme (enthält das Verzeichnis page-templates/, Bedingung ②)
cve-2026-87902.py      PoC (von ressl/cve-2026-87902-poc, Urheberrecht beim Originalautor)
setup.sh               Ein-Klick-Installation + Selbstprüfung der vier Bedingungen

Danksagung und Erklärung

  • Schwachstellenentdeckung und -offenlegung: Robert Ressl (ressl.ch), koordinierte Offenlegung über den offiziellen WordPress-Sicherheitsprozess (HackerOne)
  • Dieses Repository enthält lediglich eine Zusammenstellung offizieller Images, offizieller Konventionsverzeichnisse und eines öffentlichen PoC zur Lehrreproduktion
  • Alle Folgen, die sich aus der Nutzung dieses Testumfelds ergeben, trägt der Nutzer selbst
Tool herunterladen