
Эксплуатация Active Directory ACL с помощью BloodHound
Aclpwn.py — это инструмент, который взаимодействует с BloodHound для выявления и эксплуатации путей повышения привилегий на основе ACL. Он принимает начальную и конечную точки и использует алгоритмы поиска путей Neo4j для нахождения наиболее эффективного пути повышения привилегий через ACL. Aclpwn.py аналогичен PowerShell-версии Invoke-Aclpwn, о которой можно прочитать в нашем блоге.
Aclpwn.py совместим как с Python 2.7, так и с Python 3.5+. Для работы требуются библиотеки neo4j-driver, impacket и ldap3. Установить aclpwn.py можно через pip: pip install aclpwn. Для Python 3 понадобится ветка python36 репозитория impacket, так как master-ветка (и версии, опубликованные на PyPI) на данный момент поддерживают только Python 2.
Инструкции по использованию и документацию смотрите в вики, например на странице быстрого старта.
На данный момент aclpwn.py предоставляет следующие возможности:
aclpwn.py не эксплуатирует никаких уязвимостей, а полагается на неправильно настроенные (часто из-за делегированных прав) или небезопасные ACL по умолчанию. Чтобы решить эти проблемы, важно выявлять потенциально опасные ACL в вашей среде Active Directory с помощью BloodHound. Для обнаружения можно использовать журналы событий Windows. Соответствующие идентификаторы событий описаны в нашем блоге.