Skip to content
KitploitKITPLOIT
ToolsBlog
Log in
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-15981 — SAML Single Sign On <= 5.4.4 - Nicht authentifizierte Authentifizierungsumgehung über den Parameter SAMLResponse | Kitploit
Tools/GitHubGitHub/nxploited/cve-2026-15981
Authentifizierung & AutorisierungPayload-GenerierungSchwachstellenanalyseExploitationWebanwendungs-ExploitationPost-ExploitationPenetrationstests
GitHubnxploited/cve-2026-15981

CVE-2026-15981

SAML Single Sign On <= 5.4.4 - Nicht authentifizierte Authentifizierungsumgehung über den Parameter SAMLResponse

Repository anzeigen
15vor 2 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-15981

SAML Single Sign On <= 5.4.4 - Nicht authentifizierte Authentifizierungsumgehung über den SAMLResponse-Parameter

CVE CVSS CWE CWE Python

CVE-2026-15981

SAML Single Sign On ≤ 5.4.4 — Nicht authentifizierte Authentifizierungsumgehung

Proof-of-Concept-Exploit
Fehlerhafte Signatur → `openssl_verify()` gibt `-1` zurück → PHP-Loose-Cast auf `true` → `wp_set_auth_cookie()` als Administrator


Schwachstellenübersicht

FeldDetail
CVE-IDCVE-2026-15981
Betroffenes PluginminiOrange SAML 2.0 Single Sign On – SSO Login (WordPress)
Betroffene VersionenAlle Versionen bis einschließlich 5.4.4
TypNicht authentifizierte Authentifizierungsumgehung
CWECWE-287: Fehlerhafte Authentifizierung / CWE-305: Authentifizierungsumgehung durch primäre Schwachstelle
CVSS 3.19.8 KRITISCH — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
AuthentifizierungKeine erforderlich

Beschreibung

Das Plugin SAML Single Sign On – SSO Login für WordPress ist in allen Versionen bis einschließlich 5.4.4 anfällig für eine Authentifizierungsumgehung. Dies liegt daran, dass die Funktion mo_saml_validate_signature() eine lose boolesche Prüfung auf dem rohen Tri-State-Integer durchführt, den PHP's openssl_verify() zurückgibt, wodurch ein Fehler-Rückgabewert von -1 als truthy ausgewertet und daher als erfolgreiche Signaturprüfung behandelt wird.

Dies ermöglicht es nicht authentifizierten Angreifern, sich als beliebige vorhandene WordPress-Benutzer, einschließlich Administratoren, anzumelden, indem sie eine manipulierte SAMLResponse übermitteln, die eine angreiferkontrollierte NameID und einen absichtlich fehlerhaften Signaturwert enthält, der einen OpenSSL-Verarbeitungsfehler auslöst — wodurch die Verifizierung vollständig umgangen wird und wp_set_auth_cookie() für das Zielkonto aufgerufen wird.

Grundursache

Attacker sends crafted SAMLResponse
         │
         ▼
mo_saml_validate_signature()
         │
         ▼
openssl_verify($data, $malformed_sig, $key)
         │
         ├─ Returns  1  → valid signature      ✓
         ├─ Returns  0  → invalid signature     ✗
         └─ Returns -1  → OpenSSL internal error
                │
                ▼
     PHP loose comparison:  if ($result)
                │
                ├─ (int) 1   → true   ✓
                ├─ (int) 0   → false  ✓
                └─ (int) -1  → true   ← BUG: error treated as success
                       │
                       ▼
             wp_set_auth_cookie() called
                       │
                       ▼
             Attacker is now Administrator

Der Fix ist trivial — if ($result === 1) statt if ($result) — doch die Auswirkung der Schwachstelle ist eine vollständige Authentifizierungsumgehung.


