Kerberoasting Remediation
Attack Overview
Kerberoasting allows any authenticated user to request service tickets (TGS) for accounts with SPNs, then crack passwords offline without detection. Privileged service accounts with weak passwords are primary targets.
Remediation Steps
Identify All Kerberoastable Accounts
Run discovery to find all user accounts with SPNs. Prioritize by privilege level.
Rotate Passwords to 25+ Characters
Immediately rotate passwords for all Kerberoastable accounts to 25+ character random strings. This makes offline cracking computationally infeasible.
Service Impact Warning
Coordinate with application owners before rotating service account passwords. Schedule changes during maintenance windows and have rollback procedures ready.
Convert to Group Managed Service Accounts (gMSA)
gMSAs automatically rotate passwords every 30 days with 240-character random passwords—completely eliminating Kerberoasting risk.
gMSA Benefits
240-character auto-rotating passwords, no password management overhead, supports multiple servers, fully integrated with AD.
Remove Unnecessary SPNs
If an SPN is no longer needed (service decommissioned), remove it to reduce attack surface.
Enable AES Encryption Only
Disable RC4 encryption for Kerberos. AES-encrypted tickets are harder to crack.
Compatibility Check
Disabling RC4 may break legacy applications. Test thoroughly in non-production first. Monitor Event ID 4768/4769 for Kerberos failures after change.
Implement Detection
Monitor for Kerberoasting activity using Windows Event Logs.
Implementation Timeline
AS-REP Roasting Remediation
Attack Overview
AS-REP Roasting targets accounts with "Do not require Kerberos preauthentication" enabled. Attackers can request AS-REP without knowing the password, then crack offline. This should NEVER be enabled unless absolutely required for legacy systems.
Identify AS-REP Roastable Accounts
Enable Kerberos Pre-Authentication
For each identified account, enable pre-authentication. This is a simple attribute change with no service impact in most cases.
Low Risk Change
Enabling pre-authentication is generally safe. The only legitimate use case is ancient Kerberos clients that don't support pre-auth—extremely rare in modern environments.
Prevent Future Occurrences
Create a scheduled task or monitoring rule to detect if this setting is ever re-enabled.
Kerberos Delegation Remediation
Attack Overview
Unconstrained Delegation: Any user who authenticates to a server with unconstrained delegation has their TGT stored in memory. Attackers can steal these TGTs to impersonate ANY user, including Domain Admins.
| Delegation Type | Risk Level | Remediation Priority |
|---|---|---|
| Unconstrained Delegation | CRITICAL | Immediate |
| Constrained Delegation with Protocol Transition | HIGH | High |
| Constrained Delegation (standard) | MEDIUM | Review |
| Resource-Based Constrained Delegation | LOW | Modern approach |
Identify All Delegation
Remove Unconstrained Delegation
Convert to constrained or resource-based constrained delegation.
Service Impact
Removing delegation will break applications that rely on it. Work with app owners to understand requirements and migrate to constrained delegation.
Implement Resource-Based Constrained Delegation (RBCD)
RBCD is the modern, more secure approach. Permission is configured on the target resource, not the source.
Protect Sensitive Accounts
Add high-value accounts to "Protected Users" group to prevent delegation abuse.
Stale Account Cleanup
Identify Stale Accounts
Validate with Managers/HR
Send report to department managers and HR to verify employees are still active.
Disable Confirmed Stale Accounts
Delete After Retention Period
Automate Ongoing Cleanup
Password Policy Hardening
| Setting | Weak Policy | Recommended |
|---|---|---|
| Minimum Length | 8 characters | 14+ characters |
| Complexity | Enabled | Enabled + passphrases |
| Maximum Age | 90 days | 365 days (with MFA) |
| History | 5 passwords | 24 passwords |
| Lockout Threshold | 0 (disabled) | 10-15 attempts |
| Lockout Duration | N/A | 15-30 minutes |
Update Default Domain Policy
Create Fine-Grained Policy for Privileged Accounts
Implement Banned Password List
Service Account Hardening
Inventory All Service Accounts
Document Account Usage
Implement Password Rotation Policy
Remove Unnecessary Privileges
AdminSDHolder Cleanup
What is AdminSDHolder?
AdminSDHolder is a container that defines the ACL template for all protected accounts (Domain Admins, etc.). Every 60 minutes, SDProp applies this ACL to protected accounts. Attackers can add backdoor permissions here for persistence.
Audit Current AdminSDHolder ACL
Remove Unauthorized ACEs
Clear Orphaned adminCount Flags
MFA Deployment Playbook
Why MFA is Critical
MFA blocks 99.9% of credential-based attacks. It's the single most impactful security control you can implement. Prioritize privileged accounts first, then expand to all users.