logo

Database

Terraform Excessive Attach Privileges

Description

Detects overly permissive IAM policies in AWS Terraform configurations that could grant excessive privileges to users, groups, or roles. Such policies violate the principle of least privilege and could allow unauthorized access to AWS resources if compromised.

Weakness:

031 - Excessive privileges - AWS

Category: Access Subversion

Detection Strategy

    • Scans Terraform configuration files for IAM policy resources including aws_iam_group_policy, aws_iam_policy, aws_iam_role_policy, aws_iam_user_policy, and aws_iam_policy_document

    • Examines the policy statements and permissions defined within these IAM resources

    • Identifies policies that grant overly broad permissions or use wildcards (*) in resource or action definitions

    • Reports vulnerabilities when policies grant more permissions than necessary for the intended function

    • Specifically analyzes attached policies to roles to ensure they follow the principle of least privilege

Vulnerable code example

resource "aws_iam_role_policy" "vulnerable_policy" {
  name = "vulnerable_policy"
  
  policy = jsonencode({
    Version = "2012-10-17"
    Statement = [
      {
        Effect = "Allow"...

✅ Secure code example

resource "aws_iam_role_policy" "secure_policy" {
  name = "secure_policy"
  
  policy = jsonencode({
    Version = "2012-10-17"
    Statement = [
      {
        Effect = "Allow"...