Microsoft is deprecating legacy Kerberos RC4 encryption. Prepare your Active Directory for the July 2026 enforcement deadline and migrate to AES keys.
Enterprise identity teams face a critical Active Directory hardening deadline as Microsoft completes its phased elimination of legacy RC4-HMAC encryption in Kerberos authentication. While the initial default enforcement phase launched on April 14, 2026, forcing Kerberos Key Distribution Centers (KDCs) to default to AES-SHA1 (0x18), the upcoming July 2026 cumulative security updates permanently remove the temporary registry escape hatch (RC4DefaultDisablementPhase). This strips administrators of the ability to roll back enforcement, leaving unmigrated service accounts vulnerable to immediate authentication failures.
1. Timeline and Deadline Context: Escape Hatch Removal
Microsoft's deprecation strategy for legacy Kerberos ciphers spans a three-phase rollout. Understanding the distinction between phases is vital: the operational break occurs when KDC defaults change, whereas the July milestone eliminates administrative rollback capability.
During Phase 1 (January 13, 2026), security updates introduced dedicated KDC audit logging without altering ticket issuance. Phase 2 (April 14, 2026) set the domain controller default supported encryption types (DefaultDomainSupportedEncTypes) to AES-SHA1 only (0x18) for accounts lacking explicit configuration in the msDS-SupportedEncryptionTypes attribute. This represented the primary operational breaking point for workloads expecting implicit RC4 fallback.
| Rollout Phase | Target Date | KDC Default Behavior | Temporary Registry Key (RC4DefaultDisablementPhase) | Operational Impact |
|---|---|---|---|---|
| Phase 1: Initial Deployment | January 13, 2026 | Legacy fallback allowed; audit logging enabled | 0 = Unconfigured, 1 = Audit/Warn, 2 = Opt-in Enforcement | Audit events 201–209 populate in System log; no ticket issuance changes. |
| Phase 2: Default Enforcement | April 14, 2026 | Set to AES-SHA1 (0x18) for unconfigured accounts | Active (0, 1, or 2 respected); set 1 to override enforcement | Unmigrated accounts lacking AES keys fail; admins can temporarily defer enforcement. |
| Phase 3: Final Enforcement | July 2026 | Mandatory AES enforcement; no implicit RC4 fallback | Permanently ignored / deprecated by KDC service | Rollback mechanism removed completely; explicit per-account overrides remain discouraged. |
The temporary registry escape hatch located under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\Kerberos\Parameters allows administrators to set RC4DefaultDisablementPhase (REG_DWORD) to 1 to temporarily bypass enforcement during Phase 2. Starting with the July 2026 release, domain controllers will ignore this registry key entirely. While explicitly set per-account overrides (configuring msDS-SupportedEncryptionTypes to include 0x4) remain technically readable at the protocol level, retaining explicit RC4 flags exposes identity environments to ongoing cryptographic risk.
2. Technical Threat Analysis: CVE-2026-20833
The security driver behind this removal is tracked as CVE-2026-20833, rated CVSS 5.5 Medium (AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N) under CWE-327 (Use of a Broken or Risky Cryptographic Algorithm). The flaw allows authenticated low-privileged users to request service tickets encrypted with legacy RC4-HMAC (etype 23 / 0x17) and execute offline password-cracking attacks (Kerberoasting).
Because RC4-HMAC derives keys directly from NTLM password hashes without modern key-derivation functions, attackers crack RC4 service tickets exponentially faster than AES-128 or AES-256 equivalents. CVE-2026-20833 resolves residual exposure stemming from historical domain configurations where msDS-SupportedEncryptionTypes remained unset (null or 0x0).
3. Log Auditing Playbook: Identifying Legacy Encryption Usage
Identifying affected accounts requires monitoring KDC operational events in the System log alongside Kerberos ticket requests in the Security log.
KDC Operational Audit Events (System Log)
Active Directory DCs log dedicated KDCSVC audit events (IDs 201–209) to surface RC4 dependencies:
| Event ID | Level | Description and Remediation Context |
|---|---|---|
| 201 | Warning | Client requested RC4; service account lacks msDS-SupportedEncryptionTypes; KDC defaulted to RC4. |
| 202 | Warning | Service account lacks configured AES encryption keys (password not reset since AES enablement). |
| 203 | Error | Ticket request blocked under Phase 2/3 enforcement due to Event 201 conditions. |
| 204 | Error | Ticket request blocked under Phase 2/3 enforcement due to Event 202 conditions. |
| 205 | Warning | DefaultDomainSupportedEncTypes explicitly permits legacy ciphers (logged at KDC start). |
| 206 | Warning | Client device lacks AES support, but target service or domain requires AES. |
| 207 | Warning | Target service account lacks AES keys, but client or domain settings require AES. |
| 208 | Error | Ticket denied because client lacks required AES support (Enforcement mode). |
| 209 | Error | Ticket denied because service account lacks required AES keys (Enforcement mode). |
Note: The absence of audit events does not guarantee non-Windows devices will authenticate post-enforcement; direct interop testing remains mandatory.
Security Log Ticket Auditing (Events 4768 and 4769)
Verify audit policy on domain controllers:
auditpol /get /subcategory:"Kerberos Service Ticket Operations"
Monitor Event 4768 (TGT Requests) and Event 4769 (Service Tickets) for TicketEncryptionType 0x17 (RC4-HMAC). Filter events using XPath:
<QueryList>
<Query Id="0" Path="Security">
<Select Path="Security">
*[System[(EventID=4768 or EventID=4769)]] and *[EventData[Data[@Name='TicketEncryptionType']='0x17']]
</Select>
</Query>
</QueryList>
4. Migration Walkthrough: Transitioning Accounts to AES
Upgrading Active Directory accounts requires updating attribute flags and generating AES key material.
Step 1: Discover At-Risk Service Accounts
Query Active Directory for SPN-bearing accounts lacking explicit AES configurations:
Get-ADUser -Filter 'servicePrincipalName -like "*"' -Properties msDS-SupportedEncryptionTypes, servicePrincipalName, PasswordLastSet |
Where-Object { $_. "msDS-SupportedEncryptionTypes" -eq $null -or $_. "msDS-SupportedEncryptionTypes" -eq 0 -or ($_. "msDS-SupportedEncryptionTypes" -band 0x4) } |
Select-Object sAMAccountName, PasswordLastSet, msDS-SupportedEncryptionTypes, servicePrincipalName
Step 2: Configure Supported Encryption Types
Set msDS-SupportedEncryptionTypes to support AES128 (0x8) and AES256 (0x10), combining to 0x18 (24 decimal):
Set-ADUser -Identity "svc-sql-prod" -KerberosEncryptionType AES128, AES256
Bitmask Reference:
0x4: RC4_HMAC_MD5 only (Vulnerable)0x8: AES128_CTS_HMAC_SHA1_960x10: AES256_CTS_HMAC_SHA1_960x18: AES128 + AES256 (Production Target)0x38: AES128 + AES256 + AES Session Keys
Step 3: Rekey Service Accounts (Mandatory Step)
Setting attribute 0x18 only modifies account metadata; it does not generate AES password hashes. Active Directory stores cryptographic keys generated at the time of password creation. If an account's password predates AES enablement, AD contains only legacy RC4 hashes. When the KDC demands AES for an account lacking AES keys, authentication fails immediately.
- Execute a controlled password reset on the service account to compute
aes128-ctsandaes256-ctskeys. - For accounts created prior to Windows Server 2008 functional levels, perform a double password reset to clear legacy key history.
- Rotate domain KRBTGT keys twice, allowing for replication latency.
Step 4: Configure Domain Baselines and GPO
Set KDC domain default supported encryption types via registry:
reg add "HKLM\System\CurrentControlSet\Services\KDC" /v "DefaultDomainSupportedEncTypes" /t REG_DWORD /d 0x18 /f
In Group Policy (Computer Configuration -> Windows Settings -> Security Settings -> Local Policies -> Security Options), set "Network security: Configure encryption types allowed for Kerberos" to permit AES128_HMAC_SHA1 and AES256_HMAC_SHA1, while unchecking RC4_HMAC_MD5.
5. Contingency Planning and Failure Modes
Disabling RC4 can trigger authentication issues across legacy workloads. Identity teams should prepare for common failure patterns.
Silent NTLM Fallback and Key Mismatch
If msDS-SupportedEncryptionTypes is set to 0x18 without resetting the password, Kerberos ticket requests fail, causing applications (such as SQL Server or IIS) to silently fall back to NTLM authentication. This bypasses Kerberos delegation rules and breaks multi-tier authentication. Domain diagnostics reveal the missing key:
The account svc-sql did not have a suitable key for generating a Kerberos ticket
(missing key ID 9). The requested etypes were 18 17. The account's available etypes were 23.
Changing or resetting the password of svc-sql will generate a proper key.
Additional Failure Modes & Interoperability Checklist
KRB_AP_ERR_MODIFIEDErrors: Occur when application hosts receive tickets encrypted with ciphers disabled by local policy or when accounts retain null encryption attributes.- Delegation Disruptions: Constrained and unconstrained delegation breaks if any service account in the delegation path lacks valid AES key material.
- Linux and Java Keytabs: Resetting a service account password invalidates existing keytab files (
.keytab). Update Java/MITkrb5.confsettings to enforceaes256-cts-hmac-sha1-96andaes128-cts-hmac-sha1-96, then regenerate and deploy new keytabs usingadcliorktutil. - Legacy Systems: Legacy NAS arrays, embedded network appliances, and pre-Windows Server 2008 OS instances lacking AES support must be isolated or upgraded prior to the July 2026 enforcement update.