Autobloody - автоматическая эксплуатация привилегий Active Directory
Сегодня рассмотрим инструмент, позволяющий автоматически эксплуатировать некоторые векторы эскалации привилегий Active Directory, отображаемые Bloodhound.
Данная статья представлена исключительно в образовательных целях. Red Team сообщество "GISCYBERTEAM" не несёт ответственности за любые последствия ее использования третьими лицами.
Установка
sudo apt install libkrb5-dev # библиотека для работы с kerberos python -m venv venv # создание виртуального окружения source /venv/bin/activate # активация виртуального окружения pip install neo4j # python драйвер для работы с БД neo4j pip install autobloody # установка самой утилиты
Также необходимо установить плагин GDS для neo4j.
Ограничения
На текущий момент программа позволяет автоматически эксплуатировать следующие привилегии:
- MemberOf
- ForceChangePassword
- AddMembers
- AddSelf
- DCSync
- GetChanges/GetChangesAll
- GenericAll
- WriteDacl
- GenericWrite
- WriteOwner
- Owns
- Contains
- AllExtendedRights
Пример использования
Данное решение имеет следующие настройки:
usage: autobloody.py [-h] [--dburi DBURI] [-du DBUSER] -dp DBPASSWORD -ds DBSOURCE -dt DBTARGET [-d DOMAIN] [-u USERNAME] [-p PASSWORD] [-k] [-c CERTIFICATE] [-s] --host HOST -h, --help выводит справку --dburi DBURI URI для подключения к neo4j (по-умолчанию "bolt://localhost:7687") -du DBUSER, --dbuser DBUSER Пользователь для neo4j (по-умолчанию "neo4j") -dp DBPASSWORD, --dbpassword DBPASSWORD Пароль для neo4j -ds DBSOURCE, --dbsource DBSOURCE Регистрозависимое имя источника атаки (в bloodhound свойство name) -dt DBTARGET, --dbtarget DBTARGET Регистрозависимое имя цели атаки (в bloodhound свойство name) -d DOMAIN, --domain DOMAIN Имя домена -u USERNAME, --username USERNAME Имя пользователя для NTLM аутентификации -p PASSWORD, --password PASSWORD Пароль или хэш (LMHASH:NTHASH) для NTLM аутентификации -k, --kerberos -c CERTIFICATE, --certificate CERTIFICATE Сертификат для аутентификации, формат: "path/to/key:path/to/cert" -s, --secure Использовать LDAP over TLS (LDAPS), по-умолчанию LDAP --host HOST IP или hostname доменного контроллера (DC) (ex: my.dc.local or 172.16.1.3)
Для наполнения домена использован скрипт BadBlood.
Представим, что у нас есть учетная запись SUSANA_AYERS,
но у нас есть потребность в захвате учетной записи EMILY_GIBBS
.
При рассмотрении результатов выгрузки SharpHound в BloodHound мы видим, что SUSANA_AYERS
входит в группу ПОЛЬЗОВАТЕЛИ ДОМЕНА
, а группа ПОЛЬЗОВАТЕЛИ ДОМЕНА
входит в группу LE-SOYAFORTU-DISTLIST1
. В свою очередь группа LE-SOYAFORTU-DISTLIST1
имеет разрешение GenericAll
при взаимодействии с пользователями GERRY_YOUNG
или RAPHAEL_CLINE
.
Учетная запись с разрешением GenericAll
может выполнять практически любые действия с ресурсом, включая полное контролирование его содержимого и настроек без каких-либо ограничений.
Соответственно, SUSANA_AYERS
, как член группы LE-SOYAFORTU-DISTLIST1
, может менять любые настройки пользователей GERRY_YOUNG
и RAPHAEL_CLINE
, в том числе пароль. Таким образом, изменив пароль любого из этих пользователей, получаем доступ к выполнению команд от их имени после аутентификации.
Здесь начинается вторая итерация эскалация привилегий. Для примера полагаем, что мы получили доступ к аккаунту RAPHAEL_CLINE
.
Пользователь RAPHAEL_CLINE
является частью группы SA-240-DISTLIST1
, а эта группа имеет разрешение GenericAll
при взаимодействии с EMILY_GIBBS
, поэтому RAPHAEL_CLINE
так же имеет это разрешение. Таким образом, RAPHAEL_CLINE
меняет пароль EMILY_GIBBS
, эскалация привилегий завершена.
- Пароль SUSANA_AYERS:
Arbzuik111
- URI neo4j:
bolt://localhost:7687
- Пароль для neo4j:
yNgGAi4dla
- Домен:
GISCYBERTEAM.LOCAL
- Адрес доменного контроллера:
192.168.207.134
autobloody -dp yNgGAi4dla -ds [email protected] -dt [email protected] -u SUSANA_AYERS -p Arbuzik111 --host 192.168.207.134 -d GISCYBERTEAM.LOCAL
Как видно, утилита автоматически обнаруживает вектор эскалации привилегий и эксплуатирует его.
Заключение
Сегодня мы с вами рассмотрели инструмент, позволяющий автоматически эксплуатировать векторы эскалации привилегий Active Directory через результаты программного решения Bloodhound, что в свою очередь станет отличным дополнением в инструментариях специалиста по тестированию на проникновение.