RBCD abuse → SYSTEM on a domain host
A user with GenericAll/GenericWrite on a computer object writes msDS-AllowedToActOnBehalfOfOtherIdentity, then uses S4U2self/S4U2proxy to impersonate any user (including Administrator) on that host.
§ Context
Assumed environment: attacker controls a principal with write rights to msDS-AllowedToActOnBehalfOfOtherIdentity on at least one computer account, and can create or already owns a computer account with an SPN.
§ Steps
- 01Compromised user with WriteDACL on targetInitial AccessT1078— Valid Accounts
- 02Create / use attacker-controlled computer accountPersistenceT1136— Create Account
addcomputer.py — requires MachineAccountQuota > 0.
- 03S4U2self + S4U2proxy as AdministratorLateral MovementAD-RBCD— Resource-Based Constrained Delegation (RBCD) Abuse
getST.py -spn cifs/<target> -impersonate Administrator <dom>/<attacker>$
- 04Write msDS-AllowedToActOnBehalfOfOtherIdentityLateral MovementAD-RBCD— Resource-Based Constrained Delegation (RBCD) Abuse
rbcd.py -delegate-to <target>$ -delegate-from <attacker>$ -action write
- 05PSExec / SMB exec on target as AdministratorLateral MovementT1021.002— SMB/Windows Admin Shares
§ References
- T1078Valid Accounts
- T1136Create Account
- T1021.002SMB/Windows Admin Shares
§ Frequently asked
- What is the "RBCD abuse → SYSTEM on a domain host" attack path?
- A user with GenericAll/GenericWrite on a computer object writes msDS-AllowedToActOnBehalfOfOtherIdentity, then uses S4U2self/S4U2proxy to impersonate any user (including Administrator) on that host. It chains 5 steps drawn from real-world offensive-security techniques.
- What starting position does this attack require?
- The first step is Compromised user with WriteDACL on target (T1078) — a initial access primitive. Assumed environment: attacker controls a principal with write rights to msDS-AllowedToActOnBehalfOfOtherIdentity on at least one computer account, and can create or already owns a computer account with an SPN.
- What is the final impact of this kill-chain?
- The final step lands on PSExec / SMB exec on target as Administrator (T1021.002), which falls under Lateral Movement. From here, an operator typically pivots into post-exploitation or maintains persistence.
- How can defenders detect or prevent this attack?
- Detection and prevention vary per step. Refer to each linked MITRE ATT&CK entry under "References" — every technique on that page lists defensive controls, detection telemetry, and known threat-actor usage.
§ Related dossiers
- Shared techniques3
MachineAccountQuota abuse → RBCD takeover of a server
Default ms-DS-MachineAccountQuota = 10 lets any authenticated user create a computer account, which can then be used as the source principal in an RBCD attack.
- Shared techniques2
mitm6 IPv6 SLAAC → NTLM relay → DA
Even when IPv4 is hardened, Windows clients prefer IPv6 with default DHCPv6. mitm6 makes the attacker the IPv6 DNS server, advertises wpad, and relays the captured NTLM to LDAPS for RBCD.
- Shared techniques2
noPac / sAMAccountName spoofing → Domain Admin
Combine CVE-2021-42278 (sAMAccountName validation) and CVE-2021-42287 (PAC confusion) to impersonate a DC as a low-priv user.