- August 2, 2021
- Posted by: administrator
- Category: Netwrix
With cyberattacks exploding around the world, it’s more important than ever for organizations to have a robust password policy. Hackers often gain access to corporate networks through legitimate user or admin credentials, leading to security incidents and compliance failures. In this article, we will explore how to create and maintain a strong and effective Active Directory password policy.
How Attackers Compromise Corporate Passwords
Hackers use a variety of techniques to compromise corporate passwords, including the following:
- Brute force attack — Hackers run programs that enter various potential password combinations until they hit upon the right one.
- Dictionary attack — This is a specific form of brute force attack that involves trying words found in the dictionary as possible passwords.
- Password spraying attack — Hackers enter a known username or other account identifier and try multiple common passwords to see if they work.
- Credential stuffing attack — Hackers use automated tools to enter lists of credentials against various company login portals.
- Spidering — Malicious users collect as much information as possible about a hacking target, and then try out password combinations created using that data.
How to View and Edit Active Directory Password Policy
To defend against these attacks, organizations need a strong Active Directory password policy. Password policies define different rules for password creation, such as minimum length, details about the complexity (like whether a special character is required), and the length of time the password lasts before it must be changed.
Default Domain Policy is a Group Policy object (GPO) that contains settings that affect all objects in the domain. To view and configure a domain password policy, admins can use the Group Policy Management Console (GPMC). Expand the Domains folder and choose the domain whose policy you want to access, and then choose Group Policy Objects. Right-click the Default Domain Policy folder and select Edit. Navigate to Computer Configuration -> Policies -> Windows Settings -> Security Settings -> Account Policies -> Password Policy.
Alternatively, you can access your domain password policy by executing the following PowerShell command:
Remember, any changes you make to the default domain password policy apply to every account within that domain. You can create and manage fine-grained password policies using the Active Directory Management Center (ADAC) in Windows Server.
Understanding AD Password Policy Settings
Here are the six password policy settings and their default values:
- Enforce password history — Default is 24. This setting specifies the number of unique passwords users must create before reusing an old password. Keeping the default value is recommended to reduce the risk of users having passwords that have been compromised.
- Maximum password age — Default is 42. This setting establishes how long a password can exist before the system forces the user to change it. Users typically get a pop-up warning when they reach the end of their password expiration period. You can check this setting through PowerShell by executing the command net user USERNAME/domain. Keep in mind that forcing frequent password changes can lead to users writing their passwords down or adopting practices like appending the month to a stem word they reuse, which actually increase security risks. Setting “Maximum password age” to 0 means that passwords never expire (which is generally not recommended).
- Minimum password age — Default is 1 day. This setting specifies how long a password must exist before the user is permitted to change it. Setting a minimum age keeps users from resetting their password repeatedly to circumvent the “Enforce password history” setting and reuse a favorite password immediately.
- Minimum password length — Default is 7. This setting establishes the fewest number of characters a password can have. While shorter passwords are easier for hackers to crack, requiring really long passwords can lead to lockouts from mistyping and to security risks from users writing down their passwords.
- Complexity requirements — Default is Enabled. This setting details the types of characters a user must include in a password string. Best practices recommend enabling this setting with a minimum password length of at least 8; this makes it harder for brute force attacks to succeed. Complexity requirements typically require the password to include a mix of:
- Upper or lowercase letters (A through Z and a through z)
- Numeric characters (0–9)
- Non-alphanumeric characters like $, # or %
- No more than two symbols from the user’s account name or display name
- Store passwords using reversible encryption — Default is Disabled. This setting offers support for apps that require users to enter a password for authentication. Admins should keep this setting disabled because enabling it would allow attackers familiar with how breaking this encryption to log into the network once they compromise the account. As an exception, you can enable this setting when using Internet Authentication Services (IAS) or the Challenge Handshake Authentication Protocol (CHAP).
Fine-Grained Policy and How It’s Configured
Older versions of AD allowed the creation of just one password policy for each domain. The introduction of fine-grained password policies (FGPP) in later versions of AD has made it possible for admins to create multiple password policies to better meet business needs. For example, you might want to require admin accounts to use more complex passwords than regular user accounts. It’s important that you define your organizational structure thoughtfully so it maps to your desired password policies.
While you define the default domain password policy within a GPO, FGPPs are set in password settings objects (PSOs). To set them up, open the ADAC, click on your domain, navigate to the System folder, and then click on the Password Settings Container.
NIST SP 800-63 Password Guidelines
The National Institute of Standards (NIST) is a federal agency charged with issuing controls and requirements around managing digital identities. Special Publication 800-63B covers standards for passwords. Revision 3 of SP 800-63B, issued in 2017 and updated in 2019, is the current standard.
These guidelines provide organizations with a foundation for building a robust password security infrastructure. NIST recommendations include the following:
- Require user-generated passwords to be at least 8 characters long (6 for machine-generated ones).
- Allow users to create passwords up to 64 characters long.
- Allow users to use any ASCII/Unicode characters in their passwords.
- Disallow passwords with sequential or repeated characters.
- Do not require frequent password changes. Although for years, many organizations have required users to change their passwords frequently, this policy often leads to users making incremental changes to a base password, writing their passwords down, or experiencing lockouts because they forget their new passwords. Accordingly, the latest NIST 800-63B standards call for using password expiration policies carefully. More recent research suggests that better alternatives include using banned password lists, using longer passphrases and enforcing multi-factor authentication for additional security.
AD Password Policy Best Practices
More broadly, administrators should make sure to:
- Set a minimum password length of 8 characters.
- Establish password complexity requirements.
- Enforce a password history policy that looks back at the last 10 passwords of a user.
- Make the minimum password age 3 days.
- Reset local admin passwords every 180 days (consider using the free Netwrix Bulk Password Reset tool for that).
- Reset device account passwords during maintenance once per year.
- Require passwords for domain admin accounts to be at least 15 characters long.
- Set up email notifications to let users know passwords are set to expire (the free Netwrix Password Expiration Notifier tool can help).
- Consider creating granular password policies to link up with specific organizational units instead of editing the Default Domain Policy settings.
- Use banned password lists.
- Use password management tools to store multiple passwords.
For more information, read our password policy best practices for strong security in AD.
User education is just as crucial as any password policy. Educate your users on the following rules of behavior:
- Don’t write down passwords. Instead, pick strong passwords or passphrases you can recall easily, and use password management tools.
- Don’t type your password when anyone is watching.
- Understand that HTTPS:// addresses are more secure than HTTP:// URLs.
- Don’t use the same password for multiple websites that provide access to sensitive information.
How do I find and edit my Active Directory password policy?
You can find your current AD password policy for a specific domain either by navigating to Computer Configuration -> Policies -> Windows Settings -> Security Settings -> Account Policies -> Password Policy via the management console, or by using the PowerShell command Get-ADDefaultDomainPasswordPolicy.
Are passwords encrypted in Active Directory?
Yes. Passwords created by a user go through a hashing algorithm that encrypts them.
What is Active Directory password complexity?
Complexity requirements control the characters that cannot or cannot be included in a password. For example, users might be prevented from using their username as their password, or required to include at least one number and one lowercase letter in the password.
What is Windows Server password policy?
Windows Server password policy controls passwords for accessing Windows servers.
How do I find, edit or disable a password policy in Windows Server?
Locate the GPO through the Group Policy Management Console and click Edit.
What is a good password policy?
Best practices include the following:
- Make users create at least10 new passwords before reusing an old one.
- Apply a maximum password age of 42 days.
- Apply a minimum password age of 3 days.
- Make users create passwords that are at least 8 characters long.
- Enable the “Complexity requirements” option.
- Disable reversible encryption.
NOTE:: This article is copyright by netwrix.com and we are using it for educational or Information purpose only