Retour aux articles • CLOUD • Mis à jour en 2026 • 6 min de lecture

Hashcat : Audit de Mots de Passe GPU

Évaluer la robustesse cryptographique des empreintes par accélération GPU et renforcer l'hygiène des identifiants à l'ère de l'IA.

Hashcat : Audit de Mots de Passe GPU

Introduction


Dans l’arsenal du testeur de pénétration, peu d’outils sont aussi redoutables que Hashcat. Reconnu comme l’outil de récupération de mots de passe le plus rapide, Hashcat exploite la puissance brute des processeurs graphiques (GPU) pour déchiffrer les hashes à une vitesse vertigineuse. Cet article vous guidera à travers son installation, ses concepts fondamentaux et des exemples pratiques pour l’utiliser de manière éthique et efficace.

Vue Macro : Qu’est-ce que Hashcat ?

Hashcat est un outil de récupération de mot de passe avancé. Contrairement aux outils traditionnels qui utilisent le CPU, Hashcat est conçu pour utiliser un ou plusieurs GPU. Les GPU, avec leurs milliers de cœurs, sont capables d’effectuer des milliards de calculs par seconde, ce qui les rend parfaits pour les tâches répétitives et parallèles comme le cassage de hash. C’est cette capacité qui permet à Hashcat de tester des milliards de combinaisons de mots de passe en quelques secondes.

Installation sur Ubuntu

Installer Hashcat est simple sur la plupart des distributions Linux.

sudo apt update
sudo apt install hashcat

Pour vous assurer que Hashcat reconnaît votre GPU, vous pouvez exécuter un benchmark :

hashcat -B

Vue Macro : Modes d’Attaque et Types de Hash

Le pouvoir de Hashcat réside dans sa flexibilité. Il supporte des centaines de types de hash (MD5, SHA-1, NTLM, WPA/WPA2, etc.) et plusieurs modes d’attaque :

  • Mode 0 (Straight): Attaque par dictionnaire simple. Chaque mot du dictionnaire est testé.
  • Mode 1 (Combination): Combine des mots de deux dictionnaires.
  • Mode 3 (Brute-force): Teste toutes les combinaisons possibles d’un jeu de caractères donné. C’est là que les “masques” entrent en jeu.
  • Mode 6 (Hybrid): Combine un dictionnaire avec une attaque par masque.

Chaque type de hash a un code numérique spécifique. Par exemple, MD5 est 0, SHA1 est 100, et WPA/WPA2 est 22000.

Exemples et Scénarios

La structure d’une commande Hashcat est généralement : hashcat -m <mode_hash> <fichier_hash> <dictionnaire/masque>

Scénario 1 : Casser un hash MD5 avec un dictionnaire

Supposons que nous ayons un fichier hashes.txt contenant le hash MD5 8743b52063cd84097a65d1633f5c74f5.

# -m 0 spécifie le mode MD5
# hashes.txt est notre fichier de hash
# rockyou.txt est un dictionnaire de mots de passe populaire
hashcat -m 0 hashes.txt /usr/share/wordlists/rockyou.txt
Animation exécution CLI dans le terminal

Hashcat testera chaque mot de passe dans rockyou.txt jusqu’à ce qu’il trouve une correspondance.

Scénario 2 : Attaque par Masque (Brute-force)

Imaginons que nous sachions que le mot de passe est un numéro de téléphone de 8 chiffres. Nous pouvons utiliser une attaque par masque.

  • ?d représente un chiffre (0-9).
  • Un masque de 8 chiffres serait ?d ?d ?d ?d ?d ?d ?d ?d.
# -a 3 spécifie l'attaque par masque
hashcat -m 0 -a 3 hashes.txt ?d ?d ?d ?d ?d ?d ?d ?d

Scénario 3 : Casser un handshake WPA/WPA2

C’est un cas d’usage très courant. Après avoir capturé un handshake (avec des outils comme hcxdumptool), vous pouvez utiliser Hashcat pour le casser.

# -m 22000 est le mode pour WPA-PBKDF2-PMKID+EAPOL
# handshake.hc22000 est le fichier contenant le hash du handshake
hashcat -m 22000 handshake.hc22000 /usr/share/wordlists/rockyou.txt

Cheatsheet Hashcat

Commande/OptionDescription
hashcat -BLance un benchmark pour tester la performance.
hashcat -IAffiche les informations sur les GPU détectés.
-m <num>Spécifie le mode de hash (ex: 0 pour MD5, 22000 pour WPA2).
-a <num>Spécifie le mode d’attaque (ex: 0 pour dictionnaire, 3 pour masque).
-o <fichier>Spécifie le fichier de sortie pour les mots de passe trouvés.
--showAffiche les mots de passe déjà cassés pour un fichier de hash.
?lMasque pour une lettre minuscule.
?uMasque pour une lettre majuscule.
?dMasque pour un chiffre.
?sMasque pour un symbole spécial.

