
CredsHunter - Scripts de chasse aux identifiants pour les systèmes d'exploitation Windows et Linux
credshunter est un chercheur d'identifiants en lecture seule pour la post-exploitation autorisée. Il parcourt une machine une seule fois et remonte les secrets que vous pouvez réellement réutiliser — mots de passe, clés, hashs et fichiers d'identifiants — tout en restant discret sur les jetons cloud / SaaS qui n'ajoutent que du bruit.
Deux jumeaux, un même comportement : credshunter.sh pour Linux, credshunter.ps1 pour Windows.
Un entonnoir en cinq étapes, qui passe de là où vivent les identifiants à ce qui se trouve dans les fichiers. Chaque étape affiche ses résultats dès qu'elle se termine.
Stage 1 OS credential stores registry · GPP · histories · vaults · keys · other
Stage 2 Confirmed containers .kdbx · .ppk · .pfx · .keytab · other
Stage 3 High-value file types keys · .env · backups · DBs · captures · other
Stage 4 Suspicious filenames *password* · *secret* · *credential*
Stage 5 Content scan 70+ tuned regexes, one pass per file
Les étapes 1 et 5 font le gros du travail ; les étapes 2 à 4 sont des passes rapides sur les noms de fichiers / extensions. Chaque résultat passe un filtre anti-faux positifs avant de vous parvenir.
# Linux — full sweep, log to file
./credshunter.sh -p / -o loot.txt
# Targeted, skip the slow content scan
./credshunter.sh -p /var/www -p /home --no-stage5
# Windows — elevated sweep of C:\
.\credshunter.ps1 -Path C:\ -OutputFile loot.txt
# Web / DB box: also scan SQL & CSV dumps
.\credshunter.ps1 -Path D:\ -IncludeData
Conçu pour les pipes — ajoutez --no-color / -NoColor et grep sur un niveau.
Les résultats sont regroupés en cinq niveaux, du plus fort au plus discret.
Le code de sortie est 1 dès qu'un résultat tombe dans CRITICAL / HIGH / KEY — pratique pour l'intégration continue :
./credshunter.sh -p /etc && echo clean.
Les motifs et les listes de types de fichiers se trouvent dans des tableaux clairement étiquetés en haut de chaque script — modifiez un seul endroit, rien d'autre n'est nécessaire.
Est-ce que ça change quelque chose sur l'hôte ? Non. Il écrit uniquement dans le fichier journal que vous choisissez, ne touche jamais au réseau et se termine proprement sur Ctrl-C.
Pourquoi ignorer les jetons AWS / GitHub / Slack ? Par conception — ils aident rarement aux déplacements dans le réseau et sont la première source de faux positifs. Les fichiers d'identifiants locaux du CLI cloud sont toujours répertoriés.
L'étape 5 semble lente, ou un mot de passe a été manqué.
Les journaux verbeux sont le coût habituel — ils sont limités par la limite de taille. Réduisez la portée avec -p, ignorez l'analyse de contenu avec --no-stage5, et confirmez que la cible ne dépasse pas la limite de taille, ne se trouve pas dans un chemin exclu, ou n'a pas une extension en dehors de l'ensemble de l'étape 5 (utilisez -All pour en être sûr).
Consultez le Document Wiki pour plus d'informations sur le projet.
N'hésitez pas à contribuer au projet !
| Tag | Signification |
|---|
[CRITICAL] | Conteneur d'identifiants confirmé |
[HIGH] | Mot de passe réutilisable · hash · cpassword GPP |
[KEY] | Clé privée ou ruche SAM / SYSTEM lisible |
[INTEREST] | Fichier à forte valeur qui mérite un coup d'œil |
[NAME] | Nom de fichier suspect — indice à examiner |
| Vous voulez… | Faites ceci |
|---|
| Limiter la portée | -p / -Path pour inclure, -x / -ExcludePath pour exclure |
| Analyser chaque fichier | -a / -All |
| Ajouter les dumps SQL / CSV | -IncludeData (PowerShell) |
| Changer la limite de taille | -m N / -MaxFileSizeMB N, ou --no-size-limit / -NoSizeLimit |
| Ignorer une étape | --no-stageN / -NoStageN |