
Exploit de preuve de concept pour CVE-2023-0264 (détournement de session Keycloak OIDC) avec un frontend pour la substitution de session_id et un agent qui détecte l'attaque.
Front statique qui exécute le flux OIDC (authorization code) contre un Keycloak
et expose le hook de détournement de session_id du PoC. Il est servi avec nginx sur le
port 5174 pour l'équipe.
cd vps/pocCVE0264
docker compose up -d --build
Il est accessible sur http://maquina:5174. Ouvrez le pare-feu du fournisseur pour le
5174/TCP (comme vous l'avez fait avec le 8443).
L'URL de Keycloak est injectée par l'environnement (elle n'est pas codée en dur dans le HTML) : modifiez
KEYCLOAK_URL/REALM/CLIENT_ID dans docker-compose.yml et redémarrez — sans reconstruire.
Dans le realm poc, client client1 (Admin Console → Clients → client1) :
http://maquina:5174/*
(sinon, Keycloak rejette la redirection de retour avec « Invalid parameter: redirect_uri »).http://maquina:5174
(sinon, le fetch vers l'endpoint /token échoue à cause du CORS et le login reste incomplet).Keycloak utilise un certificat auto-signé sur 8443. Chaque membre de l'équipe, la première
fois, doit ouvrir https://maquina:8443 dans son navigateur et accepter le
certificat une fois. Sinon, les appels du front vers Keycloak échouent silencieusement.
http://maquina:5174 → redirige vers le login de Keycloak.code, un prompt affiche le session_id actuel et permet de
le remplacer par celui d'une autre session (le cœur du PoC CVE-2023-0264).agente/) détecte et signale ce schéma.KEYCLOAK_URL dans le compose + up -d.