zBang — это специальный инструмент оценки рисков, который выявляет потенциальные угрозы для привилегированных учетных записей в сканируемой сети.
Организации и участники красных команд могут использовать zBang для выявления потенциальных векторов атак и повышения уровня безопасности сети. Результаты можно анализировать с помощью графического интерфейса или просматривая необработанные выходные файлы.
Более подробную информацию о zBang можно найти в статье блога «Big zBang Theory» от @Hechtov:
https://www.cyberark.com/threat-research-blog/the-big-zbang-theory-a-new-open-source-tool/
Инструмент состоит из пяти различных модулей сканирования:
- Сканирование ACLight — обнаруживает наиболее привилегированные учетные записи, которые необходимо защитить, включая подозрительные теневые учетные записи администраторов (Shadow Admins).
- Сканирование Skeleton Key — обнаруживает контроллеры домена, которые могут быть заражены вредоносным ПО Skeleton Key.
- Сканирование SID History — обнаруживает скрытые привилегии в учетных записях домена с вторичным SID (атрибут SID History).
- Сканирование RiskySPNs — обнаруживает рискованную конфигурацию SPN, которая может привести к краже учетных данных администраторов домена.
- Сканирование Mystique — обнаруживает рискованную конфигурацию делегирования Kerberos в сети.
Для вашего удобства также имеется краткий информационный лист (Data Sheet) о zBang:
https://github.com/cyberark/zBang/blob/master/zBang%20Summarized%20Data%20Sheet.pdf
Требования к выполнению
- Запускайте его от имени любого пользователя домена. Сканирование не требует дополнительных привилегий; инструмент выполняет только запросы LDAP на чтение к контроллеру домена (DC).
- Запускайте инструмент с компьютера, присоединенного к домену (компьютер под управлением Windows).
- PowerShell версии 3 или выше и .NET 4.5 (по умолчанию присутствует в Windows 8/2012 и выше).
Краткое руководство по началу работы
- Загрузите и запустите версию релиза из этого репозитория GitHub ссылка или скомпилируйте ее с помощью вашего любимого компилятора.
- Иногда при загрузке через браузер вам потребуется «разблокировать» загруженный файл zBang.exe.
- На начальном экране выберите, какие сканирования вы хотите выполнить.
В следующем примере выбраны все пять сканирований:
- Чтобы просмотреть демонстрационные результаты, нажмите «Reload».
Инструмент zBang поставляется со встроенными демонстрационными данными; вы можете просмотреть результаты различных сканирований и поиграть с графическим интерфейсом.
- Чтобы запустить новые сканирования в вашей сети, нажмите «Launch». Появится новое окно, в котором будет отображаться статус различных сканирований.
- Когда сканирование будет завершено, появится сообщение о том, что результаты были экспортированы во внешний ZIP-файл.
- ZIP-файл с результатами будет находиться в той же папке, где и zBang, и будет иметь уникальное имя с указанием времени и даты сканирования. Вы также можете импортировать предыдущие результаты в графический интерфейс zBang без необходимости повторного запуска сканирований.
Чтобы импортировать предыдущие результаты, нажмите «Import» на начальном экране zBang.
Обзор результатов zBang
A. Сканирование ACLight:

- Выберите домен, который вы сканировали.
- Вы увидите список наиболее привилегированных учетных записей, которые были обнаружены.
- Слева — просмотр «стандартных» привилегированных учетных записей, получающих свои привилегии благодаря членству в группах.
- Справа — просмотр «теневых администраторов» (Shadow Admins). Эти учетные записи получают свои привилегии через прямое назначение разрешений ACL. Такие учетные записи могут быть более скрытными, чем стандартные пользователи «domain admin», и поэтому они могут быть не так безопасны, как следовало бы. Злоумышленники часто нацеливаются на такие учетные записи и пытаются их скомпрометировать.
- На каждой учетной записи можно дважды щелкнуть и просмотреть ее граф разрешений. Это может помочь понять, почему данная учетная запись была классифицирована как привилегированная.

- Различные уязвимые разрешения ACL описаны на небольшой странице справки. Нажмите на «знак вопроса» в правом верхнем углу, чтобы просмотреть:
-
Более подробная информация об угрозе со стороны теневых администраторов доступна в статье блога -
«Shadow Admins – The Stealthy Accounts That You Should Fear The Most»:
https://www.cyberark.com/threat-research-blog/shadow-admins-stealthy-accounts-fear/
-
Для ручного анализа результатов сканирования распакуйте сохраненный файл результатов zBang и проверьте папку результатов:
«[Путь к распакованному файлу результатов zBang]\ACLight-master\Results», содержит сводный отчет — «Privileged Accounts - Layers Analysis.txt».
-
Для каждой обнаруженной привилегированной учетной записи:
- Определите привилегированную учетную запись.
- Уменьшите ненужные разрешения учетной записи.
- Защитите учетную запись.
После проверки этих трех шагов вы можете отметить учетную запись галочкой «V» в маленьком поле выбора, сделав ее зеленой на интерфейсе.
-
Цель — сделать все учетные записи отмеченными как «защищенные» зеленым цветом.
B. Сканирование Skeleton Key
- На странице сканирования (нажмите соответствующую закладку в разделе выше) будет список всех просканированных контроллеров домена (DC).
- Убедитесь, что все они чисты и отмечены зеленым.
- Если сканирование обнаружит потенциально зараженный контроллер домена, крайне важно начать процесс расследования.

