Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
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-2024-52005-poc — Preuve de concept pour CVE-2024-52005 : injection de séquence d'échappement ANSI dans Git. Démontre des revendications VEX 'not_affected' incorrectes dans des images de conteneurs durcies. | Kitploit
Outils/GitHubGitHub/andrewd-cg/cve-2024-52005-poc
Sécurité des ConteneursAnalyse des VulnérabilitésExploitationTests d'IntrusionIngénierie SocialeSécurité de la Chaîne LogistiqueApprentissage et Éducation
GitHub

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
andrewd-cg/cve-2024-52005-poc

cve-2024-52005-poc

Preuve de concept pour CVE-2024-52005 : injection de séquence d'échappement ANSI dans Git. Démontre des revendications VEX 'not_affected' incorrectes dans des images de conteneurs durcies.

Voir le dépôt
17il y a 9 moisPas encore vérifié

CVE-2024-52005 : Injection de séquences d'échappement ANSI dans Git

Présentation

Ce dépôt contient une preuve de concept (PoC) démontrant la CVE-2024-52005, une vulnérabilité dans Git qui permet l'injection de séquences d'échappement ANSI via le canal sideband lors des opérations Git.

CVE-2024-52005 est une vulnérabilité de Haute sévérité (CVSS 7.5) affectant les versions de Git antérieures à 2.48.1, 2.47.3, 2.46.5, 2.45.4 et 2.44.3.

Le problème

Cette PoC a été créée pour démontrer que certaines images de conteneurs durcies indiquent à tort un statut « not_affected » dans leurs documents VEX (Vulnerability Exploitability eXchange), bien qu'elles embarquent des versions vulnérables de Git.

Impact réel

La vulnérabilité permet aux attaquants de :

  • Cacher des commandes malveillantes dans la sortie de Git à l'aide de codes ANSI invisibles
  • Falsifier les résultats de scans de sécurité dans les pipelines CI/CD
  • Ingénierie sociale envers les utilisateurs avec de faux messages d'erreur et alertes de sécurité
  • Empoisonner les journaux de compilation pour faire passer du code malveillant comme des builds réussis
  • Manipuler l'affichage du terminal lors d'opérations critiques

Démarrage rapide

Option 1 : Test avec Docker (sans clone local nécessaire)

Testez directement avec le conteneur DHI ArgoCD en utilisant ce dépôt GitHub :

docker run --rm -it dhi.io/argocd:3 sh -c '
  git clone https://github.com/andrewd-cg/cve-2024-52005-poc.git /tmp/poc &&
  cd /tmp/poc &&
  sh docker-test.sh
'

Cette commande :

  1. Clone la PoC depuis GitHub dans le conteneur
  2. Exécute le script de test à l'intérieur du conteneur
  3. Montre si les séquences d'échappement ANSI passent

