
Outil d'audit automatisé des identifiants NebulousAD.
À partir du 14 avril, NuID n'hébergera plus l'API NebulousAD avec laquelle ce code communique. En tant que petite équipe de développeurs, nous avons constaté qu'il n'est pas réalisable de supporter, surveiller et développer activement à la fois le portail NebulousAD et notre Portail Développeur d'authentification.
Le code de vérification des mots de passe Active Directory par rapport à un ensemble d'identifiants compromis dans des fuites publiques continuera à vivre dans ce dépôt, et nous intégrerons tous les excellents retours que nous avons reçus via notre expérience avec NebAD pour fournir un service de liste noire de mots de passe fluide aux côtés de notre API d'authentification dans les mois à venir. Alors restez à l'écoute !
Nous apprécions votre implication et vos retours passés, et nous nous réjouissons de vous entendre à l'avenir. N'hésitez pas à nous contacter pour toute question concernant NebAD, NuID ou tout sujet lié à l'identité numérique.
À bientôt ! – l'équipe NuID
NebulousAD est un outil d'audit des mots de passe des utilisateurs Active Directory par rapport à une base de données de mots de passe compromis trouvés lors de fuites de données. L'outil a été créé pour aider les administrateurs système Windows à trouver et, éventuellement, à corriger l'utilisation de mots de passe compromis. Cette approche est recommandée par le NIST 800-63B et peut aider à se protéger contre les attaques par pulvérisation d'identifiants et par bourrage d'identifiants.
La base de données Nebulous contient actuellement plus de 2,5 milliards de hachages uniques de mots de passe compromis.
Par défaut, NebulousAD utilise le modèle de k-anonymat pour préserver la confidentialité et la sécurité des mots de passe vérifiés par rapport à l'API. Seuls les cinq premiers caractères d'un hachage SHA-2 sont envoyés à l'API. Vous pouvez en savoir plus sur le k-anonymat ici.
L'outil a été initialement publié à BSides Las Vegas 2019. Une vidéo de la présentation BSides est disponible ici.
Fonctionnalités à venir :
Téléchargez simplement la version précompilée (ne nécessite pas d'interpréteur Python) ou compilez à partir des sources :
Cet outil nécessite Python 2.7 (pour l'instant).
Exécutez git clone https://github.com/NuID/nebulousAD.git
Ensuite, installez avec python setup.py install
Puis initialisez votre clé. Vous pouvez obtenir votre clé en visitant : https://nebulous.nuid.io/#/register Une fois inscrit, cliquez sur le bouton pour générer votre clé API et copiez-la.
Vous pouvez maintenant les initialiser comme ceci : nebulousAD -init-key <api_key>
Vous pouvez maintenant exécuter l'outil. S'il ne trouve pas votre clé API, vous devrez peut-être redémarrer votre session de terminal. La clé API est stockée dans une variable d'environnement. Se déconnecter et se reconnecter fonctionne également.
Vous pouvez télécharger le fichier nebulousAD.exe pour une utilisation sans interpréteur ici. Vous pouvez également compiler l'outil vous-même à partir des sources :
pip install pyinstallergit clone https://github.com/NuID/nebulousAD.gitcd .\nebulousAD\nebulousADpyinstaller --onefile nebulousAD.pyPyinstaller affichera l'emplacement du binaire compilé :

Une commande exemple pour vider tous les hachages et les vérifier par rapport à l'API :
nebulousAD.exe -v -snap --check
NuID Credential Auditing tool.
optional arguments:
-h, --help show this help message and exit
-ntds NTDS NTDS.DIT file to parse
-system SYSTEM SYSTEM registry hive to parse
-csv CSV Output results to CSV file at this PATH.
-json JSON Output results to JSON file at this PATH
-init-key INIT_KEY Install your Nu_I.D. API key to the current users
PATH.
-c, --check Check against Nu_I.D. API for compromised
credentials.
-dk, --disable-k-anon
Disable k-anon hash searches against the API (speeds
up the audit).
-snap Use ntdsutil.exe to snapshot the system registry
hive and ntds.dit file to <systemDrive>:\Program
Files\NuID\
-shred When performing delete operations on files, use a 7
pass overwrite with sdelete.exe. Download here:
https://docs.microsoft.com/en-
us/sysinternals/downloads/sdelete
-no-backup Do not backup the existing snapshots, just overwrite
them instead.
-clean-old-snaps CLEAN_OLD_SNAPS
Clean backups older than N days.
display options:
-user-status Display whether or not the user is disabled
-pwd-last-set Shows pwdLastSet attribute for each account found
within the NTDS.DIT database.
-history Dump NTLM hash history of the users.
-v Enable verbose mode.
Désactive la fonction de vérification de hachage par k-anonymat. Cela permet d'accélérer le temps de recherche, mais entraîne l'envoi du hachage SHA-256(NTLM) complet à l'API. Nous ne journalisons ni ne stockons les hachages envoyés à l'API.
Le paramètre -snap va automatiquement prendre un instantané d'Active Directory (en utilisant ntdsutil.exe), et extraire le fichier ntds.dit ainsi que la ruche du registre SYSTEM, si vous avez les privilèges nécessaires.
Vous pouvez effectuer cette extraction manuellement en utilisant diverses méthodes ou l'outil ntdsutil.exe.
Si vous l'extrayez manuellement, vous pouvez pointer vers les fichiers avec -system chemin\vers\SYSTEM et -ntds chemin\vers\ntds.dit. Cela est utile si vous souhaitez auditer d'anciens instantanés.
Cela nécessite une clé API depuis https://nebulous.nuid.io/#/register. Une fois que vous l'avez et que vous l'avez installée avec -init-key, vous pouvez vérifier les hachages par rapport à l'API NuID.
Si vous avez spécifié -history, il vérifiera également l'historique des mots de passe de chaque compte pour voir si un mot de passe précédemment utilisé a été compromis.
Ajoute une sortie indiquant si le compte est Activé ou Désactivé dans Active Directory.
Ajoute une sortie indiquant la date de dernière modification du mot de passe du compte. Cela peut être utile pour détecter les violations de la politique de sécurité des comptes qui ne sont pas réinitialisés automatiquement comme défini dans la GPO, par exemple les comptes de service.
Auditez ou extrayez également l'historique des mots de passe stockés du compte.