Skip to content
KitploitKITPLOIT
OutilsBlog
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
DPAT — Outil d'audit de mots de passe de domaine pour testeurs d'intrusion | Kitploit
Outils/GitHubGitHub/clr2of8/dpat
Cassage de Mots de PasseAnalyse des VulnérabilitésTests d'Intrusion
GitHubclr2of8/dpat

DPAT

Outil d'audit de mots de passe de domaine pour testeurs d'intrusion

Voir le dépôt
1.1k166il y a 7 moisVérifié par Kitploit

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

Icône DPAT Outil d'audit des mots de passe de domaine (DPAT)

DPAT est un outil de sécurité basé sur Python qui analyse les hachages de mots de passe extraits des contrôleurs de domaine Active Directory. Il génère des rapports HTML complets montrant les statistiques d'utilisation des mots de passe, les violations de la politique et les informations de sécurité à partir des vidages NTDS et des résultats de craquage de mots de passe.

Exemples de rapports

Résumé DPAT

Statistiques de groupe

Graphiques

Fonctionnalités

  • Analyse complète des mots de passe : Analyse des distributions de longueur de mot de passe, des modèles de réutilisation et des violations de la politique
  • Rapports HTML interactifs : Génération de rapports HTML détaillés et cliquables avec capacités d'exploration
  • Prise en charge de l'historique des mots de passe : Analyse des données d'historique des mots de passe lorsqu'elles sont disponibles
  • Analyse basée sur les groupes : Inclusion de statistiques d'appartenance à un groupe pour les comptes privilégiés
  • Analyse des comptes Kerberoastable : Identification et analyse des comptes de service Kerberoastable craqués
  • Craquage des hachages LM : Tentative automatique de craquage des hachages NT à partir des hachages LM partiellement craqués
  • Assainissement des données : Option pour assainir les données sensibles dans les rapports en vue de leur partage
  • Formats d'entrée multiples : Prise en charge de Hashcat, John the Ripper et d'autres outils de craquage de mots de passe

Configuration requise

  • Python 3.8 ou supérieur
  • pycryptodome (pour la prise en charge du hachage MD4)

Installation

Installation de base

Installer les dépendances principales :

root@kitploit:~
pip install -r requirements.txt

Pour le développement et les tests :

root@kitploit:~
pip install -r requirements-dev.txt

Installation manuelle

Si vous préférez installer les dépendances individuellement :

root@kitploit:~
pip install pycryptodome

Utilisation de Poetry

root@kitploit:~
poetry install

Démarrage rapide

  1. Extraire les données NTDS de votre contrôleur de domaine à l'aide de secretsdump.py
  2. Craquer les mots de passe à l'aide de Hashcat, John the Ripper ou d'outils similaires
  3. Exécuter DPAT pour générer le rapport d'analyse
root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8

Utilisation

Commande de base

root@kitploit:~
python dpat.py -n <fichier_ntds> -c <fichier_craque> -p <longueur_min_mot_de_passe>

Paramètres obligatoires

  • -n, --ntdsfile : Fichier NTDS (sortie de secretsdump.py)
  • -c, --crackfile : Fichier de sortie de craquage de mots de passe (hashcat.potfile, john.pot, etc.)
  • -p, --minpasslen : Longueur minimale du mot de passe issue de la politique du domaine

Paramètres optionnels

  • -o, --outputfile : Nom du fichier du rapport HTML (par défaut : _DomainPasswordAuditReport.html)
  • -d, --reportdirectory : Répertoire de sortie (par défaut : "DPAT Report")
  • -s, --sanitize : Assainir les mots de passe et les hachages dans les rapports
  • -g, --groupsdirectory : Répertoire contenant les fichiers d'appartenance à un groupe
  • -m, --machineaccts : Inclure les comptes machine dans l'analyse
  • -k, --krbtgt : Inclure le compte krbtgt dans l'analyse
  • -kz, --kerbfile : Fichier contenant les comptes Kerberoastable
  • -w, --writedb : Écrire la base de données SQLite sur le disque pour inspection
  • --no-prompt : Ignorer l'invite du navigateur (utile pour l'automatisation)
  • -dbg, --debug : Activer la sortie de débogage

Exemples de commandes

Analyse de base :

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8

Avec analyse de groupe :

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8 -g /chemin/vers/groupes

Rapport assaini :

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8 -s

Avec comptes Kerberoastable :

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8 -kz kerberoastable.txt

Formats de fichiers d'entrée

Format du fichier NTDS

Le fichier NTDS doit être au format produit par secretsdump.py :

root@kitploit:~
domaine\nom_utilisateur:RID:lmhash:nthash:::

Formats des fichiers de mots de passe craqués

Format Hashcat :

root@kitploit:~
nthash:mot_de_passe
lmhash:mot_de_passe

Format John the Ripper :

root@kitploit:~
$NT$nthash:mot_de_passe
$LM$lmhash:mot_de_passe

Mots de passe encodés en hexadécimal :

root@kitploit:~
nthash:$HEX[68656c6c6f]

Format des fichiers de groupe

Les fichiers d'appartenance à un groupe doivent contenir un nom d'utilisateur par ligne :

root@kitploit:~
domaine\nom_utilisateur

Extraction des données

Étape 1 : Extraire les données NTDS

