Back to updates
New releaseSep 9, 2026

adPEAS v2.5.0

Powershell tool to automate Active Directory enumeration.

Share

adPEAS v2 — Active Directory Privilege Escalation Awesome Scripts

adPEAS Logo

Comprehensive Active Directory security assessment — zero dependencies, single file, ready to go.


What is adPEAS?

adPEAS is a PowerShell-based security assessment tool that identifies misconfigurations, vulnerabilities, and privilege escalation paths in Active Directory environments. It is designed for penetration testers, security auditors, and red teams who need a reliable, self-contained tool that works on any Windows system — no RSAT, no ActiveDirectory module, no third-party dependencies.

adPEAS v2 is a complete rewrite of adPEAS v1. It replaces the legacy DirectoryEntry/DirectorySearcher approach with a unified System.DirectoryServices.Protocols.LdapConnection architecture and adds native Kerberos authentication, advanced reporting, and offensive operations — all in pure PowerShell.

What's New in v2

  • Native Kerberos stack — AS-REQ/AS-REP, TGS-REQ/TGS-REP, Pass-the-Ticket, PKINIT, all in pure PowerShell
  • Multiple auth methods — Password, NT-Hash (OPtH), AES keys (PtK), Certificates (PKINIT & Pass-the-Cert/Schannel), Windows integrated
  • 40+ security checks across 9 categories with severity scoring
  • Interactive HTML reports with search, filtering, risk scores, and tooltips
  • JSON export for offline report conversion, incremental scanning, and scan comparison
  • BloodHound CE collector — built-in data collection for attack path analysis
  • Offensive operations — Kerberoasting, AS-REP Roasting, Golden/Silver/Diamond Tickets, RBCD abuse, Shadow Credentials, and more
  • Session-based workflow — connect once, run multiple checks interactively
  • Tab-completion — autocomplete AD object names for interactive exploration

New to adPEAS? Check the Quick-Start Guide or read the blog series on blog.sekurity.de for a deep dive into architecture, authentication, and internals.


Features at a Glance

CategoryHighlights
AuthenticationCredentials, PKINIT, Pass-the-Cert, NT-Hash, AES keys, Windows auth, Kerberos-first with automatic fallback
Security ChecksDomain config, Kerberoast, ASREPRoast, ACLs, DCSync, delegation, AD CS escalation paths, GPO abuse, LAPS, BitLocker recovery keys, outdated systems
ReportingConsole (color-coded), plain text, interactive HTML, JSON export
Offensive OpsKerberoasting, AS-REP Roasting, Golden/Silver/Diamond Tickets, RBCD, Shadow Credentials, Pass-the-Ticket
BloodHoundBuilt-in BloodHound CE collector (ZIP export)
OPSEC ModeSkip active testing (Kerberoast, ASREPRoast, BloodHound)
DeploymentSingle .ps1 file, no RSAT, no external modules, works offline and air-gapped

Requirements

  • OS: Windows 10/11, Windows Server 2016/2019/2022/2025
  • PowerShell: 5.1+ (Windows PowerShell)
  • .NET Framework: 4.5+ (included in Windows)
  • Network: LDAP (389), LDAPS (636), Kerberos (88), SMB (445)

No ActiveDirectory module, RSAT, or external PowerShell modules required.


Download

Release Versions

FileSizeUse Case
adPEAS.ps1~4.5 MBDevelopment, debugging, code review
adPEAS_min.ps1~3-4 MBRegular use with smaller footprint
adPEAS_ultra.ps1~3 MBMinimal size, no comments
adPEAS_obf.ps1<1 MBSmallest size, obfuscated for transfer

All four versions are functionally identical. Choose based on your deployment scenario.

# Clone the repository
git clone https://github.com/61106960/adPEAS.git
cd adPEAS

Building from Source

The main branch contains only source files (src/). Release builds are attached to each GitHub Release. If you want to build from the latest source, use the included build script:

git clone https://github.com/61106960/adPEAS.git
cd adPEAS
.\Build-Release.ps1

This produces all four variants (adPEAS.ps1, adPEAS_min.ps1, adPEAS_ultra.ps1, adPEAS_obf.ps1) in the repository root. Requires Windows PowerShell 5.1 and no additional dependencies.


Quick Start

# 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

One-Liner (v1 Compatible)

# 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

Session-Based (v2 Style)

# 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

Authentication Methods

# 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

Output & Reporting

# 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"

Security Check Modules

Categories