
NebulousAD — инструмент автоматизированного аудита учётных данных.
Начиная с 14 апреля NuID больше не будет размещать API NebulousAD, с которым взаимодействует этот код. Будучи небольшой командой разработчиков, мы поняли, что не можем активно поддерживать, отслеживать и разрабатывать одновременно портал NebulousAD и наш Портал разработчика по аутентификации.
Код для проверки паролей Active Directory на предмет утечек из публичных баз скомпрометированных учётных данных продолжит жить в этом репозитории, и в ближайшие месяцы мы учтём все отличные отзывы, полученные во время работы с NebAD, чтобы предоставить бесшовный сервис чёрных списков паролей вместе с нашим API аутентификации. Так что следите за обновлениями!
Мы ценим ваше участие и отзывы в прошлом и ждём от вас обращений в будущем. Если у вас есть вопросы о NebAD, NuID или любой теме, связанной с цифровой идентификацией, не стесняйтесь обращаться к нам.
До скорого! — команда NuID
NebulousAD — это инструмент для аудита паролей пользователей Active Directory на наличие в базе скомпрометированных паролей, найденных в утечках данных. Инструмент создан для помощи системным администраторам Windows в поиске и, при необходимости, устранении использования скомпрометированных паролей. Такой подход рекомендуется стандартом NIST 800-63B и может помочь защититься от атак с перебором учётных данных (credential spraying) и подстановкой учётных данных (credential stuffing).
База данных Nebulous в настоящее время содержит более 2,5 миллиардов уникальных хешей скомпрометированных паролей.
По умолчанию NebulousAD использует модель k-анонимности, чтобы сохранить конфиденциальность и безопасность паролей, проверяемых через API. В API отправляются только первые пять символов хеша SHA-2. Подробнее о k-анонимности можно прочитать здесь.
Инструмент был впервые представлен на BSides Las Vegas 2019. Видео презентации BSides доступно здесь.
Предстоящие функции:
Просто загрузите предварительно скомпилированный релиз (не требует интерпретатора Python) или соберите из исходного кода:
Этот инструмент требует Python2.7 (пока что).
Запустите git clone https://github.com/NuID/nebulousAD.git
Затем установите с помощью python setup.py install
После этого инициализируйте свой ключ. Получить ключ можно, посетив: https://nebulous.nuid.io/#/register После регистрации нажмите кнопку для генерации ключа API и скопируйте его.
Теперь вы можете инициализировать ключ так: nebulousAD -init-key <api_key>
Теперь вы можете запускать инструмент. Если он не может найти ваш ключ API, возможно, потребуется перезапустить сеанс терминала. Ключ API хранится в переменной окружения. Выход и повторный вход также работают.
Вы можете загрузить файл nebulousAD.exe для использования без интерпретатора здесь. Либо скомпилируйте инструмент самостоятельно из исходного кода:
pip install pyinstallergit clone https://github.com/NuID/nebulousAD.gitcd .\nebulousAD\nebulousADpyinstaller --onefile nebulousAD.pyPyinstaller выведет путь к скомпилированному бинарнику:

Пример команды для дампа всех хешей и проверки их через 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.
Отключает функцию проверки хеша с k-анонимностью. Это полезно для ускорения поиска, но при этом полный хеш SHA-256(NTLM) будет отправлен в API. Мы не логируем и не храним хеши, отправленные в API.
Параметр -snap автоматически создаёт снимок Active Directory (с помощью ntdsutil.exe) и извлекает файл ntds.dit, а также куст реестра SYSTEM, если у вас есть соответствующие привилегии. Вы можете извлечь их вручную любым другим способом или с помощью утилиты ntdsutil.exe.
При ручном извлечении вы можете указать пути к файлам с помощью -system path\to\SYSTEM и -ntds path\to\ntds.dit. Это полезно, если вы хотите проверить старые снимки.
Требуется ключ API с https://nebulous.nuid.io/#/register. После получения ключа и его установки с помощью -init-key вы можете проверять хеши через API NuID.
Если указан -history, будет также проверяться история паролей каждой учётной записи на предмет того, был ли ранее использованный пароль скомпрометирован.
Добавляет вывод, указывающий, включена (Enabled) или отключена (Disabled) учётная запись в Active Directory.
Добавляет вывод с датой последней смены пароля учётной записи. Это может быть полезно для выявления нарушений политики безопасности учётных записей, которые не сбрасываются автоматически в соответствии с GPO, например, сервисных учётных записей.
Также проверяет или выгружает историю паролей учётных записей.
Использует семипроходное перезаписывание DoD при уничтожении снимков. Для этого требуется наличие sdelete.exe в вашем PATH. Скачать можно здесь: https://docs.microsoft.com/en-us/sysinternals/downloads/sdelete
Просто загрузите его и поместите в каталог %SYSTEMDRIVE\Windows\System32\ или настройте переменную окружения.