BaselineWatch
Desk

pwpolicy_history_enforce Prohibit Password Reuse for a Minimum of $ODV Generations

NIST macOS Security Compliance Project Sequoia Guidance, Revision 4.0 (be5491f)
All changes in this version
first version loaded Password policy

Title

Prohibit Password Reuse for a Minimum of $ODV Generations

Control

/usr/bin/pwpolicy -getaccountpolicies 2> /dev/null | /usr/bin/tail +2 | /usr/bin/xmllint --xpath '//dict/key[text()="policyAttributePasswordHistoryDepth"]/following-sibling::*[1]/text()' - | /usr/bin/awk '{ if ($1 >= $ODV ) {print "pass"} else {print "fail"}}' | /usr/bin/uniq

Discussion

The macOS _MUST_ be configured to enforce a password history of at least $ODV previous passwords when a password is created.

This rule ensures that users are not allowed to reuse a password that was used in any of the $ODV previous password generations.

Limiting password reuse protects against malicious users attempting to gain access to the system via brute-force hacking methods.

NOTE: The guidance for password based authentication in NIST 800-53 (Rev 5) and NIST 800-63B state that complexity rules should be organizationally defined. The values defined are based off of common complexity values. But your organization may define its own password complexity rules.

Related controls

ia-5.1

Fix

This is implemented by a Configuration Profile.