Skip to main content

Overview

High integrity (local admin) is not SYSTEM. Some post-exploitation tasks require SYSTEM — dumping LSASS, accessing certain registry hives, or interacting with services. Multiple paths to escalate.

Create New Service

Or for a command:
Cleanup:

PsExec

Sysinternals PsExec with -s flag runs as SYSTEM.
Interactive SYSTEM shell:
Remote SYSTEM:

Scheduled Task

Cleanup:

Named Pipes — Meterpreter getsystem

Meterpreter automates named pipe impersonation:
Three techniques:
  1. Named pipe impersonation (default)
  2. Token duplication
  3. Named pipe impersonation (RPCSS variant)

Token Manipulation

Incognito (Meterpreter)

PowerShell — Invoke-TokenManipulation


DLL Hijacking on SYSTEM Service

If a SYSTEM service loads DLL from writable path:
  1. Find writable DLL path (see Service Exploits)
  2. Drop malicious DLL
  3. Restart service → executes as SYSTEM

AlwaysInstallElevated → SYSTEM

If enabled, MSI installs as SYSTEM:
See Misconfigurations.

SeImpersonate → SYSTEM

If high integrity process has SeImpersonatePrivilege:
See Potato Attacks.

SeDebug + SeImpersonate

With both privileges, migrate into SYSTEM process:
Or via Meterpreter:

Parent PID Spoofing

Create process with SYSTEM process as parent:
Tools:

Quick Reference