AWS cloud connector
1. What evidence does this connector collect?
ControlMap scans your AWS environment on a daily or a weekly basis for CIS best practices such as MFA being used, backups being enabled on RDS instances, and databases being encrypted.
You can read more about the best practices on the AWS-CIS website here.
For the complete list of evidence collected click on the 'Show' list of rules on AWS integration screen in ControlMap.
How does ControlMap connect to AWS?
ControlMap creates an IAM role with READ and LIST only permissions which it uses to connect to your environment and perform compliance checks. The role can be easily created by using a Cloud Formation template (clicking on the 'Create ControlMap role in your AWS' button on the integration screen in ControlMap).
Once the role is successfully created, provide the URN of the role in ControlMap settings. You can view the ARN of the role in the 'Outputs' tab of the Cloud Formation stack if you are using a CloudFormation stack.
What compliance checks does this connector collect?
- Avoid the use of the "root" account
- Ensure IAM password policy prevents password reuse
- Ensure IAM password policy expires passwords within 90 days or less
- Ensure no root account access key exists
- Ensure MFA is enabled for the "root" account
- Ensure hardware MFA is enabled for the "root" account
- Ensure IAM policies are attached only to groups or roles
- Ensure multi-factor authentication (MFA) is enabled for all IAM users that have a console password
- Ensure a support role has been created to manage incidents with AWS Support
- Ensure IAM policies that allow full "*:*" administrative privileges are not created
- Ensure credentials unused for 90 days or greater are disabled
- Ensure access keys are rotated every 90 days or less
- Ensure IAM password policy requires at least one uppercase letter
- Ensure IAM password policy require at least one lowercase letter
- Ensure IAM password policy require at least one symbol
- Ensure IAM password policy require at least one number
- Ensure IAM password policy requires minimum length of 14 or greater
- Ensure CloudTrail is enabled in all regions
- Ensure CloudTrail log file validation is enabled
- Ensure the S3 bucket used to store CloudTrail logs is not publicly accessible
- Ensure CloudTrail trails are integrated with CloudWatch Logs
- Ensure AWS Config is enabled in all regions
- Ensure S3 bucket access logging is enabled on the CloudTrail S3 bucket
- Ensure CloudTrail logs are encrypted at rest using KMS CMKs
- Ensure rotation for customer created CMKs is enabled
- Ensure VPC flow logging is enabled in all VPCs
- Ensure a log metric filter and alarm exist for unauthorized API calls
- Ensure a log metric filter and alarm exist for security group changes
- Ensure a log metric filter and alarm exist for changes to Network Access Control Lists (NACL)
- Ensure a log metric filter and alarm exist for changes to network gateways
- Ensure a log metric filter and alarm exist for route table changes
- Ensure a log metric filter and alarm exist for VPC changes
- Ensure a log metric filter and alarm exist for Management Console sign-in without MFA
- Ensure a log metric filter and alarm exist for usage of "root" account
- Ensure a log metric filter and alarm exist for IAM policy changes
- Ensure a log metric filter and alarm exist for CloudTrail configuration changes
- Ensure a log metric filter and alarm exist for AWS Management Console authentication failures
- Ensure a log metric filter and alarm exist for disabling or scheduled deletion of customer created CMKs
- Ensure a log metric filter and alarm exist for S3 bucket policy changes
- Ensure a log metric filter and alarm exist for AWS Config configuration changes
- Ensure no security groups allow ingress from 0.0.0.0/0 to port 22
- Ensure no security groups allow ingress from 0.0.0.0/0 to port 3389
- Ensure the default security group of every VPC restricts all traffic
-
Ensure all client databases encrypted
- Ensure all customer S3 buckets are encrypted
- Automatic backups are enabled on the databases
- Backup plan module is enabled for databases
- Backups are retained for at least 14 days
- Backups are distributed and present in a different zone
- Redshift cluster has automated backups enabled
- Redshift cluster has retention period more than 14 days
- Redshift cluster has audit logging enabled
- Redshift cluster has encryption enabled
- Redshift cluster is not publicly available