Vulnerability Discussion
The macOS must be configured to require at least one special character be
used when a password is created.
Special characters are those characters that are not alphanumeric. Examples include: ~ ! @ # $ % ^ *.
This rule enforces password complexity by requiring users to set passwords that are less vulnerable to
malicious users.
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 on common complexity
values, but an organization may define its own password complexity rules.
Check
Verify the macOS system is configured to require passwords contain a minimum of one
special character with the following command:
/usr/bin/pwpolicy -getaccountpolicies 2> /dev/null | /usr/bin/tail +2 | /usr/bin/xmllint --xpath
'boolean(//*[contains(text(),"policyAttributePassword matches '\''(.*[^a-zA-Z0-9].*){1,}'\''")])' -
If the result is not "true", this is a finding.
Fix
Configure the macOS system to require passwords contain a minimum of
one special character by installing the "com.apple.mobiledevice.passwordpolicy" configuration profile.