Vulnerability Discussion
If the pam_faillock.so module is not loaded, the system will not correctly lockout accounts to prevent password guessing attacks.
Check
Verify the pam_faillock.so module is present in the "/etc/pam.d/system-auth" file:
$ grep pam_faillock.so /etc/pam.d/system-auth
auth required pam_faillock.so preauth
auth required pam_faillock.so authfail
account required pam_faillock.so
If the pam_faillock.so module is not present in the "/etc/pam.d/system-auth" file with the "preauth" line listed before pam_unix.so, this is a finding.
If the system administrator (SA) can demonstrate that the required configuration is contained in a PAM configuration file included or substacked from the system-auth file, this is not a finding.
Fix
Configure RHEL 9 to include the use of the pam_faillock.so module in the /etc/pam.d/system-auth file.
Add/modify the appropriate sections of the "/etc/pam.d/system-auth" file to match the following lines:
Note: The "preauth" line must be listed before pam_unix.so.
auth required pam_faillock.so preauth
auth required pam_faillock.so authfail
account required pam_faillock.so
auth required pam_deny.so