Si vous voyez ^[[31m ou ^[[32m dans la sortie, la vulnérabilité est confirmée.

Option 2 : Test local (une seule commande)

Clonez le dépôt et exécutez le test localement :

git clone https://github.com/andrewd-cg/cve-2024-52005-poc.git
cd cve-2024-52005-poc
./test_ansi_injection.sh

Ce script va :

  1. Créer un dépôt Git avec un hook malveillant contenant des codes ANSI
  2. Le cloner en utilisant une version vulnérable de Git
  3. Montrer si les séquences d'échappement ANSI passent

Utilisation du framework d'exploitation complet

# Créer un dépôt malveillant avec payload d'ingénierie sociale
./exploit_cve_2024_52005.py create social_engineering

# Tester contre un conteneur vulnérable
./exploit_cve_2024_52005.py test

# Voir les résultats
cat -v /tmp/cve-2024-52005-output.log

Contenu du dépôt

  • test_ansi_injection.sh - Script de test autonome simple
  • exploit_cve_2024_52005.py - Framework d'exploitation complet avec 8 payloads d'attaque
  • QUICKSTART.md - Guide de démarrage rapide avec exemples
  • TECHNICAL_DETAILS.md - Analyse technique complète et guide d'exploitation

Scénarios d'attaque

1. Attaque sur la chaîne d'approvisionnement via ArgoCD

Attaquant crée un dépôt GitHub public → ArgoCD le clone automatiquement →
Le hook Git injecte des codes ANSI → Cache une porte dérobée dans les journaux de déploiement

2. Empoisonnement du pipeline CI/CD

Développeur clone le dépôt → Le hook malveillant s'exécute → Injecte un faux « Build PASSÉ » →
Les échecs réels sont cachés → Code vulnérable déployé en production

3. Contournement des outils de sécurité

Scanner de sécurité clone le dépôt → Le hook injecte des codes ANSI →
Affiche « 0 vulnérabilités » → Les vraies vulnérabilités sont cachées →
Le code malveillant passe la revue

Techniques d'exploitation

Le framework inclut 8 payloads d'attaque pré-construits :

  1. fake_success - Afficher de faux messages de succès
  2. hide_command - Cacher des commandes malveillantes dans la sortie
  3. cursor_manipulation - Écraser les avertissements avec de faux succès
  4. social_engineering - Tromper les utilisateurs pour qu'ils exécutent le script de l'attaquant
  5. fake_vulnerability_scan - Cacher les vraies vulnérabilités
  6. progress_bar - Créer de faux indicateurs de progression
  7. urgent_warning - Créer une fausse urgence
  8. log_poisoning - Injecter de faux succès dans les journaux CI/CD

Pourquoi c'est important

De nombreuses images de conteneurs indiquent « not_affected » pour la CVE-2024-52005 avec la justification :

{
  "justification": "vulnerable_code_cannot_be_controlled_by_adversary"
}

Ceci est incorrect pour les conteneurs conçus pour cloner des dépôts non fiables :

  • ArgoCD clone des dépôts Git tiers
  • Les outils CI/CD traitent des dépôts externes
  • Les scanners de sécurité analysent du code non fiable

L'attaquant contrôle effectivement le chemin de code vulnérable via les hooks Git et les messages sideband.

Versions affectées

Versions de Git affectées par la CVE-2024-52005 :

  • Toutes les versions < 2.48.1
  • Toutes les versions < 2.47.3
  • Toutes les versions < 2.46.5
  • Toutes les versions < 2.45.4
  • Toutes les versions < 2.44.3

Atténuation

Pour les utilisateurs de Git

Mettez à jour vers une version corrigée :

# Vérifiez votre version
git --version

# Mise à jour via le gestionnaire de paquets
apt update && apt upgrade git  # Debian/Ubuntu
brew upgrade git               # macOS

Pour les mainteneurs d'images de conteneurs

  1. Mettez à jour Git dans vos images vers des versions corrigées
  2. Mettez à jour les documents VEX pour refléter correctement le statut de la vulnérabilité
  3. Testez vos images en utilisant cette PoC

Solutions de contournement temporaires

Si vous ne pouvez pas mettre à jour immédiatement :

  1. Clonez uniquement des dépôts provenant de sources de confiance
  2. Examinez la sortie Git via des journaux nettoyés
  3. Exécutez les opérations Git dans des environnements sandboxés

Tester votre environnement

# Tester n'importe quelle image de conteneur
docker run --rm -v $(pwd)/ansi-test-repo:/repo:ro VOTRE_IMAGE:TAG \
  sh -c 'git clone /repo /tmp/test 2>&1' | cat -v

# Cherchez des codes ANSI comme ^[[31m dans la sortie

Références

  • CVE-2024-52005 sur NVD
  • Avis de sécurité Git
  • Spécification OpenVEX

Divulgation responsable

Cette PoC a été créée pour :

  • La recherche et l'éducation en sécurité
  • Démontrer des évaluations incorrectes de vulnérabilités
  • Aider les organisations à évaluer correctement leur risque
  • Encourager une documentation VEX précise

Pour les tests de sécurité autorisés uniquement. N'utilisez pas ceci contre des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas l'autorisation de tester.

Licence

Licence MIT - Voir le fichier LICENSE pour les détails

Auteur

Créé dans le cadre de la recherche sur la sécurité des images de conteneurs, démontrant l'importance d'une divulgation et d'une évaluation précises des vulnérabilités.

Contribution

Vous avez trouvé un problème ou des améliorations ? Les pull requests sont les bienvenues !

  • Signalez les évaluations VEX incorrectes que vous trouvez
  • Ajoutez de nouvelles techniques d'exploitation
  • Améliorez les méthodes de détection
  • Enrichissez la documentation
Télécharger l’outil