Mise à jour 2026 : Outils Modernes d’Audit, d’Hygiène Cryptographique et Apport de l’IA

Face à l’accélération matérielle des GPU modernes et à l’émergence des modèles de langage, l’audit et la protection des identifiants ont profondément évolué. Voici les briques modernes qui complètent ou neutralisent ce type d’évaluation en entreprise et en Homelab :

1. Évaluation d’entropie réaliste et listes d’exclusion Zero-Trust

  • zxcvbn (zxcvbn-ts / zxcvbn-rs) : Remplace les règles d’expressions régulières rigides par un calcul d’entropie réel détectant les motifs humains (dates, suites de clavier azerty/qwerty, répétitions, substitutions classiques).
  • Have I Been Pwned (Pwned Passwords en k-Anonymity ou base locale) : Vérifie qu’un mot de passe choisi n’appartient pas aux centaines de millions d’empreintes déjà compromises, sans jamais transmettre le secret complet sur le réseau (uniquement les 5 premiers caractères du préfixe SHA-1 ou via un filtre de Bloom local).
  • Politiques de blocage contextuelles (banned-passwords.txt) : Intégrées nativement dans les fournisseurs d’identité modernes (Keycloak, Authelia, Authentik, OpenCloud/oCIS) pour interdire les termes liés au domaine ou à l’organisation.

2. Détection proactive des secrets exposés (Shift-Left & Rust)

  • Nosey Parker (Praetorian) : Scanner haute performance écrit en Rust (basé sur Vectorscan/Hyperscan) capable d’auditer des gigaoctets de dépôts Git, d’images conteneurisées et de journaux d’exécution à la recherche de secrets oubliés.
  • Gitleaks & TruffleHog v3 : Détection par entropie de Shannon et vérification active des jetons d’API dans les pipelines CI/CD et les hooks pre-commit avant tout envoi sur un dépôt distant.

3. Audit d’annuaire et posture IAM (Blue & Purple Team)

  • DSInternals : Audit défensif des bases d’annuaire Active Directory pour identifier les comptes partageant la même empreinte, les mots de passe obsolètes ou l’absence de chiffrement Kerberos AES.
  • PingCastle & PurpleKnight : Cartographie automatisée de la dette de sécurité Active Directory / Entra ID (comptes de service privilégiés, délégations, politiques de verrouillage).
  • BloodHound CE : Analyse par théorie des graphes des chemins d’exposition entre comptes et ressources critiques.

4. Ce que change l’IA (Modèles probabilistes, LLM locaux et défense comportementale)

  • Grammaires probabilistes et réseaux neuronaux (PCFG, OMEN, PassGAN / FLA) : En recherche et en audit interne, ces modèles apprennent la structure statistique des mots de passe humains (ex. Mot + Chiffres + Symbole) pour démontrer pourquoi une phrase de passe aléatoire (passphrase) résiste infiniment mieux qu’un mot de passe court complexe mais prévisible.
  • Génération de listes d’exclusion métier par LLM local (Ollama / Mistral) : Un LLM exécuté localement peut analyser la documentation publique d’une organisation pour générer automatiquement le dictionnaire des termes métiers à bannir dans la politique de mots de passe du SSO.
  • Détection comportementale des menaces d’identité (ITDR / CrowdSec + Loki) : Corrélation temps réel des journaux d’authentification OIDC/LDAP pour bloquer les tentatives lentes distribuées (password spraying) et les anomalies géographiques ou temporelles.

5. La parade cryptographique définitive : KDF Memory-Hard et Passkeys

  • Argon2id & scrypt : Contrairement aux fonctions rapides (MD5, SHA-1, NTLM) que les milliers de cœurs d’un GPU calculent en parallèle sans contrainte, Argon2id impose un coût mémoire (RAM) configurable par calcul. Cela sature le bus mémoire de la carte graphique et réduit drastiquement la vitesse d’évaluation hors-ligne.
  • Passkeys (FIDO2 / WebAuthn) : L’authentification par clé asymétrique liée au matériel (TPM, Secure Enclave, YubiKey) élimine le secret partagé : plus aucun hash de mot de passe n’étant stocké sur le serveur, le risque de cassage hors-ligne disparaît.

Conclusion

Hashcat est un outil incroyablement puissant pour évaluer la robustesse des mots de passe. Sa vitesse, grâce à l’accélération GPU, en fait un standard de l’industrie. Cependant, avec un grand pouvoir vient une grande responsabilité.

⚠️ Avertissement
Cet outil doit être utilisé uniquement à des fins légales et éthiques, comme les tests de pénétration autorisés. L’utilisation de Hashcat pour accéder à des systèmes sans autorisation est illégale.