Impersonation
Make Token
Creates an access token using plaintext credentials. No impact on local actions - only affects network interactions.
Does NOT require high integrity.
make_token INLANEFREIGHT\tmorgan Passw0rd!
[+] Impersonated INLANEFREIGHT\tmorgan (netonly)
ls \\ilf-ws-1\c$Steal Token
Steals the primary access token from a process running as a different user.
Requires high integrity.
ps
PID PPID Name Arch Session User
--- ---- ---- ---- ------- ----
5248 1864 cmd.exe x64 0 INLANEFREIGHT\tmorgan
5256 5248 conhost.exe x64 0 INLANEFREIGHT\tmorgan
5352 5248 mmc.exe x64 0 INLANEFREIGHT\tmorgan
steal_token 5248
[+] Impersonated INLANEFREIGHT\tmorganToken Store
Permanently holds a reference to tokens, even after the original process closes.
Pass the Hash (Avoid if Possible)
⚠️ Prefer Pass the Ticket - NTLM is anomalous and may be restricted in hardened environments.
Pass the Ticket
Superior to PtH:
Kerberos auth is not anomalous
Not restricted like NTLM
Uses native Windows APIs (doesn't patch LSASS)
Not prevented by PPL
Request TGT with AES256
Using NTLM hash returns RC4-encrypted tickets (not advisable).
Inject TGT (kerberos_ticket_use)
Requires .kirbi file on the CS client machine.
Convert base64 ticket to .kirbi:
⚠️ Injecting a TGT overwrites any existing ticket in the logon session.
Create new logon session first (fake password):
Inject TGT (Rubeus Method)
Rubeus ptt accepts base64 tickets directly and works with both TGTs and service tickets.
Create hidden process in new logon session:
The getuid Confusion
steal_tokenandgetuidreturn the username from the primary access token, not the impersonated user from PtT/PtH. This is expected behavior.
Process Injection
Inject Beacon shellcode directly into a process owned by another user.
Requires high integrity.
Drop Impersonation
Quick Reference
make_token
Plaintext creds
Network access as user
steal_token
High integrity + target process
Impersonate logged-in user
token-store
High integrity
Persistent token reference
pth
NTLM hash
Legacy/last resort
Pass the Ticket
AES256/NTLM hash
Preferred impersonation
inject
High integrity + target process
Full Beacon as user
Last updated