Sur un contrôleur de domaine, créez une sauvegarde IFM (Install From Media) :

root@kitploit:~
ntdsutil "ac in ntds" "ifm" "cr fu c:\temp" q q

Ceci crée :

  • c:\temp\Active Directory\ntds.dit
  • c:\temp\registry\SYSTEM

Étape 2 : Convertir au format DPAT

Utilisez secretsdump.py pour convertir la sauvegarde :

root@kitploit:~
secretsdump.py -system registry/SYSTEM -ntds "Active Directory/ntds.dit" LOCAL -outputfile customer

Pour l'historique des mots de passe (si disponible) :

root@kitploit:~
secretsdump.py -system registry/SYSTEM -ntds "Active Directory/ntds.dit" LOCAL -outputfile customer -history

Étape 3 : Craquer les mots de passe

Avec Hashcat :

root@kitploit:~
hashcat -m 1000 customer.ntds /chemin/vers/wordlist

Avec John the Ripper :

root@kitploit:~
john --format=NT customer.ntds

Sections du rapport

DPAT génère des rapports complets incluant :

  • Statistiques des mots de passe : Nombre total de hachages, hachages uniques, mots de passe craqués
  • Violations de la politique de mots de passe : Mots de passe plus courts que le minimum de la politique
  • Correspondances nom d'utilisateur/mot de passe : Comptes utilisant le nom d'utilisateur comme mot de passe
  • Analyse des hachages LM : Hachages LM non vides et statistiques de craquage
  • Distribution des longueurs de mots de passe : Analyse détaillée des longueurs avec exploration
  • Réutilisation des mots de passe : Mots de passe partagés entre plusieurs comptes
  • Meilleurs mots de passe : Mots de passe les plus couramment utilisés
  • Historique des mots de passe : Analyse historique des mots de passe (lorsqu'elle est disponible)
  • Statistiques de groupe : Analyse des groupes privilégiés (lorsque les fichiers de groupe sont fournis)
  • Comptes Kerberoastable : Analyse des comptes de service (lorsqu'ils sont fournis)

Exemple de données

Le dépôt contient des exemples de données dans le répertoire sample_data/ pour les tests :

  • customer.ntds : Exemple de fichier NTDS
  • oclHashcat.pot : Exemple de mots de passe craqués
  • history/ : Exemple de données avec historique de mots de passe

Test avec les données d'exemple :

root@kitploit:~
python dpat.py -n sample_data/customer.ntds -c sample_data/oclHashcat.pot -p 8

Fonctionnalités avancées

Analyse de groupe

Créez des fichiers d'appartenance à un groupe à l'aide de PowerShell :

root@kitploit:~
Get-NetGroupMember -Recurse -GroupName "Domain Admins" > "Domain Admins.txt"

Analyse des comptes Kerberoastable

Utilisez le script parse-kerberoastable.py de CypherHound pour générer des fichiers de comptes Kerberoastable pour une analyse améliorée.

Intégration avec CypherHound

Vous pouvez insérer des fichiers générés par CypherHound dans DPAT afin de fournir davantage de statistiques aux rapports DPAT. Actuellement, les statistiques supplémentaires sont :

  • Statistiques de craquage de groupe pour chaque groupe d'un domaine donné
  • Comptes Kerberoastable craqués

Si vous souhaitez l'utiliser pour fournir ces statistiques supplémentaires, vous devrez utiliser les scripts suivants :

  • parse-memberships.py. Passez le répertoire de sortie à DPAT avec l'option -g.
  • parse-kerberoastable.py. Passez le fichier de sortie à DPAT avec l'option -kz.

Ce sont des scripts simples dont l'utilisation est liée ci-dessus et leur utilisation devrait être simple.

Assainissement des données

Utilisez l'option -s pour créer des rapports assainis adaptés au partage :

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8 -s

Dépannage

Problèmes courants

"No module named 'distutils'"

  • Ceci est attendu sous Python 3.12+. DPAT gère cela automatiquement.

Rapports vides

  • Vérifiez que le format de votre fichier NTDS correspond au format attendu
  • Vérifiez que votre fichier de mots de passe craqués contient des hachages correspondants
  • Assurez-vous que le paramètre de longueur minimale du mot de passe est correct

Liens de détails manquants

  • Certaines sections du rapport peuvent ne pas avoir de pages de détails si aucune donnée n'est trouvée
  • Ce comportement est normal pour les catégories vides

Mode débogage

Activez la sortie de débogage pour le dépannage :

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8 -dbg

Tests

Exécutez la suite de tests :

root@kitploit:~
python -m unittest tests.unit.test_core -v
python -m unittest tests.integration.test_integration -v

Contribution

  1. Forkez le dépôt
  2. Créez une branche de fonctionnalité
  3. Faites vos modifications
  4. Ajoutez des tests pour les nouvelles fonctionnalités
  5. Soumettez une pull request

Licence

Ce projet est sous licence MIT - voir le fichier LICENSE pour les détails.

Crédits

  • Carrie Roberts - Auteur original
  • Dylan Evans - Contributeur

Sponsorisé à l'origine par :

Black Hills Information Security

Support

Pour les problèmes, questions ou contributions, veuillez utiliser le traqueur de problèmes GitHub.

Télécharger l’outil