Overpass-the-Hash
Mimikatz
Create a new process with dummy creds (Logon type 9), open the LSASS process and patch it with the supplied NT hash. This causes the normal Kerberos authentication process to kick off as normal as if the user had normally logged on, turning the supplied hash into a fully-fledged TGT:
It also work for local accounts but for the reason that patching LSASS does not change the security information or user information for this process, the new credentials in LSASS can correctly be used only for network authentication and not for identifying the local user account associated with the process. (paraphrased from here)
That's why for local accounts such options as net use \\localhost\c$
, WMI calls or PsExec can be considered.
Rubeus
Create a sacrificial process (Logon type 9), legitimately ask Kerberos for TGT, import it and interact with the process (need elevated context):
If operating Rubeus from a C2 agent, you can steal_token instead of using /show
option.
Create a new process with dummy creds (Logon type 9) manually, then use Rubeus with user's NT hash to ask for a TGT and import it:
A more opsec safe approach is to use AES key (KeyType 0x12) instead of RC4-HMAC (KeyType 0x17) alongside with /opsec
switch which instructs Rubeus not to do pre-auth (mimics standard Kerberos behavior):
Last updated