Funktionen

  • Multi-Target-Massenscan — parallele Verarbeitung von Ziellisten
  • Vollständiges WordPress-Fingerprinting — bestätigt WordPress, bevor fortgefahren wird
  • Plugin-Erkennung & Versionsprüfung — erkennt miniOrange SAML SSO und validiert Version ≤ 5.4.4
  • SP-Metadaten-Ermittlung — extrahiert Entity-ID und ACS-URL aus ?option=mosaml_metadata
  • Umfassende Benutzerenumeration:
    • WP-REST-API (/wp-json/wp/v2/users)
    • REST-Abfragen pro ID (IDs 1–10)
    • Autor-Archiv-Weiterleitungen (/?author=N)
    • HTML-Body-Musterabgleich
    • Domainbasierter Fallback + gängige Admin-Namen
  • IdP-Issuer-Ermittlung — folgt ?option=saml_user_login-Weiterleitungen und extrahiert IdP-Basis-URLs
  • SAMLResponse-Fälschungs-Engine:
    • Korrekte Exclusive-C14N-Kanonisierung via lxml
    • Korrekte Digest-Berechnung (SHA-1/SHA-256/SHA-384/SHA-512)
    • Injektion des Signature-Elements nach </Issuer> gemäß SAML-Spezifikation
    • 12+ fehlerhafte Signatur-Payloads, die darauf ausgelegt sind, openssl_verify() = -1 auszulösen
    • Iteriert über Benutzer × Issuer × Algorithmen × Signaturen × Audience-Flags × SP-Entitäts-IDs
  • Sitzungsprüfung — prüft nach jedem Versuch auf wordpress_logged_in_*-Cookie
  • Admin-Rollenbestätigung — prüft Zugriff auf /wp-admin/, /wp-admin/users.php, /wp-admin/plugins.php
  • Profil-Extraktion — liest Benutzername und E-Mail aus /wp-admin/profile.php
  • 4 Shell-Upload-Methoden bei bestehender Admin-Sitzung:
    • M1 — Plugin-ZIP-Upload via plugin-install.php
    • M2 — REST-API-Plugin-Upload via /wp-json/wp/v2/plugins
    • M3 — Dateischreiben über Theme-/Plugin-Editor
    • M4 — Asynchroner Media-Upload
  • Shell-Ausführungsprüfung — bestätigt Nx-zD-Signatur im Antworttext
  • Diagnose-Engine — klassifiziert Fehlerursachen (DIGEST_FAIL, ISSUER, AUDIENCE, TIME usw.)
  • Debug-JSON-Ausgabe — vollständiges Diagnoseprotokoll pro Ziel zur Analyse

Anforderungen

Python >= 3.8
pip install requests lxml

lxml ist erforderlich für die korrekte Exclusive-C14N-Kanonisierung der SAML-Assertion.


Verwendung

python CVE-2026-15981.py

Sie werden zu Folgendem aufgefordert:

AbfrageBeschreibungStandard
ZieldateiPfad zu einer Textdatei mit einem Ziel pro Zeilelist.txt
ThreadsAnzahl der parallelen Worker (1–100)5

Format der Zieldatei

https://example.com
http://target.org
subdomain.example.net
192.168.1.100
https://example.com/wordpress

Eine URL pro Zeile. HTTP wird standardmäßig verwendet, wenn kein Schema angegeben ist.


Ausgabe

Terminal

  ███████╗███╗   ███╗███████╗
  ██╔════╝████╗ ████║██╔════╝
  ███████╗██╔████╔██║███████╗
  ╚════██║██║╚██╔╝██║╚════██║
  ███████║██║ ╚═╝ ██║███████║
  ╚══════╝╚═╝     ╚═╝╚══════╝
   ╔══════════════════════════════════════════════════════════╗
   ║  miniOrange SAML SSO <= 5.4.4                           ║
   ║  openssl_verify() -1 Bypass -> Admin Session            ║
   ╚══════════════════════════════════════════════════════════╝
  By: Nxploited ( Khaled Alenazi ) - Nxploited ZeroDay Hub
  T.m @Kxploit

Jedes Ziel durchläuft 7 beschriftete Phasen:

  ============================================================
    target.com
  ============================================================
  [1] WordPress
      confirmed
  [2] SAML plugin
      version: 5.4.4
      miniOrange SAML detected
  [3] SP metadata
      metadata entityID: https://target.com/...
      metadata ACS: https://target.com/
  [4] Users
      REST: admin (id=1)
      REST: editor (id=2)
      author/3: johndoe
      4 found: ['admin', 'editor', 'johndoe', 'target']
  [5] Issuers
      SSO redirect found
      3 candidates
  [6] Exploit
      COOKIE! #14 user=admin 0xFF*256/rsa-sha256
        wordpress_logged_in_abc123=admin%7C1753...
        wp-admin accessible
          user=admin  [email protected]
          users.php -> Admin
  [7] Shell upload
      M1: plugin uploaded
      SHELL (M1-plugin): https://target.com/wp-content/plugins/nxproof/Nx.php
        -> Nx-zD Linux target 6.1.0 x86_64 uid=33(www-data) ...
Tool herunterladen