7.5 Ensure Password Complexity Policies are in Place

Information

Password complexity includes password characteristics such as length, case, numerical, and character sets.

Complex passwords help mitigate dictionary, brute forcing, and other password attacks. This recommendation prevents users from choosing weak passwords which can easily be guessed.

Solution

Install component_validate_password component:

INSTALL COMPONENT 'file://component_validate_password';

Persist following configuration:

SET PERSIST validate_password.length=14;
SET PERSIST validate_password.check_user_name=ON;
SET PERSIST validate_password.dictionary_file=<path to dictionary file>;
SET PERSIST validate_password.policy=STRONG;

Optionally set one or more of these - ensuring complexity is not overly onerous

SET PERSIST validate_password.mixed_case_count=1;
SET PERSIST validate_password.number_count=1;
SET PERSIST validate_password.special_char_count=1;

And change passwords for users which have passwords which are identical to their username.

See Also

https://workbench.cisecurity.org/benchmarks/15503

Item Details

Category: IDENTIFICATION AND AUTHENTICATION

References: 800-53|IA-5(1), CSCv7|4.4

Plugin: MySQLDB

Control ID: cd4073d34655117880f54e8d25c250190e8622e77039b936640c3846266230db