Представьте, что вы проводите Red Teaming, и уже получили сетевой доступ к контроллеру домена. Для развития атаки можно посмотреть в сторону доменных учётных записей со слабыми паролями. Но как их выявить, не привлекая внимания санитаров специалистов SOC?
Вы можете точечно проверить отдельные дефолтные аккаунты, такие как test или it-admin. Однако устроить перебор всех возможных доменных пользователей не так просто. Можно попробовать преаутентификацию в Kerberos – но это слишком шумно, и вас точно засекут.
Есть менее заметный метод. Давайте обратимся к древнему интерфейсу MS-NRPC, используя уровень доступа RPC_C_AUTHN_LEVEL_NONE (то есть без авторизации). А затем вызовем функцию Opnum 34 (DsrGetDcNameEx2) – которая проводит проверку существования указанного аккаунта в домене. Скормив этой функции дефолтный список всевозможных имён, получим список существующих доменных аккаунтов. Обнаружить такую активность совсем непросто, поскольку она не оставляет какого-либо специального типа события в журнале безопасности Windows.
Дальше остаётся только устроить перебор паролей (password spraying) по полученному списку аккаунтов. Наверняка хоть кто-нибудь использовал P@$$w0rd или May_2024.
Более подробный анализ безопасности MSRPC-интерфейсов – в исследовании Хайдара Кабибо.
Автор исследования также написал утилиту для демонстрации описанных возможностей:
https://github.com/klsecservices/NauthNRPC
Вы можете точечно проверить отдельные дефолтные аккаунты, такие как test или it-admin. Однако устроить перебор всех возможных доменных пользователей не так просто. Можно попробовать преаутентификацию в Kerberos – но это слишком шумно, и вас точно засекут.
Есть менее заметный метод. Давайте обратимся к древнему интерфейсу MS-NRPC, используя уровень доступа RPC_C_AUTHN_LEVEL_NONE (то есть без авторизации). А затем вызовем функцию Opnum 34 (DsrGetDcNameEx2) – которая проводит проверку существования указанного аккаунта в домене. Скормив этой функции дефолтный список всевозможных имён, получим список существующих доменных аккаунтов. Обнаружить такую активность совсем непросто, поскольку она не оставляет какого-либо специального типа события в журнале безопасности Windows.
Дальше остаётся только устроить перебор паролей (password spraying) по полученному списку аккаунтов. Наверняка хоть кто-нибудь использовал P@$$w0rd или May_2024.
Более подробный анализ безопасности MSRPC-интерфейсов – в исследовании Хайдара Кабибо.
Автор исследования также написал утилиту для демонстрации описанных возможностей:
https://github.com/klsecservices/NauthNRPC