mirror of
https://github.com/ghndrx/prowler.git
synced 2026-02-11 15:25:10 +00:00
37 lines
1.8 KiB
Bash
37 lines
1.8 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
# Prowler - the handy cloud security tool (c) by Toni de la Fuente
|
|
#
|
|
# This Prowler check is licensed under a
|
|
# Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
|
|
#
|
|
# You should have received a copy of the license along with this
|
|
# work. If not, see <http://creativecommons.org/licenses/by-nc-sa/4.0/>.
|
|
|
|
CHECK_ID_check110="1.10"
|
|
CHECK_TITLE_check110="[check110] Ensure IAM password policy prevents password reuse: 24 or greater (Scored)"
|
|
CHECK_SCORED_check110="SCORED"
|
|
CHECK_TYPE_check110="LEVEL1"
|
|
CHECK_SEVERITY_check110="Medium"
|
|
CHECK_ASFF_TYPE_check110="Software and Configuration Checks/Industry and Regulatory Standards/CIS AWS Foundations Benchmark"
|
|
CHECK_ALTERNATE_check110="check110"
|
|
CHECK_SERVICENAME_check110="iam"
|
|
CHECK_RISK_check110='Password policies are used to enforce password complexity requirements. IAM password policies can be used to ensure password are comprised of different character sets. It is recommended that the password policy require at least one uppercase letter.'
|
|
CHECK_REMEDIATION_check110='Ensure "Number of passwords to remember" is set to 24.'
|
|
CHECK_DOC_check110='https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_account-policy.html'
|
|
CHECK_CAF_EPIC_check110='IAM'
|
|
|
|
check110(){
|
|
# "Ensure IAM password policy prevents password reuse: 24 or greater (Scored)"
|
|
COMMAND110=$($AWSCLI iam get-account-password-policy $PROFILE_OPT --region $REGION --query 'PasswordPolicy.PasswordReusePrevention' --output text 2> /dev/null)
|
|
if [[ $COMMAND110 ]];then
|
|
if [[ $COMMAND110 -gt "23" ]];then
|
|
textPass "Password Policy limits reuse"
|
|
else
|
|
textFail "Password Policy has weak reuse requirement (lower than 24)"
|
|
fi
|
|
else
|
|
textFail "Password Policy missing reuse requirement"
|
|
fi
|
|
}
|