
Инструмент Powershell для автоматизации перечисления Active Directory.
Комплексная оценка безопасности Active Directory — без зависимостей, один файл, готов к использованию.
adPEAS — это инструмент оценки безопасности на основе PowerShell, который выявляет неправильные конфигурации, уязвимости и пути повышения привилегий в средах Active Directory. Он предназначен для пентестеров, аудиторов безопасности и красных команд, которым нужен надежный автономный инструмент, работающий в любой системе Windows — без RSAT, без модуля ActiveDirectory, без сторонних зависимостей.
adPEAS v2 — это полная переработка adPEAS v1. Он заменяет устаревший подход DirectoryEntry/DirectorySearcher на единую архитектуру System.DirectoryServices.Protocols.LdapConnection и добавляет нативную аутентификацию Kerberos, расширенные отчеты и наступательные операции — все это на чистом PowerShell.
Новичок в adPEAS? Ознакомьтесь с Руководством по быстрому старту или прочитайте серию статей в блоге blog.sekurity.de для глубокого погружения в архитектуру, аутентификацию и внутренние механизмы.
Не требуется модуль ActiveDirectory, RSAT или внешние модули PowerShell.
Все четыре версии функционально идентичны. Выбирайте в зависимости от сценария развертывания.
# Clone the repository
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 и никаких дополнительных зависимостей.
# Option 1: Import as module (recommended)
Import-Module .\adPEAS.ps1
# Option 2: Dot-sourcing
. .\adPEAS.ps1
# Option 3: Read and execute in memory
Get-Content -Raw .\adPEAS.ps1 | Invoke-Expression
# Option 4: Load directly from GitHub into memory (no file on disk)
Invoke-Expression (Invoke-WebRequest -Uri "https://raw.githubusercontent.com/61106960/adPEAS/main/adPEAS_obf.ps1" -UseBasicParsing).Content
# Domain-joined machine (current user)
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth
# With credentials
Invoke-adPEAS -Domain "contoso.com" -Username "john.doe" -Password "P@ssw0rd!"
# OPSEC mode (skip Kerberoast, ASREPRoast, BloodHound)
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -OPSEC
# Connect once
Connect-adPEAS -Domain "contoso.com" -UseWindowsAuth
# Run full scan
Invoke-adPEAS
# Or run individual checks
Get-KerberoastableAccounts
Get-ADCSVulnerabilities
Get-DangerousACLs
# Disconnect when done
Disconnect-adPEAS
# Credentials
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 (Certificate)
Connect-adPEAS -Domain "contoso.com" -Certificate "user.pfx"
# Pass-the-Cert / Schannel (LDAPS, no Kerberos)
Connect-adPEAS -Domain "contoso.com" -Certificate "user.pfx" -PassTheCert
# LDAPS
Connect-adPEAS -Domain "contoso.com" -UseWindowsAuth -UseLDAPS
# All formats (default) — creates .txt, .html, and .json
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Outputfile .\report
# HTML only
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Outputfile .\report -Format HTML
# Offline report conversion from JSON
Convert-adPEASReport -InputJson ".\report.json" -OutputPath ".\new_report"
# Compare two scans (diff report)
Compare-adPEASReport -Baseline ".\scan_q1.json" -Current ".\scan_q2.json" -OutputPath ".\diff"
Запуск конкретных модулей:
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Module Domain,Creds,ADCS
Полная документация доступна в каталоге 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 с автоматическим откатом |
| Проверки безопасности | Конфигурация домена, Kerberoast, ASREPRoast, ACL, DCSync, делегирование, ADCS (ESC1-ESC15), злоупотребление 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 MB | Разработка, отладка, проверка кода |
adPEAS_min.ps1 | ~3-4 MB | Обычное использование с меньшим размером |
adPEAS_ultra.ps1 | ~3 MB | Минимальный размер, без комментариев |
adPEAS_obf.ps1 | <1 MB | Наименьший размер, обфусцирован для передачи |
| Модуль | Описание |
|---|
Domain | Конфигурация домена, доверительные отношения, политика паролей, подпись LDAP, подпись SMB |
Creds | Kerberoast, ASREPRoast, доступ к ключам восстановления LAPS и BitLocker, раскрытие учетных данных в SYSVOL |
Rights | ACL, DCSync, права на сброс пароля, опасные разрешения OU |
Delegation | Неограниченное, ограниченное, делегирование на основе ресурсов |
ADCS | Шаблоны сертификатов, уязвимости ESC1–ESC15 |
Accounts | Привилегированные учетные записи, защищенные пользователи, служебные учетные записи, история SID |
GPO | Разрешения GPO, членство в локальных группах, запланированные задачи, скрипты и опасные настройки реестра (WDigest, AlwaysInstallElevated, OneLogon/Zerologon, PrintNightmare, …), развертываемые через GPO |
Computer | LAPS, устаревшие системы, серверы инфраструктуры |
Application | Инфраструктура Exchange, SCCM, SCOM |
BloodHound | Сбор данных BloodHound CE |
| Документ | Тема |
|---|
| Installation | Установка: загрузка, настройка, политика выполнения |
| Quick-Start | Быстрый старт: начните за 5 минут |
| Authentication | Аутентификация: все варианты аутентификации |
| Security Checks | Проверки безопасности: полная справка по проверкам |
| BloodHound Collector | Коллектор BloodHound CE: экспорт BloodHound CE |
| Core Functions | Основные функции: функции запросов LDAP |
| Set- & New-Modules | Модули Set- и New-: функции модификации AD |
| Helper Functions | Вспомогательные функции: утилитарные функции |
| Architecture | Архитектура: техническая архитектура |
| Risk Scoring | Оценка рисков: серьезность и оценки риска |
| Troubleshooting | Устранение неполадок: распространенные проблемы и решения |
| FAQ | ЧАВО: часто задаваемые вопросы |