- Более подробная информация о вредоносном ПО Skeleton Key доступна в статье блога
«Active Directory Domain Controller Skeleton Key Malware & Mimikatz» от @PyroTek3: https://adsecurity.org/?p=1255
C. Сканирование SID History
- На этой странице сканирования будет список учетных записей домена с вторичным SID (атрибут SID History).
- У каждой учетной записи будет две стрелки-соединителя: одна слева для основного SID, другая справа для вторичного SID (со значком маски).
- Если основной SID является привилегированным, он будет красным, а если SID history является привилегированным, он будет отображаться в виде красной маски.
- Вам следует искать возможные очень рискованные ситуации, когда учетная запись имеет непривилегированный основной SID, но при этом имеет привилегированный вторичный SID. Этот сценарий является очень подозрительным, и вам следует проверить эту учетную запись и выяснить, почему она получила привилегированный вторичный SID. Убедитесь, что он не был добавлен потенциальным злоумышленником в сети.

* Для удобства визуализации, если присутствует большое количество учетных записей с непривилегированным SID history (более десяти), они будут отфильтрованы из отображения, поскольку эти учетные записи менее чувствительны.
- Для ручного анализа результатов сканирования распакуйте сохраненный файл результатов zBang и проверьте CSV-файл:
«[Путь к распакованному файлу результатов zBang]\SIDHistory\Results\Report.csv».
- Более подробная информация о злоупотреблении SID History доступна в статье блога
«Security Focus: sIDHistory» от Ian Farr: https://blogs.technet.microsoft.com/poshchap/2015/12/04/security-focus-sidhistory-sid-filtering-sanity-check-part-1-aka-post-100/
D. Сканирование RiskySPNs
- На странице результатов сканирования будет список всех SPN, зарегистрированных для учетных записей пользователей.
- Если учетная запись пользователя является привилегированной, она будет красной.
- Очень рискованно иметь SPN, зарегистрированные для привилегированных учетных записей. Попробуйте изменить или отключить такие SPN. Используйте учетные записи компьютеров для SPN или уменьшите ненужные разрешения пользователей, у которых зарегистрированы SPN. Также рекомендуется назначать этим пользователям надежные пароли и реализовать автоматическую ротацию каждого пароля.

- Для ручного анализа результатов сканирования распакуйте сохраненный файл результатов zBang и проверьте CSV-файл:
«[Путь к распакованному файлу результатов zBang]\RiskySPN-master\Results\RiskySPNs-test.csv».
- Более подробная информация о рискованных SPN доступна в статье блога
«Service Accounts – Weakest Link in the Chain»:
https://www.cyberark.com/blog/service-accounts-weakest-link-chain/
E. Сканирование Mystique
- Страница результатов сканирования содержит список всех обнаруженных учетных записей, которым доверено право делегирования.
- Существует три типа делегирования: неограниченное (Unconstrained), ограниченное (Constrained) и ограниченное с переходом протокола (Constrained with Protocol Transition). Цвет учетной записи соответствует типу разрешения делегирования.
- Отключите старые и неиспользуемые учетные записи, которым доверены права делегирования. В частности, проверьте рискованные типы делегирования «Unconstrained» и «Constrained with Protocol Transition». Преобразуйте делегирование «Unconstrained» в «Constrained», чтобы оно разрешалось только для определенных необходимых служб. Тип делегирования «Protocol Transition» должен быть перепроверен и, если возможно, отключен.

- Для ручного анализа результатов сканирования распакуйте сохраненный файл результатов zBang и проверьте CSV-файл:
«[Путь к распакованному файлу результатов zBang]\Mystique-master\Results\delegation_info.csv».
- Более подробная информация о рискованной конфигурации делегирования доступна в статье блога -
«Weakness Within: Kerberos Delegation»:
https://www.cyberark.com/threat-research-blog/weakness-within-kerberos-delegation/
Производительность
zBang работает быстро и не требует специальных привилегий в сети. Поскольку требуется только связь с контроллером домена через легитимные запросы LDAP только для чтения, типичное время выполнения zBang в сети с примерно 1000 учетных записей пользователей составит семь минут.
Если вы собираетесь сканировать большие сети с несколькими доверенными доменами, рекомендуется проверить конфигурацию доверия доменов или запускать zBang отдельно в каждом домене, чтобы избежать возможных проблем с разрешениями и подключением.
Контрольная сумма
zBang версия 1.2.1:
SHA-256 ce747740a9a24c330c18c2f09f6ee344e1806666abf21c8c2f964fa61f438903
Авторы
zBang был разработан CyberArk Labs как быстрый и «грязный» прототип (POC), предназначенный для помощи командам безопасности по всему миру. Приветствуются отзывы и комментарии.
Основные контактные лица:
Asaf Hecht (@Hechtov), Nimrod Stoler (@n1mr0d5) и Lavi Lazarovitz (@__Curi05ity__)