#!/usr/bin/env bash # Prowler - the handy cloud security tool (copyright 2018) by Toni de la Fuente # # Licensed under the Apache License, Version 2.0 (the "License"); you may not # use this file except in compliance with the License. You may obtain a copy # of the License at http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software distributed # under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR # CONDITIONS OF ANY KIND, either express or implied. See the License for the # specific language governing permissions and limitations under the License. CHECK_ID_extra7133="7.133" CHECK_TITLE_extra7133="[extra7133] Check if RDS instances have multi-AZ enabled" CHECK_SCORED_extra7133="NOT_SCORED" CHECK_TYPE_extra7133="EXTRA" CHECK_SEVERITY_extra7133="Medium" CHECK_ASFF_RESOURCE_TYPE_extra7133="AwsRdsDbInstance" CHECK_ALTERNATE_check7133="extra7133" CHECK_SERVICENAME_extra7133="rds" CHECK_RISK_extra7133='In case of failure; with a single-AZ deployment configuration; should an availability zone specific database failure occur; Amazon RDS can not automatically fail over to the standby availability zone.' CHECK_REMEDIATION_extra7133='Enable multi-AZ deployment for production databases.' CHECK_DOC_extra7133='https://aws.amazon.com/rds/features/multi-az/' CHECK_CAF_EPIC_extra7133='Data Protection' extra7133(){ for regx in $REGIONS; do RDS_INSTANCES=$($AWSCLI rds describe-db-instances $PROFILE_OPT --region $regx --query 'DBInstances[*].DBInstanceIdentifier' --output text) if [[ $RDS_INSTANCES ]];then for rdsinstance in ${RDS_INSTANCES}; do RDS_NAME="$rdsinstance" MULTIAZ_FLAG=$($AWSCLI rds describe-db-instances $PROFILE_OPT --region $regx --db-instance-identifier $rdsinstance --query 'DBInstances[*].MultiAZ' --output text) if [[ $MULTIAZ_FLAG == "True" ]];then textPass "$regx: RDS instance: $RDS_NAME has multi-AZ enabled" "$rex" else textFail "$regx: RDS instance: $RDS_NAME has multi-AZ disabled!" "$regx" fi done else textInfo "$regx: no RDS instances found" "$regx" fi done }