Adversaries may attempt to access detailed information about the password policy used within an enterprise network or cloud environment. Password policies are a way to enforce complex passwords that are difficult to guess or crack through Brute Force. This information may help the adversary to create a list of common passwords and launch dictionary and/or brute force attacks which adheres to the policy (e.g. if the minimum password length should be 8, then not trying passwords such as 'pass123'; not checking for more than 3-4 passwords per account if the lockout is set to 6 as to not lock out accounts).
Password policies can be set and discovered on Windows, Linux, and macOS systems via various command shell utilities such as net accounts (/domain), Get-ADDefaultDomainPasswordPolicy, chage -l , cat /etc/pam.d/common-password, and pwpolicy getaccountpolicies [1] [2]. Adversaries may also leverage a Network Device CLI on network devices to discover password policy information (e.g. show aaa, show aaa common-criteria policy all).[3]
Password policies can be discovered in cloud environments using available APIs such as GetAccountPasswordPolicy in AWS [4].
| ID | Name | Description |
|---|---|---|
| G0114 | Chimera |
Chimera has used the NtdsAudit utility to collect information related to accounts and passwords.[5] |
| S0488 | CrackMapExec |
CrackMapExec can discover the password policies applied to the target system.[6] |
| S0236 | Kwampirs |
Kwampirs collects password policy information with the command |
| S0039 | Net |
The |
| G0049 | OilRig |
OilRig has used net.exe in a script with |
| C0012 | Operation CuckooBees |
During Operation CuckooBees, the threat actors used the |
| S0378 | PoshC2 |
PoshC2 can use |
| G0010 | Turla |
Turla has used |
| ID | Mitigation | Description |
|---|---|---|
| M1027 | Password Policies |
Ensure only valid password filters are registered. Filter DLLs must be present in Windows installation directory ( |
| ID | Name | Analytic ID | Analytic Description |
|---|---|---|---|
| DET0161 | Password Policy Discovery – cross-platform behavior-chain analytics | AN0455 |
Cause→effect chain: (1) a user or service spawns a shell/PowerShell that queries local/domain password policy via commands/cmdlets (e.g., |
| AN0456 |
Chain: (1) interactive/non-interactive |
||
| AN0457 |
Chain: (1) execution of |
||
| AN0458 |
Chain: (1) cloud API calls that fetch tenant/organization password policy (e.g., AWS |
||
| AN0459 |
Chain: (1) IdP policy/read operations by a principal (e.g., Microsoft Entra/Graph requests to read password or authentication policies); (2) adjacent risky changes (role assignment, app consent) by same principal. Use IdP audit logs. |
||
| AN0460 |
Chain: (1) SaaS admin API or PowerShell remote session reads tenant password/authentication settings (e.g., M365 Unified Audit Log ‘Cmdlet’ with |
||
| AN0461 |
Chain: (1) privileged CLI sessions run read-only commands that dump AAA/password policies (e.g., |