Git
Tip
Apprenez et pratiquez le hacking AWS :
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP :HackTricks Training GCP Red Team Expert (GRTE)
Apprenez et pratiquez le hacking Azure :
HackTricks Training Azure Red Team Expert (AzRTE)
Soutenir HackTricks
- Vérifiez les plans d’abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez-nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PR au HackTricks et HackTricks Cloud dépôts github.
Pour dump un dossier .git depuis une URL utilisez https://github.com/arthaud/git-dumper
Utilisez https://www.gitkraken.com/ pour inspecter le contenu
Si un répertoire .git est trouvé dans une application web, vous pouvez télécharger tout le contenu en utilisant wget -r http://web.com/.git. Ensuite, vous pouvez voir les changements effectués en utilisant git diff.
Les outils : Git-Money, DVCS-Pillage et GitTools peuvent être utilisés pour récupérer le contenu d’un répertoire git.
L’outil https://github.com/cve-search/git-vuln-finder peut être utilisé pour rechercher des CVE et des messages de vulnérabilité de sécurité dans les messages de commit.
L’outil https://github.com/michenriksen/gitrob recherche des données sensibles dans les dépôts d’une organisation et de ses employés.
Repo security scanner est un outil en ligne de commande conçu dans un seul but : vous aider à découvrir des secrets GitHub que des développeurs ont accidentellement exposés en poussant des données sensibles. Et comme les autres, il vous aidera à trouver des mots de passe, clés privées, noms d’utilisateur, tokens et plus encore.
Ici vous pouvez trouver une étude sur github dorks : https://securitytrails.com/blog/github-dorks
Faster /.git dumping & dirlisting bypass (2024–2026)
- holly-hacker/git-dumper est une réécriture 2024 du dumper classique GitTools avec récupération en parallèle (>10x plus rapide). Exemple :
python3 git-dumper.py https://victim/.git/ out && cd out && git checkout -- . - Ebryx/GitDump brute-forces object names from
.git/index,packed-refs, etc. to recover repos even when directory traversal is disabled:python3 git-dump.py https://victim/.git/ dump && cd dump && git checkout -- .
Triage post-dump rapide
cd dumpdir
# reconstruct working tree
git checkout -- .
# show branch/commit map
git log --graph --oneline --decorate --all
# list suspicious config/remotes/hooks
git config -l
ls .git/hooks
Recherche de secrets/credentials (outillage actuel)
- TruffleHog v3+: entropy+regex avec parcours automatique de l’historique Git.
trufflehog git file://$PWD --only-verified --json > secrets.json - Gitleaks (v8+): jeu de règles regex rapide, peut scanner l’arborescence unpacked ou l’historique complet.
gitleaks detect -v --source . --report-format json --report-path gitleaks.json
RCE côté serveur de l’intégration Git via override de hooksPath
Les applications web modernes qui intègrent des repos Git réécrivent parfois .git/config en utilisant des identifiants contrôlés par l’utilisateur. Si ces identifiants sont concaténés dans hooksPath, vous pouvez rediriger les hooks Git vers un répertoire contrôlé par un attaquant et exécuter du code arbitraire lorsque le serveur exécute le Git natif (p.ex., git commit). Étapes clés :
- Path traversal in
hooksPath: si un nom de repo/nom de dépendance est copié danshooksPath, injectez../../..pour sortir du répertoire hooks prévu et pointer vers un emplacement où l’on peut écrire. Ceci est effectivement un path traversal dans la config Git. - Force the target directory to exist: quand l’application effectue des clones côté serveur, abusez des contrôles de destination du clone (p.ex., un paramètre
ref/branch/path) pour le faire cloner dans../../git_hooksou un chemin de traversal similaire afin que les dossiers intermédiaires soient créés pour vous. - Ship executable hooks: définissez le bit exécutable dans les métadonnées Git afin que chaque clone écrive le hook avec le mode
100755:
git update-index --chmod=+x pre-commit
Ajoutez votre payload (reverse shell, file dropper, etc.) à pre-commit/post-commit dans ce repo.
- Find a native Git code path: des bibliothèques comme JGit ignorent les hooks. Cherchez des flux/flags de déploiement qui retombent sur le Git système (p.ex., forcer des paramètres deploy-with-attached-repo) afin que les hooks soient réellement exécutés.
- Race the config rewrite: si l’app assainit
.git/configjuste avant d’exécuter Git, spammez l’endpoint qui écrit votrehooksPathmalveillant tout en déclenchant l’action Git pour gagner une race condition et faire exécuter votre hook.
Références
- holly-hacker/git-dumper – parallel fast /.git dumper
- Ebryx/GitDump
- LookOut: RCE and internal access on Looker (Tenable)
Tip
Apprenez et pratiquez le hacking AWS :
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP :HackTricks Training GCP Red Team Expert (GRTE)
Apprenez et pratiquez le hacking Azure :
HackTricks Training Azure Red Team Expert (AzRTE)
Soutenir HackTricks
- Vérifiez les plans d’abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez-nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PR au HackTricks et HackTricks Cloud dépôts github.


