userAccountControl 4194816: User, no Kerberos preauthentication
userAccountControl Decoder: Decode Active Directory userAccountControl values (512, 514, 66048, 532480) into flags, see what each means and how to set it, or build one.
Active Directory keeps an account's switches (disabled, password never expires, trusted for delegation…) as bits added up in
its userAccountControl attribute: 66048 is 65536 + 512. Type a value from ADSI Edit, Get-ADUser -Properties
userAccountControl or a security report to see which flags it holds, what each means and how to change it, or tick flags
below to build one. Flag names and values are from Microsoft's
UserAccountControl property flags.
User, no Kerberos preauthentication
4194816 = 0x400200 = 512 + 4194304
| Value | Flag | Meaning |
|---|---|---|
| 512 0x200 |
NORMAL_ACCOUNT | An ordinary user account. Every user has it; 512 alone is a plain, enabled user. |
| 4194304 0x400000 |
DONT_REQ_PREAUTH review |
Kerberos pre-authentication isn't required. Anyone can request data for this account and try to crack its password offline (AS-REP roasting). Clear it unless something old needs it. Active Directory Users and Computers: "Do not require Kerberos preauthentication" PowerShell: Set-ADAccountControl -DoesNotRequirePreAuth $true |
Find accounts like this
| Exactly this value | Get-ADObject -LDAPFilter "(userAccountControl=4194816)" -Properties userAccountControl |
|---|---|
| Users with these flags | Get-ADUser -LDAPFilter "(userAccountControl:1.2.840.113556.1.4.803:=4194304)" |
| LDAP filter | (userAccountControl:1.2.840.113556.1.4.803:=4194304) |