Windows Privilege Escalation 2026: A Complete Guide to Privilege Tokens (SE*)

A comprehensive map of exploitable Windows privilege tokens in a pentest. From whoami /priv to SYSTEM: cheat sheets, tables, workflows, and links to how-to guides.
- Posted on 2026-07-01
- Reading time: 5 min
Windows Privilege Escalation 2026: A Complete Guide to Privilege Tokens (SE*) #
You have a shell on a Windows machine. The next step is almost always the same: whoami /privThat one line tells you everything — what privileges you have, what carriers are available, how close you are to nt authority\systemThis guide covers all the Windows privilege token exploitable in a pentest, with links to complete how-to guides for each.
What is a Privilege Token on Windows? #
Windows assigns each process an access token —a structure containing the user's identity, group membership, and a list of privileges (SePrivilege). These privileges control what the process can do at the system level: impersonate users, debug other processes, load drivers, and read files bypassing ACLs.
Most of the privileges are present in the token but disabled — processes enable them when they need them via AdjustTokenPrivileges. Some tools like GodPotato, mimikatz and the various Potato attacks automatically enable them before the exploit.
Enumeration — The First Step #
Quick privilege check #
whoami /privThis is the most important command in Windows post-exploitation. Always run it immediately after gaining access.
Complete automatic enumeration #
winPEAS — the most widely used tool for automatic enumeration on Windows. Detects privileges, vulnerable services, saved credentials, hijackable paths, and more:
winPEAS.exe quiet tokencheck
winPEAS.exeSeatbelt — C# host-side security auditing tool, quieter than winPEAS:
Seatbelt.exe TokenPrivileges
Seatbelt.exe -group=allaccesschk — Sysinternals, checks who has a specific privilege on the system:
accesschk.exe -a SeImpersonatePrivilege *
accesschk.exe -a SeDebugPrivilege *SharpUp — Quick audit of the most common escalation vectors:
SharpUp.exe auditPrivescCheck — alternative PowerShell script to winPEAS:
. .\PrivescCheck.ps1; Invoke-PrivescCheckPrivilege Token Map — From Privilege to SYSTEM #
Each privilege opens different vectors. This table is a quick reference—find your privilege and go directly to the how-to guide.
Tier 1 — SYSTEM Immediate #
The most common in real pentests. If you have one of these, you're close to SYSTEM.
| Privilege | Impact | Main vector | Guide |
|---|---|---|---|
| SeImpersonatePrivilege | SYSTEM shell | Potato attack (GodPotato) | → Complete guide |
| SeAssignPrimaryTokenPrivilege | SYSTEM shell | Potato attack (GodPotato -t 2) | → Complete guide |
| SeDebugPrivilege | LSASS dump → AD hash | comsvcs.dll / nanodump | → Complete guide |
| SeLoadDriverPrivilege | Ring-0, kill EDR, bypass PPL | BYOVD (Capcom.sys, RTCore64) | → Complete guide |
Tier 2 — SYSTEM with a Target Service #
They require an exploitable SYSTEM service in the environment — almost always present.
| Privilege | Impact | Main vector | Guide |
|---|---|---|---|
| SeBackupPrivilege | SAM + NTDS.dit → all AD hashes | reg save + secretsdump | → Complete guide |
| SeRestorePrivilege | Binary replacement → SYSTEM | reg add ImagePath + robocopy /B | → Complete guide |
| SeTakeOwnershipPrivilege | Arbitrary files/registries → SYSTEM | takeown + icacls + binary replace | → Complete guide |
| SeRelabelPrivilege | Bypass MIC → writing to High file | icacls /setintegritylevel | → Complete guide |
| SeManageVolumePrivilege | Raw disk → SAM/NTDS.dit | RawCopy + secretsdump | → Complete guide |
Tier 3 — Domain Compromise #
Vectors that start from domain accounts even without local privileges.
| Privilege | Impact | Main vector | Guide |
|---|---|---|---|
| SeMachineAccountPrivilege | Domain Admin | RBCD + getST.py + secretsdump | → Complete guide |
Tier 4 — Conditional / Specific #
They require special conditions in the environment or are rare on non-system accounts.
| Privilege | Impact | Main vector | Guide |
|---|---|---|---|
| SeCreateSymbolicLinkPrivilege | Arbitrary writing via TOCTOU | mklink + race condition | → Complete guide |
| SeDelegateSessionUserImpersonatePrivilege | Cross-session token steal (RDS/Citrix) | NtObjectManager | → Complete guide |
| SeSecurityPrivilege | OpSec: clear log, remove SACL | wevtutil + SetACL | → Complete guide |
| SeTrustedCredManAccessPrivilege | Dump Credential Manager | cmdkey + mimikatz + SharpDPAPI | → Complete guide |
| SeSystemEnvironmentPrivilege | PATH hijacking / UEFI persistence | reg add PATH + Process Monitor | → Complete guide |
Tier 5 — Critical: Document Immediately #
Almost exclusive to SYSTEM processes. Finding them on non-system accounts is a P0 finding.
| Privilege | Impact | Nota | Guide |
|---|---|---|---|
| SeCreateTokenPrivilege | Token forgery from scratch with NtCreateToken | Critical Finding P0 | → Complete guide |
| SeTcbPrivilege | Arbitrary logon sessions via LSA with custom SID | Critical Finding P0 | → Complete guide |
Escalation Workflow — From Shell to SYSTEM #
Step 1 — List now #
whoami /priv
whoami /groups
whoami /allThen automate:
winPEAS.exe quiet tokencheck
Seatbelt.exe TokenPrivilegesStep 2 — Identify the vector #
Do you have SeImpersonatePrivilege or SeAssignPrimaryTokenPrivilege? → Potato attack → SYSTEM in 2 commands.
Are you in the Backup Operators group? → SeBackupPrivilege + SeRestorePrivilege → SAM dump + binary replacement.
Do you have SeDebugPrivilege in elevated token? → comsvcs.dll MiniDump → LSASS → NTLM hash → PTH.
Are you in Print Operators? → SeLoadDriverPrivilege → BYOVD → ring-0 → bypass PPL and EDR.
Do you only have domain credentials? → MachineAccountQuota → RBCD → Domain Admin.
Step 3 — Run the Quick Exploit #
Each guide in the series has a Quick Exploit block with the bare minimum commands. Always start there.
Phase 4 — Post-SYSTEM: Dump and Persistence #
mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" exitOr without external tools:
rundll32.exe C:\Windows\System32\comsvcs.dll MiniDump [PID lsass] C:\temp\lsass.dmp fullOn attacking machine:
python3 pypykatz lsa minidump lsass.dmp
python3 secretsdump.py -sam sam.hive -system system.hive LOCALEssential Tools — Cheatsheet #
Enumeration #
| tool | Use | Download |
|---|---|---|
| winPEAS | Full automatic enumeration | PEASS-ng GitHub |
| seat belt | Offensive host survey | GhostPack/Seatbelt |
| SharpUp | Audit of common carriers | GhostPack/SharpUp |
| accesschk | Check permissions and privileges | Sysinternals |
| PrivescCheck | Alternative PowerShell script | itm4n/PrivescCheck |
Potato Attack (SeImpersonatePrivilege) #
| tool | Supported versions | Download |
|---|---|---|
| God Potato | Win10 / Srv 2016–2022 | BeichenDream/GodPotato |
| PrintSpoofer | Win10 / Srv 2016–2019 | itm4n/PrintSpoofer |
| SweetPotato | Win10 / Srv 2016–2022 | CCob/SweetPotato |
| JuicyPotato | Win7 / Srv 2008–2016 | ohpe/juicy-potato |
| RoguePotato | Win10 / Srv 2016–2022 | antonioCoco/RoguePotato |
Credential Dump #
| tool | Use |
|---|---|
comsvcs.dll MiniDump | LSASS dump — built-in Windows, zero external tools |
| mimikatz | Dump LSASS, vault, DPAPI, Kerberos tickets |
| nanodump | LSASS dump with direct syscalls — EDR evasion |
| SharpDPAPI | Complete DPAPI chain — vault, credentials |
| Impacket secretsdump | Offline dump SAM/NTDS + via network to DC |
Active Directory #
| tool | Use |
|---|---|
| Ipacket (addcomputer, getST, secretsdump) | RBCD, hash dump, Kerberos tickets |
| The red | Kerberos Tickets, S4U, PTT — Windows |
| PowerMad | Computer account creation from Windows |
| PowerView | Enumeration AD, ACL, RBCD config |
| blood hound | Graph AD — find path to DA |
Kernel / Driver #
| tool | Use |
|---|---|
| EoPLoadDriver | Load drivers with SeLoadDriverPrivilege |
| ExploitCapcom | Kernel exec via Capcom.sys |
| EDRSandBlast | Kill EDR via BYOVD kernel driver |
| LOLDrivers | List of vulnerable signed drivers |
AD Groups to Always Monitor #
Some Active Directory groups assign critical privileges by design. Always check for them in the enumeration:
net localgroup "Backup Operators"
net localgroup "Print Operators"
net localgroup "Server Operators"
net localgroup AdministratorsGet-ADGroupMember "Backup Operators" -Recursive | Select-Object Name, SamAccountName
Get-ADGroupMember "Print Operators" -Recursive | Select-Object Name, SamAccountName| Group | Critical privileges | Carrier |
|---|---|---|
| Backup Operators | SeBackupPrivilege + SeRestorePrivilege | SAM/NTDS dump + binary replacement |
| Print Operators | SeLoadDriverPrivilege | BYOVD → ring-0 (also on DCs) |
| Server Operators | SeBackupPrivilege + more | Similar to Backup Operators |
Verify Elevated or Not Elevated Token (UAC) #
Many privileges — SeDebugPrivilege, SeTakeOwnershipPrivilege, SeImpersonatePrivilege — are present in the token but disabled outside an elevated process.
whoami /groups | findstr "Mandatory"High Mandatory Level→ elevated token → enableable privilegesMedium Mandatory Level→ non-elevated token (split UAC) → some privileges disabled
If you are on Medium and need a high token:
runas /user:Administrator cmdOr use a UAC bypass (outside the scope of this guide — depends on your environment).
Detection — What Windows Logs #
If you are in a monitored environment, these are the Event IDs that generate alerts most frequently:
| Event | ID | trigger |
|---|---|---|
| Abnormal child process (w3wp → cmd) | 4688 | Post-escalation potato attack |
| Named pipe anomalous | Sysmon 17/18 | GodPotato / PrintSpoofer |
| Accessing lsass.exe | Sysmon 10 | LSASS dump |
| Pattern comsvcs.dll + lsass PID | Sysmon 1 | LSASS dump built-in |
| Driver loaded from abnormal path | Sysmon 6 | BYOVD |
| Security log cleared | 1102 | SeSecurityPrivilege |
| Computer account created by non-admin | 4741 | RBCD attack |
| SAM / NTDS.dit accessed | 4663 | SeBackupPrivilege |
For OpSec management and how to reduce noise: → SeSecurityPrivilege — Clear Logs and Operate Invisibly
External References #
- HackTricks — Windows Local Privilege Escalation
- PayloadsAllTheThings — Windows PrivEsc
- MITER ATT&CK — Privilege Escalation
- LOLDrivers — Vulnerable Driver List
Complete Series Index #
Complete operational guide for every Windows privilege exploitable in a pentest:
- SeImpersonatePrivilege — Potato Attack from Webshell to SYSTEM
- SeAssignPrimaryTokenPrivilege — Potato Attack Even Without SeImpersonate
- SeBackupPrivilege — Dump SAM and NTDS.dit without Shell on DC
- SeRestorePrivilege — Binary Replacement and Persistent Backdoor
- SeDebugPrivilege — LSASS Dump and Credential Access
- SeTakeOwnershipPrivilege — Arbitrary Ownership on Files and SYSTEM Services
- SeLoadDriverPrivilege — BYOVD, Kernel Code Execution and Kill EDR
- SeCreateSymbolicLinkPrivilege — Symlink Attack and Arbitrary Writing
- SeManageVolumePrivilege — Raw Disk Access to Extract SAM and NTDS.dit
- SeDelegateSessionUserImpersonatePrivilege — Cross-Session Token Stealing on RDS
- SeCreateTokenPrivilege — Token Forgery from Scratch with NtCreateToken
- SeTcbPrivilege — Arbitrary Logon Session via LSA
- SeSecurityPrivilege — Clear Logs and Operate Invisibly
- SeTrustedCredManAccessPrivilege — Dump RDP Credentials and Saved Passwords
- SeRelabelPrivilege — Bypass Mandatory Integrity Control
- SeMachineAccountPrivilege — RBCD from Domain User to Domain Admin
- SeSystemEnvironmentPrivilege — PATH Hijacking and UEFI Persistence
Found a perk not listed here or need support for a specific engagement? hackita.it/supporto
For complete assessments of privilege escalation and Active Directory: hackita.it/servizi








