
Инструмент Powershell для автоматизации перечисления Active Directory.
Комплексная оценка безопасности Active Directory — без зависимостей, один файл, готов к использованию.
adPEAS — это инструмент оценки безопасности на основе PowerShell, который выявляет ошибки конфигурации, уязвимости и пути повышения привилегий в средах Active Directory. Он разработан для пентестеров, аудиторов безопасности и red team, которым нужен надежный автономный инструмент, работающий в любой системе Windows — без RSAT, без модуля ActiveDirectory, без сторонних зависимостей.
adPEAS v2 — это полная переработка adPEAS v1. Он заменяет устаревший подход DirectoryEntry/DirectorySearcher на единую архитектуру System.DirectoryServices.Protocols.LdapConnection и добавляет нативную аутентификацию Kerberos, расширенную отчетность и наступательные операции — всё на чистом PowerShell.
Впервые с adPEAS? Ознакомьтесь с Кратким руководством или прочитайте серию статей в блоге на blog.sekurity.de для глубокого погружения в архитектуру, аутентификацию и внутреннее устройство.
Модуль ActiveDirectory, RSAT или внешние модули PowerShell не требуются.
Все четыре версии функционально идентичны. Выбирайте в зависимости от сценария развертывания.
# Клонирование репозитория
git clone https://github.com/61106960/adPEAS.git
cd adPEAS
Ветка main содержит только исходные файлы (src/). Сборки релизов прикреплены к каждому релизу GitHub. Если вы хотите собрать из последнего исходного кода, используйте прилагаемый скрипт сборки:
git clone https://github.com/61106960/adPEAS.git
cd adPEAS
.\Build-Release.ps1
Это создаст все четыре варианта (adPEAS.ps1, adPEAS_min.ps1, adPEAS_ultra.ps1, adPEAS_obf.ps1) в корне репозитория. Требуется Windows PowerShell 5.1 и никаких дополнительных зависимостей.
# Вариант 1: Импорт как модуль (рекомендуется)
Import-Module .\adPEAS.ps1
# Вариант 2: Dot-sourcing
. .\adPEAS.ps1
# Вариант 3: Чтение и выполнение в памяти
Get-Content -Raw .\adPEAS.ps1 | Invoke-Expression
# Вариант 4: Загрузка напрямую из GitHub в память (без файла на диске)
Invoke-Expression (Invoke-WebRequest -Uri "https://raw.githubusercontent.com/61106960/adPEAS/main/adPEAS_obf.ps1" -UseBasicParsing).Content
# Машина, входящая в домен (текущий пользователь)
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth
# С учетными данными
Invoke-adPEAS -Domain "contoso.com" -Username "john.doe" -Password "P@ssw0rd!"
# Режим OPSEC (пропуск Kerberoast, ASREPRoast, BloodHound)
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -OPSEC
# Подключение один раз
Connect-adPEAS -Domain "contoso.com" -UseWindowsAuth
# Полное сканирование
Invoke-adPEAS
# Или выполнение отдельных проверок
Get-KerberoastableAccounts
Get-ADCSVulnerabilities
Get-DangerousACLs
# Отключение по завершении
Disconnect-adPEAS
# Учетные данные
Connect-adPEAS -Domain "contoso.com" -Credential (Get-Credential)
# Overpass-the-Hash (NT-Hash)
Connect-adPEAS -Domain "contoso.com" -Username "admin" -NTHash "32ED87BDB5FDC5E9CBA88547376818D4"
# Pass-the-Key (AES256)
Connect-adPEAS -Domain "contoso.com" -Username "admin" -AES256Key "4a3b2c1d5e6f..."
# PKINIT (сертификат)
Connect-adPEAS -Domain "contoso.com" -Certificate "user.pfx"
# Pass-the-Cert / Schannel (LDAPS, без Kerberos)
Connect-adPEAS -Domain "contoso.com" -Certificate "user.pfx" -PassTheCert
# LDAPS
Connect-adPEAS -Domain "contoso.com" -UseWindowsAuth -UseLDAPS
# Все форматы (по умолчанию) — создает .txt, .html и .json
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Outputfile .\report
# Только HTML
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Outputfile .\report -Format HTML
# Офлайн-конвертация отчета из JSON
Convert-adPEASReport -InputJson ".\report.json" -OutputPath ".\new_report"
# Сравнение двух сканирований (diff-отчет)
Compare-adPEASReport -Baseline ".\scan_q1.json" -Current ".\scan_q2.json" -OutputPath ".\diff"
Запуск конкретных модулей:
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Module Domain,Creds,ADCS
Или запуск всего, кроме нескольких, без перечисления остальных:
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -ExcludeModule Bloodhound,Computer
Полная документация доступна в каталоге docs/:
Подробная серия статей о внутреннем устройстве adPEAS v2 опубликована на blog.sekurity.de.
adPEAS — доступен исходный код. Внутренние оценки безопасности вашей собственной организации бесплатны. Коммерческое использование (консалтинг, MSP, платные проекты) требует коммерческой лицензии.
См. LICENSE для полных условий, COMMERCIAL_AGREEMENT для коммерческого соглашения и PRICING для вариантов лицензирования.
adPEAS предназначен только для авторизованного тестирования безопасности. Всегда получайте письменное разрешение перед тестированием. Никогда не используйте против систем, которыми вы не владеете или на тестирование которых у вас нет разрешения. Авторы не несут ответственности за неправомерное использование этого инструмента. Соблюдайте все применимые законы и нормативные акты.
Alexander Sturz — SEKurity GmbH
| Категория | Основные возможности |
|---|
| Аутентификация | Учетные данные, PKINIT, Pass-the-Cert, NT-Hash, ключи AES, аутентификация Windows, Kerberos-first с автоматическим резервным вариантом |
| Проверки безопасности | Конфигурация домена, Kerberoast, ASREPRoast, ACL, DCSync, делегирование, пути эскалации AD CS, атаки на GPO, LAPS, ключи восстановления BitLocker, устаревшие системы |
| Отчетность | Консоль (с цветовой кодировкой), обычный текст, интерактивный HTML, экспорт в JSON |
| Наступательные операции | Kerberoasting, AS-REP Roasting, Golden/Silver/Diamond Tickets, RBCD, Shadow Credentials, Pass-the-Ticket |
| BloodHound | Встроенный коллектор BloodHound CE (экспорт в ZIP) |
| Режим OPSEC | Пропуск активного тестирования (Kerberoast, ASREPRoast, BloodHound) |
| Развертывание | Один файл .ps1, без RSAT, без внешних модулей, работает офлайн и в изолированных сетях |
| Файл | Размер | Вариант использования |
|---|
adPEAS.ps1 | ~4.5 МБ | Разработка, отладка, ревью кода |
adPEAS_min.ps1 | ~3-4 МБ | Обычное использование с меньшим размером |
adPEAS_ultra.ps1 | ~3 МБ | Минимальный размер, без комментариев |
adPEAS_obf.ps1 | <1 МБ | Наименьший размер, обфусцирован для передачи |
| Модуль | Описание |
|---|
Domain | Конфигурация домена, доверительные отношения, политика паролей, подпись LDAP, подпись SMB |
Creds | Kerberoast, ASREPRoast, доступ к ключам восстановления LAPS и BitLocker, раскрытие учетных данных в SYSVOL |
Rights | ACL, DCSync, права на сброс паролей, опасные разрешения OU |
Delegation | Неограниченное, ограниченное, основанное на ресурсах ограниченное делегирование |
ADCS | Шаблоны сертификатов и ЦС: ESC1-ESC5, ESC8, ESC9, ESC13, ESC14, ESC15 (ESC10 через проверку GPO). Пути эскалации, требующие административного доступа к хосту ЦС, выходят за рамки — см. Проверки безопасности |
Accounts | Привилегированные учетные записи, защищенные пользователи, сервисные учетные записи, история SID |
GPO | Разрешения GPO, членство в локальных группах, запланированные задачи, скрипты, опасные параметры реестра (WDigest, AlwaysInstallElevated, OneLogon/Zerologon, …) и политики драйверов принтеров Point and Print (PrintNightmare), развертываемые через GPO |
Computer | LAPS, устаревшие системы, инфраструктурные серверы |
Application | Инфраструктура Exchange, SCCM, SCOM |
Bloodhound | Сбор данных BloodHound CE |
| Документ | Тема |
|---|
| Установка | Загрузка, настройка, политика выполнения |
| Быстрый старт | Начало работы за 5 минут |
| Аутентификация | Все варианты аутентификации |
| Проверки безопасности | Полный справочник проверок |
| Коллектор BloodHound | Экспорт BloodHound CE |
| Основные функции | Функции LDAP-запросов |
| Модули Set- и New- | Функции изменения AD |
| Вспомогательные функции | Утилитарные функции |
| Архитектура | Техническая архитектура |
| Оценка рисков | Критичность и оценка рисков |
| Устранение неполадок | Частые проблемы и решения |
| FAQ | Часто задаваемые вопросы |