Vulnerability Discussion
By limiting the number of failed logon attempts, the risk of unauthorized system access via user password guessing, otherwise known as brute-force attacks, is reduced. Limits are imposed by locking the account.
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/password-auth" file:
$ grep pam_faillock.so /etc/pam.d/password-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/password-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 AlmaLinux OS 9 to include the use of the pam_faillock.so module in the /etc/pam.d/password-auth file.
Add/modify the appropriate sections of the "/etc/pam.d/password-auth" file to match the following lines, ensuring that the "preauth" line is listed before pam_unix.so.
auth required pam_faillock.so preauth
auth required pam_faillock.so authfail
account required pam_faillock.so
Note: Do not simply copy these three lines into the file; their location/order is important.