Skip to content

Cloudformation Rules

IaC rules for Cloudformation that identify insecure configurations in infrastructure and cloud resources.

Cloudformation Rule Catalog

IDTitleSeverity
IAC-0058AWS EBS volumes are not encryptedHIGH
IAC-0074AWS S3 bucket ACL grants READ permission to everyoneHIGH
IAC-0082DynamoDB PITR is disabledHIGH
IAC-0100EC2 user data exposes secretsHIGH
IAC-0110AWS S3 Bucket has an ACL defined which allows public WRITE accessHIGH
IAC-0113AWS IAM role allows all services or principals to be assumedHIGH
IAC-0114AWS IAM policy allows all principals used by any AWS service from target account to assume roleHIGH
IAC-0116AWS IAM policy documents allow * (asterisk) as a statement's actionHIGH
IAC-0132AWS EC2 instance not configured with Instance Metadata Service v2 (IMDSv2)HIGH
IAC-0141AWS EC2 instances with public IP and associated with security groups have Internet accessHIGH
IAC-0147Glue Data Catalog encryption is not enabledHIGH
IAC-0149Not all data stored in Aurora is securely encrypted at restHIGH
IAC-0150EFS volumes in ECS task definitions do not have encryption in transit enabledHIGH
IAC-0152AWS Glue security configuration encryption is not enabledHIGH
IAC-0153AWS EKS node group have implicit SSH access from 0.0.0.0/0HIGH
IAC-0154Neptune logging is not enabledHIGH
IAC-0156AWS Load Balancer is not using TLS 1.2HIGH
IAC-0212ECR image scan on push is not enabledHIGH
IAC-0240WAF enables message lookup in Log4j2HIGH
IAC-0339MSK nodes are not privateHIGH
IAC-0057AWS Elastic Load Balancer v2 (ELBv2) listener that allow connection requests over HTTPMEDIUM
IAC-0060AWS Elasticsearch does not have node-to-node encryption enabledMEDIUM
IAC-0071AWS RDS database instance is publicly accessibleMEDIUM
IAC-0080AWS SNS topic has SSE disabledMEDIUM
IAC-0086AWS Private ECR repository policy is overly permissiveMEDIUM
IAC-0087AWS KMS Key policy overly permissiveMEDIUM
IAC-0088AWS CloudFront viewer protocol policy is not configured with HTTPSMEDIUM
IAC-0098Neptune storage is not securely encryptedMEDIUM
IAC-0099Lambda function's environment variables expose secretsMEDIUM
IAC-0106AWS S3 Buckets has block public access setting disabledMEDIUM
IAC-0107AWS S3 Bucket BlockPublicPolicy is not set to TrueMEDIUM
IAC-0108AWS S3 bucket IgnorePublicAcls is not set to TrueMEDIUM
IAC-0109AWS S3 bucket RestrictPublicBucket is not set to TrueMEDIUM
IAC-0111AWS EKS cluster does not have secrets encryption enabledMEDIUM
IAC-0127DocumentDB is not encrypted at restMEDIUM
IAC-0131CodeBuild project encryption is disabledMEDIUM
IAC-0135Athena workgroup does not prevent disabling encryptionMEDIUM
IAC-0136AWS Elasticsearch domain is not configured with HTTPSMEDIUM
IAC-0137AWS Elasticsearch domain logging is not enabledMEDIUM
IAC-0138AWS DocumentDB logging is not enabledMEDIUM
IAC-0143DocDB TLS is disabledMEDIUM
IAC-0163IAM policies allow privilege escalationMEDIUM
IAC-0182ALB does not drop HTTP headersMEDIUM
IAC-0204Workspace user volumes are not encryptedMEDIUM
IAC-0205Workspace root volumes are not encryptedMEDIUM
IAC-0209Timestream database is not encrypted with KMS CMKMEDIUM
IAC-0210RDS database does not have IAM authentication enabledMEDIUM
IAC-0213AWS Transfer Server is publicly exposedMEDIUM
IAC-0214Dynamodb point in time recovery is not enabled for global tablesMEDIUM
IAC-0215Backup Vault is not encrypted at rest using KMS CMKMEDIUM
IAC-0219QLDB ledger permissions mode is not set to STANDARDMEDIUM
IAC-0306AWS Lambda function URL AuthType set to NONEMEDIUM
IAC-0413AWS Cognito identity pool allows unauthenticated guest accessMEDIUM
IAC-0417AWS SageMaker model does not use network isolationMEDIUM
IAC-0418AWS SageMaker Notebook Instance allows for IMDSv1MEDIUM
IAC-0501AWS SageMaker notebook instance IAM policy is overly permissiveMEDIUM
IAC-0059AWS Elasticsearch domain Encryption for data at rest is disabledLOW
IAC-0070AWS RDS DB cluster encryption is disabledLOW
IAC-0073AWS S3 buckets do not have server side encryptionLOW
IAC-0075AWS S3 Object Versioning is disabledLOW
IAC-0077Not every Security Group rule has a descriptionLOW
IAC-0081AWS SQS Queue not configured with server side encryptionLOW
IAC-0083AWS ElastiCache Redis cluster with encryption for data at rest disabledLOW
IAC-0084AWS ElastiCache Redis cluster with in-transit encryption disabled (Replication group)LOW
IAC-0085AWS ElastiCache Redis cluster with Redis AUTH feature disabledLOW
IAC-0090AWS CloudTrail log validation is not enabled in all regionsLOW
IAC-0094AWS IAM policy attached to usersLOW
IAC-0096AWS Elastic File System (EFS) with encryption for data at rest is disabledLOW
IAC-0097AWS Kinesis streams are not encrypted using Server Side EncryptionLOW
IAC-0105ECR image tags are not immutableLOW
IAC-0112AWS API gateway methods are publicly accessibleLOW
IAC-0117AWS Redshift instances are not encryptedLOW
IAC-0118AWS ECS cluster with container insights feature disabledLOW
IAC-0119AWS CloudWatch Log groups not configured with definite retention daysLOW
IAC-0122AWS MQ is publicly accessibleLOW
IAC-0126API Gateway does not have X-Ray tracing enabledLOW
IAC-0129API Gateway does not have access logging enabledLOW
IAC-0142AWS DMS replication instance is publicly accessibleLOW
IAC-0148AWS API Gateway V2 has Access Logging is disabledLOW
IAC-0157DocDB does not have audit logs enabledLOW
IAC-0158AWS Redshift does not have require_ssl configuredLOW
IAC-0160Credentials exposure actions return credentials in an API responseLOW
IAC-0161Data exfiltration allowed without resource constraintsLOW
IAC-0162Resource exposure allows modification of policies and exposes resourcesLOW
IAC-0164Write access allowed without constraintLOW
IAC-0168AWS Lambda function is not configured for function-level concurrent execution LimitLOW
IAC-0169AWS Lambda function is not configured for a DLQLOW
IAC-0170AWS Lambda Function is not assigned to access within VPCLOW
IAC-0171AWS Amazon RDS instances Enhanced Monitoring is disabledLOW
IAC-0173AWS API Gateway caching is disabledLOW
IAC-0176VPC endpoint service is not configured for manual acceptanceLOW
IAC-0186Unencrypted ECR repositoriesLOW
IAC-0199AWS Secrets Manager secret not encrypted by Customer Managed Key (CMK)LOW
IAC-0203Redshift is deployed outside of a VPCLOW
IAC-0206RDS instances do not have Multi-AZ enabledLOW
IAC-0207AWS CloudWatch Log groups encrypted using default encryption key instead of KMS CMKLOW
IAC-0211AWS RDS cluster not configured with IAM authenticationLOW
IAC-0221AWS QLDB ledger has deletion protection is disabledLOW
IAC-0222AWS Lambda encryption settings environmental variable is not set properlyLOW
IAC-0223AWS CloudFront web distribution using insecure TLS versionLOW
IAC-0241AWS AppSync's logging is disabledLOW
IAC-0243AWS Glue component is not associated with a security configurationLOW
IAC-0308AWS security groups allow ingress from 0.0.0.0/0 to port 80LOW
IAC-0414AWS Sagemaker data quality job not encrypting model artifacts with KMSLOW
IAC-0415AWS Sagemaker Data Quality Job not using KMS to encrypt data on attached storage volumeLOW
IAC-0416AWS Sagemaker Data Quality Job not encrypting communications between instances used for monitoring jobsLOW
IAC-0419AWS SageMaker Flow Definition does not use KMS for output configurationsLOW
IAC-0061AWS Customer Master Key (CMK) rotation is not enabledINFO
IAC-0062AWS EC2 Auto Scaling Launch Configuration is not using encrypted EBS volumesINFO
IAC-0072AWS Access logging not enabled on S3 bucketsINFO
IAC-0078AWS Security Group allows all traffic on SSH port (22)INFO
IAC-0079AWS Security Group allows all traffic on RDP port (3389)INFO
IAC-0089AWS CloudTrail logs are not encrypted using Customer Master Keys (CMKs)INFO
IAC-0101AWS DAX cluster not configured with encryption at restINFO
IAC-0120AWS CloudTrail is not enabled with multi trail and not capturing all management eventsINFO
IAC-0121AWS CloudFront web distribution with AWS Web Application Firewall (AWS WAF) service disabledINFO
IAC-0124AWS Redshift database does not have audit logging enabledINFO
IAC-0139AWS CloudFront distribution with access logging disabledINFO
IAC-0144AWS Elastic Load Balancer v2 (ELBv2) with access log disabledINFO
IAC-0145AWS Elastic Load Balancer (Classic) with access log disabledINFO
IAC-0242AWS AppSync has field-level logging disabledINFO

Total Rules: 121

Click on any rule ID to view detailed information, examples, and remediation guidance.