Vulnerability Discussion
Use of a complex password helps to increase the time and resources required to compromise the password. Password complexity, or strength, is a measure of the effectiveness of a password in resisting attempts at guessing and brute-force attacks. Password complexity is one factor of several that determines how long it takes to crack a password. The more complex the password, the greater the number of possible combinations that need to be tested before the password is compromised. RHEL 9 utilizes "pwquality" as a mechanism to enforce password complexity. Note that to require special characters without degrading the "minlen" value, the credit value must be expressed as a negative number in "/etc/security/pwquality.conf".
Check
Verify that RHEL 9 enforces password complexity by requiring at least one special character with the following command:
$ sudo grep ocredit /etc/security/pwquality.conf /etc/security/pwquality.conf.d/*.conf
ocredit = -1
If the value of "ocredit" is a positive number or is commented out, this is a finding.
Fix
Configure RHEL 9 to enforce password complexity by requiring at least one special character be used by setting the "ocredit" option.
Add the following line to "/etc/security/pwquality.conf" (or modify the line to have the required value):
ocredit = -1