From ccf15065294bf05f7623534dbb5cfcd1b6262f0e Mon Sep 17 00:00:00 2001 From: Simar Date: Tue, 17 Sep 2024 16:45:19 -0600 Subject: [PATCH 1/6] feat(trivy): Bump to support v0.55.2 --- .github/workflows/test.yaml | 4 ++-- Dockerfile | 2 +- test/data/config-sarif-report/report.sarif | 14 +++++++------- test/data/config-scan/report.json | 6 +++--- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index bf8d889..f585783 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -6,7 +6,7 @@ on: workflow_dispatch: env: - TRIVY_VERSION: 0.53.0 + TRIVY_VERSION: 0.55.2 BATS_LIB_PATH: '/usr/lib/' jobs: @@ -26,4 +26,4 @@ jobs: - name: Test run: | chmod +x entrypoint.sh - bats -r -T . + TRIVY_DISABLE_VEX_NOTICE=true bats -r -T . diff --git a/Dockerfile b/Dockerfile index aecb1aa..1f9d90d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ghcr.io/aquasecurity/trivy:0.53.0 +FROM ghcr.io/aquasecurity/trivy:0.55.2 COPY entrypoint.sh / RUN apk --no-cache add bash curl npm RUN chmod +x /entrypoint.sh diff --git a/test/data/config-sarif-report/report.sarif b/test/data/config-sarif-report/report.sarif index 71d4b80..5d2c3eb 100644 --- a/test/data/config-sarif-report/report.sarif +++ b/test/data/config-sarif-report/report.sarif @@ -1,6 +1,6 @@ { "version": "2.1.0", - "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json", + "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/main/sarif-2.1/schema/sarif-schema-2.1.0.json", "runs": [ { "tool": { @@ -91,7 +91,7 @@ } }, { - "id": "AVD-AWS-0089", + "id": "s3-bucket-logging", "name": "Misconfiguration", "shortDescription": { "text": "S3 Bucket Logging" @@ -102,10 +102,10 @@ "defaultConfiguration": { "level": "note" }, - "helpUri": "https://avd.aquasec.com/misconfig/avd-aws-0089", + "helpUri": "https://avd.aquasec.com/misconfig/s3-bucket-logging", "help": { - "text": "Misconfiguration AVD-AWS-0089\nType: Terraform Security Check\nSeverity: LOW\nCheck: S3 Bucket Logging\nMessage: Bucket has logging disabled\nLink: [AVD-AWS-0089](https://avd.aquasec.com/misconfig/avd-aws-0089)\nEnsures S3 bucket logging is enabled for S3 buckets", - "markdown": "**Misconfiguration AVD-AWS-0089**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|LOW|S3 Bucket Logging|Bucket has logging disabled|[AVD-AWS-0089](https://avd.aquasec.com/misconfig/avd-aws-0089)|\n\nEnsures S3 bucket logging is enabled for S3 buckets" + "text": "Misconfiguration s3-bucket-logging\nType: Terraform Security Check\nSeverity: LOW\nCheck: S3 Bucket Logging\nMessage: Bucket has logging disabled\nLink: [s3-bucket-logging](https://avd.aquasec.com/misconfig/s3-bucket-logging)\nEnsures S3 bucket logging is enabled for S3 buckets", + "markdown": "**Misconfiguration s3-bucket-logging**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|LOW|S3 Bucket Logging|Bucket has logging disabled|[s3-bucket-logging](https://avd.aquasec.com/misconfig/s3-bucket-logging)|\n\nEnsures S3 bucket logging is enabled for S3 buckets" }, "properties": { "precision": "very-high", @@ -338,11 +338,11 @@ ] }, { - "ruleId": "AVD-AWS-0089", + "ruleId": "s3-bucket-logging", "ruleIndex": 3, "level": "note", "message": { - "text": "Artifact: main.tf\nType: terraform\nVulnerability AVD-AWS-0089\nSeverity: LOW\nMessage: Bucket has logging disabled\nLink: [AVD-AWS-0089](https://avd.aquasec.com/misconfig/avd-aws-0089)" + "text": "Artifact: main.tf\nType: terraform\nVulnerability s3-bucket-logging\nSeverity: LOW\nMessage: Bucket has logging disabled\nLink: [s3-bucket-logging](https://avd.aquasec.com/misconfig/s3-bucket-logging)" }, "locations": [ { diff --git a/test/data/config-scan/report.json b/test/data/config-scan/report.json index 62aab6c..f523f08 100644 --- a/test/data/config-scan/report.json +++ b/test/data/config-scan/report.json @@ -214,7 +214,7 @@ }, { "Type": "Terraform Security Check", - "ID": "AVD-AWS-0089", + "ID": "s3-bucket-logging", "AVDID": "AVD-AWS-0089", "Title": "S3 Bucket Logging", "Description": "Ensures S3 bucket logging is enabled for S3 buckets", @@ -223,10 +223,10 @@ "Query": "data.builtin.aws.s3.aws0089.deny", "Resolution": "Add a logging block to the resource to enable access logging", "Severity": "LOW", - "PrimaryURL": "https://avd.aquasec.com/misconfig/avd-aws-0089", + "PrimaryURL": "https://avd.aquasec.com/misconfig/s3-bucket-logging", "References": [ "https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerLogs.html", - "https://avd.aquasec.com/misconfig/avd-aws-0089" + "https://avd.aquasec.com/misconfig/s3-bucket-logging" ], "Status": "FAIL", "Layer": {}, From e3a3d02454c326704a4262de8396b20da73d6198 Mon Sep 17 00:00:00 2001 From: Simar Date: Wed, 2 Oct 2024 14:56:15 -0600 Subject: [PATCH 2/6] fix tests --- test/data/config-sarif-report/report.sarif | 12 ++++++------ test/data/config-scan/report.json | 6 +++--- test/test.bats | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/test/data/config-sarif-report/report.sarif b/test/data/config-sarif-report/report.sarif index 5d2c3eb..11f0cbf 100644 --- a/test/data/config-sarif-report/report.sarif +++ b/test/data/config-sarif-report/report.sarif @@ -91,7 +91,7 @@ } }, { - "id": "s3-bucket-logging", + "id": "AVD-AWS-0089", "name": "Misconfiguration", "shortDescription": { "text": "S3 Bucket Logging" @@ -102,10 +102,10 @@ "defaultConfiguration": { "level": "note" }, - "helpUri": "https://avd.aquasec.com/misconfig/s3-bucket-logging", + "helpUri": "https://avd.aquasec.com/misconfig/avd-aws-0089", "help": { - "text": "Misconfiguration s3-bucket-logging\nType: Terraform Security Check\nSeverity: LOW\nCheck: S3 Bucket Logging\nMessage: Bucket has logging disabled\nLink: [s3-bucket-logging](https://avd.aquasec.com/misconfig/s3-bucket-logging)\nEnsures S3 bucket logging is enabled for S3 buckets", - "markdown": "**Misconfiguration s3-bucket-logging**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|LOW|S3 Bucket Logging|Bucket has logging disabled|[s3-bucket-logging](https://avd.aquasec.com/misconfig/s3-bucket-logging)|\n\nEnsures S3 bucket logging is enabled for S3 buckets" + "text": "Misconfiguration AVD-AWS-0089\nType: Terraform Security Check\nSeverity: LOW\nCheck: S3 Bucket Logging\nMessage: Bucket has logging disabled\nLink: [AVD-AWS-0089](https://avd.aquasec.com/misconfig/avd-aws-0089)\nEnsures S3 bucket logging is enabled for S3 buckets", + "markdown": "**Misconfiguration AVD-AWS-0089**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|LOW|S3 Bucket Logging|Bucket has logging disabled|[AVD-AWS-0089](https://avd.aquasec.com/misconfig/avd-aws-0089)|\n\nEnsures S3 bucket logging is enabled for S3 buckets" }, "properties": { "precision": "very-high", @@ -338,11 +338,11 @@ ] }, { - "ruleId": "s3-bucket-logging", + "ruleId": "AVD-AWS-0089", "ruleIndex": 3, "level": "note", "message": { - "text": "Artifact: main.tf\nType: terraform\nVulnerability s3-bucket-logging\nSeverity: LOW\nMessage: Bucket has logging disabled\nLink: [s3-bucket-logging](https://avd.aquasec.com/misconfig/s3-bucket-logging)" + "text": "Artifact: main.tf\nType: terraform\nVulnerability AVD-AWS-0089\nSeverity: LOW\nMessage: Bucket has logging disabled\nLink: [AVD-AWS-0089](https://avd.aquasec.com/misconfig/avd-aws-0089)" }, "locations": [ { diff --git a/test/data/config-scan/report.json b/test/data/config-scan/report.json index f523f08..62aab6c 100644 --- a/test/data/config-scan/report.json +++ b/test/data/config-scan/report.json @@ -214,7 +214,7 @@ }, { "Type": "Terraform Security Check", - "ID": "s3-bucket-logging", + "ID": "AVD-AWS-0089", "AVDID": "AVD-AWS-0089", "Title": "S3 Bucket Logging", "Description": "Ensures S3 bucket logging is enabled for S3 buckets", @@ -223,10 +223,10 @@ "Query": "data.builtin.aws.s3.aws0089.deny", "Resolution": "Add a logging block to the resource to enable access logging", "Severity": "LOW", - "PrimaryURL": "https://avd.aquasec.com/misconfig/s3-bucket-logging", + "PrimaryURL": "https://avd.aquasec.com/misconfig/avd-aws-0089", "References": [ "https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerLogs.html", - "https://avd.aquasec.com/misconfig/s3-bucket-logging" + "https://avd.aquasec.com/misconfig/avd-aws-0089" ], "Status": "FAIL", "Layer": {}, diff --git a/test/test.bats b/test/test.bats index 1e0f3ce..7e1a036 100644 --- a/test/test.bats +++ b/test/test.bats @@ -4,7 +4,7 @@ setup_file() { local owner=$GITHUB_REPOSITORY_OWNER export TRIVY_DB_REPOSITORY=ghcr.io/${owner}/trivy-db-act:latest export TRIVY_JAVA_DB_REPOSITORY=ghcr.io/${owner}/trivy-java-db-act:latest - export TRIVY_POLICY_BUNDLE_REPOSITORY=ghcr.io/${owner}/trivy-checks-act:latest + export TRIVY_CHECKS_BUNDLE_REPOSITORY=ghcr.io/${owner}/trivy-checks-act:latest } setup() { From bb1a73dcd53f0d12fc1937a16936069b22b33223 Mon Sep 17 00:00:00 2001 From: Simar Date: Wed, 2 Oct 2024 17:35:20 -0600 Subject: [PATCH 3/6] update github workflow --- .github/workflows/test.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index f585783..c26d8c6 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,4 +26,6 @@ jobs: - name: Test run: | chmod +x entrypoint.sh - TRIVY_DISABLE_VEX_NOTICE=true bats -r -T . + GITHUB_REPOSITORY_OWNER=aquasecurity\ + TRIVY_CACHE_DIR=.cache TRIVY_DISABLE_VEX_NOTICE=true TRIVY_DEBUG=true\ + bats --recursive --timing --verbose-run . From bd5cd7005a0aa7e5296eb105c9cf85570d21c90d Mon Sep 17 00:00:00 2001 From: Simar Date: Wed, 2 Oct 2024 17:51:14 -0600 Subject: [PATCH 4/6] upgrade to v0.56.0 --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index c26d8c6..f565fec 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -6,7 +6,7 @@ on: workflow_dispatch: env: - TRIVY_VERSION: 0.55.2 + TRIVY_VERSION: 0.56.0 BATS_LIB_PATH: '/usr/lib/' jobs: From a4af72d173aa3aff0bfc36622d54415cec92348e Mon Sep 17 00:00:00 2001 From: Simar Date: Thu, 3 Oct 2024 12:03:05 -0600 Subject: [PATCH 5/6] bump to trivy v0.56.1 --- .github/workflows/test.yaml | 2 +- Dockerfile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index f565fec..f9919c2 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -6,7 +6,7 @@ on: workflow_dispatch: env: - TRIVY_VERSION: 0.56.0 + TRIVY_VERSION: 0.56.1 BATS_LIB_PATH: '/usr/lib/' jobs: diff --git a/Dockerfile b/Dockerfile index 1f9d90d..740b7e6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ghcr.io/aquasecurity/trivy:0.55.2 +FROM ghcr.io/aquasecurity/trivy:0.56.1 COPY entrypoint.sh / RUN apk --no-cache add bash curl npm RUN chmod +x /entrypoint.sh From f398ce6961b2977f15752417647ca6b8dc3bf751 Mon Sep 17 00:00:00 2001 From: Simar Date: Thu, 3 Oct 2024 12:12:58 -0600 Subject: [PATCH 6/6] update tests --- test/data/config-sarif-report/report.sarif | 434 +---------------- test/data/config-scan/report.json | 533 +-------------------- test/data/with-tf-vars/report.json | 7 +- test/data/with-trivy-yaml-cfg/report.json | 2 +- 4 files changed, 5 insertions(+), 971 deletions(-) diff --git a/test/data/config-sarif-report/report.sarif b/test/data/config-sarif-report/report.sarif index 11f0cbf..152d3e4 100644 --- a/test/data/config-sarif-report/report.sarif +++ b/test/data/config-sarif-report/report.sarif @@ -9,87 +9,6 @@ "informationUri": "https://github.com/aquasecurity/trivy", "name": "Trivy", "rules": [ - { - "id": "AVD-AWS-0086", - "name": "Misconfiguration", - "shortDescription": { - "text": "S3 Access block should block public ACL" - }, - "fullDescription": { - "text": "\nS3 buckets should block public ACLs on buckets and any objects they contain. By blocking, PUTs with fail if the object has any public ACL a.\n" - }, - "defaultConfiguration": { - "level": "error" - }, - "helpUri": "https://avd.aquasec.com/misconfig/avd-aws-0086", - "help": { - "text": "Misconfiguration AVD-AWS-0086\nType: Terraform Security Check\nSeverity: HIGH\nCheck: S3 Access block should block public ACL\nMessage: No public access block so not blocking public acls\nLink: [AVD-AWS-0086](https://avd.aquasec.com/misconfig/avd-aws-0086)\n\nS3 buckets should block public ACLs on buckets and any objects they contain. By blocking, PUTs with fail if the object has any public ACL a.\n", - "markdown": "**Misconfiguration AVD-AWS-0086**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|HIGH|S3 Access block should block public ACL|No public access block so not blocking public acls|[AVD-AWS-0086](https://avd.aquasec.com/misconfig/avd-aws-0086)|\n\n\nS3 buckets should block public ACLs on buckets and any objects they contain. By blocking, PUTs with fail if the object has any public ACL a.\n" - }, - "properties": { - "precision": "very-high", - "security-severity": "8.0", - "tags": [ - "misconfiguration", - "security", - "HIGH" - ] - } - }, - { - "id": "AVD-AWS-0087", - "name": "Misconfiguration", - "shortDescription": { - "text": "S3 Access block should block public policy" - }, - "fullDescription": { - "text": "\nS3 bucket policy should have block public policy to prevent users from putting a policy that enable public access.\n" - }, - "defaultConfiguration": { - "level": "error" - }, - "helpUri": "https://avd.aquasec.com/misconfig/avd-aws-0087", - "help": { - "text": "Misconfiguration AVD-AWS-0087\nType: Terraform Security Check\nSeverity: HIGH\nCheck: S3 Access block should block public policy\nMessage: No public access block so not blocking public policies\nLink: [AVD-AWS-0087](https://avd.aquasec.com/misconfig/avd-aws-0087)\n\nS3 bucket policy should have block public policy to prevent users from putting a policy that enable public access.\n", - "markdown": "**Misconfiguration AVD-AWS-0087**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|HIGH|S3 Access block should block public policy|No public access block so not blocking public policies|[AVD-AWS-0087](https://avd.aquasec.com/misconfig/avd-aws-0087)|\n\n\nS3 bucket policy should have block public policy to prevent users from putting a policy that enable public access.\n" - }, - "properties": { - "precision": "very-high", - "security-severity": "8.0", - "tags": [ - "misconfiguration", - "security", - "HIGH" - ] - } - }, - { - "id": "AVD-AWS-0088", - "name": "Misconfiguration", - "shortDescription": { - "text": "Unencrypted S3 bucket." - }, - "fullDescription": { - "text": "S3 Buckets should be encrypted to protect the data that is stored within them if access is compromised." - }, - "defaultConfiguration": { - "level": "error" - }, - "helpUri": "https://avd.aquasec.com/misconfig/avd-aws-0088", - "help": { - "text": "Misconfiguration AVD-AWS-0088\nType: Terraform Security Check\nSeverity: HIGH\nCheck: Unencrypted S3 bucket.\nMessage: Bucket does not have encryption enabled\nLink: [AVD-AWS-0088](https://avd.aquasec.com/misconfig/avd-aws-0088)\nS3 Buckets should be encrypted to protect the data that is stored within them if access is compromised.", - "markdown": "**Misconfiguration AVD-AWS-0088**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|HIGH|Unencrypted S3 bucket.|Bucket does not have encryption enabled|[AVD-AWS-0088](https://avd.aquasec.com/misconfig/avd-aws-0088)|\n\nS3 Buckets should be encrypted to protect the data that is stored within them if access is compromised." - }, - "properties": { - "precision": "very-high", - "security-severity": "8.0", - "tags": [ - "misconfiguration", - "security", - "HIGH" - ] - } - }, { "id": "AVD-AWS-0089", "name": "Misconfiguration", @@ -116,230 +35,14 @@ "LOW" ] } - }, - { - "id": "AVD-AWS-0090", - "name": "Misconfiguration", - "shortDescription": { - "text": "S3 Data should be versioned" - }, - "fullDescription": { - "text": "\nVersioning in Amazon S3 is a means of keeping multiple variants of an object in the same bucket. \nYou can use the S3 Versioning feature to preserve, retrieve, and restore every version of every object stored in your buckets. \nWith versioning you can recover more easily from both unintended user actions and application failures.\n" - }, - "defaultConfiguration": { - "level": "warning" - }, - "helpUri": "https://avd.aquasec.com/misconfig/avd-aws-0090", - "help": { - "text": "Misconfiguration AVD-AWS-0090\nType: Terraform Security Check\nSeverity: MEDIUM\nCheck: S3 Data should be versioned\nMessage: Bucket does not have versioning enabled\nLink: [AVD-AWS-0090](https://avd.aquasec.com/misconfig/avd-aws-0090)\n\nVersioning in Amazon S3 is a means of keeping multiple variants of an object in the same bucket. \nYou can use the S3 Versioning feature to preserve, retrieve, and restore every version of every object stored in your buckets. \nWith versioning you can recover more easily from both unintended user actions and application failures.\n", - "markdown": "**Misconfiguration AVD-AWS-0090**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|MEDIUM|S3 Data should be versioned|Bucket does not have versioning enabled|[AVD-AWS-0090](https://avd.aquasec.com/misconfig/avd-aws-0090)|\n\n\nVersioning in Amazon S3 is a means of keeping multiple variants of an object in the same bucket. \nYou can use the S3 Versioning feature to preserve, retrieve, and restore every version of every object stored in your buckets. \nWith versioning you can recover more easily from both unintended user actions and application failures.\n" - }, - "properties": { - "precision": "very-high", - "security-severity": "5.5", - "tags": [ - "misconfiguration", - "security", - "MEDIUM" - ] - } - }, - { - "id": "AVD-AWS-0091", - "name": "Misconfiguration", - "shortDescription": { - "text": "S3 Access Block should Ignore Public Acl" - }, - "fullDescription": { - "text": "\nS3 buckets should ignore public ACLs on buckets and any objects they contain. By ignoring rather than blocking, PUT calls with public ACLs will still be applied but the ACL will be ignored.\n" - }, - "defaultConfiguration": { - "level": "error" - }, - "helpUri": "https://avd.aquasec.com/misconfig/avd-aws-0091", - "help": { - "text": "Misconfiguration AVD-AWS-0091\nType: Terraform Security Check\nSeverity: HIGH\nCheck: S3 Access Block should Ignore Public Acl\nMessage: No public access block so not ignoring public acls\nLink: [AVD-AWS-0091](https://avd.aquasec.com/misconfig/avd-aws-0091)\n\nS3 buckets should ignore public ACLs on buckets and any objects they contain. By ignoring rather than blocking, PUT calls with public ACLs will still be applied but the ACL will be ignored.\n", - "markdown": "**Misconfiguration AVD-AWS-0091**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|HIGH|S3 Access Block should Ignore Public Acl|No public access block so not ignoring public acls|[AVD-AWS-0091](https://avd.aquasec.com/misconfig/avd-aws-0091)|\n\n\nS3 buckets should ignore public ACLs on buckets and any objects they contain. By ignoring rather than blocking, PUT calls with public ACLs will still be applied but the ACL will be ignored.\n" - }, - "properties": { - "precision": "very-high", - "security-severity": "8.0", - "tags": [ - "misconfiguration", - "security", - "HIGH" - ] - } - }, - { - "id": "AVD-AWS-0093", - "name": "Misconfiguration", - "shortDescription": { - "text": "S3 Access block should restrict public bucket to limit access" - }, - "fullDescription": { - "text": "S3 buckets should restrict public policies for the bucket. By enabling, the restrict_public_buckets, only the bucket owner and AWS Services can access if it has a public policy." - }, - "defaultConfiguration": { - "level": "error" - }, - "helpUri": "https://avd.aquasec.com/misconfig/avd-aws-0093", - "help": { - "text": "Misconfiguration AVD-AWS-0093\nType: Terraform Security Check\nSeverity: HIGH\nCheck: S3 Access block should restrict public bucket to limit access\nMessage: No public access block so not restricting public buckets\nLink: [AVD-AWS-0093](https://avd.aquasec.com/misconfig/avd-aws-0093)\nS3 buckets should restrict public policies for the bucket. By enabling, the restrict_public_buckets, only the bucket owner and AWS Services can access if it has a public policy.", - "markdown": "**Misconfiguration AVD-AWS-0093**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|HIGH|S3 Access block should restrict public bucket to limit access|No public access block so not restricting public buckets|[AVD-AWS-0093](https://avd.aquasec.com/misconfig/avd-aws-0093)|\n\nS3 buckets should restrict public policies for the bucket. By enabling, the restrict_public_buckets, only the bucket owner and AWS Services can access if it has a public policy." - }, - "properties": { - "precision": "very-high", - "security-severity": "8.0", - "tags": [ - "misconfiguration", - "security", - "HIGH" - ] - } - }, - { - "id": "AVD-AWS-0094", - "name": "Misconfiguration", - "shortDescription": { - "text": "S3 buckets should each define an aws_s3_bucket_public_access_block" - }, - "fullDescription": { - "text": "The "block public access" settings in S3 override individual policies that apply to a given bucket, meaning that all public access can be controlled in one central types for that bucket. It is therefore good practice to define these settings for each bucket in order to clearly define the public access that can be allowed for it." - }, - "defaultConfiguration": { - "level": "note" - }, - "helpUri": "https://avd.aquasec.com/misconfig/avd-aws-0094", - "help": { - "text": "Misconfiguration AVD-AWS-0094\nType: Terraform Security Check\nSeverity: LOW\nCheck: S3 buckets should each define an aws_s3_bucket_public_access_block\nMessage: Bucket does not have a corresponding public access block.\nLink: [AVD-AWS-0094](https://avd.aquasec.com/misconfig/avd-aws-0094)\nThe \"block public access\" settings in S3 override individual policies that apply to a given bucket, meaning that all public access can be controlled in one central types for that bucket. It is therefore good practice to define these settings for each bucket in order to clearly define the public access that can be allowed for it.", - "markdown": "**Misconfiguration AVD-AWS-0094**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|LOW|S3 buckets should each define an aws_s3_bucket_public_access_block|Bucket does not have a corresponding public access block.|[AVD-AWS-0094](https://avd.aquasec.com/misconfig/avd-aws-0094)|\n\nThe \"block public access\" settings in S3 override individual policies that apply to a given bucket, meaning that all public access can be controlled in one central types for that bucket. It is therefore good practice to define these settings for each bucket in order to clearly define the public access that can be allowed for it." - }, - "properties": { - "precision": "very-high", - "security-severity": "2.0", - "tags": [ - "misconfiguration", - "security", - "LOW" - ] - } - }, - { - "id": "AVD-AWS-0132", - "name": "Misconfiguration", - "shortDescription": { - "text": "S3 encryption should use Customer Managed Keys" - }, - "fullDescription": { - "text": "Encryption using AWS keys provides protection for your S3 buckets. To increase control of the encryption and manage factors like rotation use customer managed keys." - }, - "defaultConfiguration": { - "level": "error" - }, - "helpUri": "https://avd.aquasec.com/misconfig/avd-aws-0132", - "help": { - "text": "Misconfiguration AVD-AWS-0132\nType: Terraform Security Check\nSeverity: HIGH\nCheck: S3 encryption should use Customer Managed Keys\nMessage: Bucket does not encrypt data with a customer managed key.\nLink: [AVD-AWS-0132](https://avd.aquasec.com/misconfig/avd-aws-0132)\nEncryption using AWS keys provides protection for your S3 buckets. To increase control of the encryption and manage factors like rotation use customer managed keys.", - "markdown": "**Misconfiguration AVD-AWS-0132**\n| Type | Severity | Check | Message | Link |\n| --- | --- | --- | --- | --- |\n|Terraform Security Check|HIGH|S3 encryption should use Customer Managed Keys|Bucket does not encrypt data with a customer managed key.|[AVD-AWS-0132](https://avd.aquasec.com/misconfig/avd-aws-0132)|\n\nEncryption using AWS keys provides protection for your S3 buckets. To increase control of the encryption and manage factors like rotation use customer managed keys." - }, - "properties": { - "precision": "very-high", - "security-severity": "8.0", - "tags": [ - "misconfiguration", - "security", - "HIGH" - ] - } } ] } }, "results": [ - { - "ruleId": "AVD-AWS-0086", - "ruleIndex": 0, - "level": "error", - "message": { - "text": "Artifact: main.tf\nType: terraform\nVulnerability AVD-AWS-0086\nSeverity: HIGH\nMessage: No public access block so not blocking public acls\nLink: [AVD-AWS-0086](https://avd.aquasec.com/misconfig/avd-aws-0086)" - }, - "locations": [ - { - "physicalLocation": { - "artifactLocation": { - "uri": "main.tf", - "uriBaseId": "ROOTPATH" - }, - "region": { - "startLine": 8, - "startColumn": 1, - "endLine": 10, - "endColumn": 1 - } - }, - "message": { - "text": "main.tf" - } - } - ] - }, - { - "ruleId": "AVD-AWS-0087", - "ruleIndex": 1, - "level": "error", - "message": { - "text": "Artifact: main.tf\nType: terraform\nVulnerability AVD-AWS-0087\nSeverity: HIGH\nMessage: No public access block so not blocking public policies\nLink: [AVD-AWS-0087](https://avd.aquasec.com/misconfig/avd-aws-0087)" - }, - "locations": [ - { - "physicalLocation": { - "artifactLocation": { - "uri": "main.tf", - "uriBaseId": "ROOTPATH" - }, - "region": { - "startLine": 8, - "startColumn": 1, - "endLine": 10, - "endColumn": 1 - } - }, - "message": { - "text": "main.tf" - } - } - ] - }, - { - "ruleId": "AVD-AWS-0088", - "ruleIndex": 2, - "level": "error", - "message": { - "text": "Artifact: main.tf\nType: terraform\nVulnerability AVD-AWS-0088\nSeverity: HIGH\nMessage: Bucket does not have encryption enabled\nLink: [AVD-AWS-0088](https://avd.aquasec.com/misconfig/avd-aws-0088)" - }, - "locations": [ - { - "physicalLocation": { - "artifactLocation": { - "uri": "main.tf", - "uriBaseId": "ROOTPATH" - }, - "region": { - "startLine": 8, - "startColumn": 1, - "endLine": 10, - "endColumn": 1 - } - }, - "message": { - "text": "main.tf" - } - } - ] - }, { "ruleId": "AVD-AWS-0089", - "ruleIndex": 3, + "ruleIndex": 0, "level": "note", "message": { "text": "Artifact: main.tf\nType: terraform\nVulnerability AVD-AWS-0089\nSeverity: LOW\nMessage: Bucket has logging disabled\nLink: [AVD-AWS-0089](https://avd.aquasec.com/misconfig/avd-aws-0089)" @@ -363,141 +66,6 @@ } } ] - }, - { - "ruleId": "AVD-AWS-0090", - "ruleIndex": 4, - "level": "warning", - "message": { - "text": "Artifact: main.tf\nType: terraform\nVulnerability AVD-AWS-0090\nSeverity: MEDIUM\nMessage: Bucket does not have versioning enabled\nLink: [AVD-AWS-0090](https://avd.aquasec.com/misconfig/avd-aws-0090)" - }, - "locations": [ - { - "physicalLocation": { - "artifactLocation": { - "uri": "main.tf", - "uriBaseId": "ROOTPATH" - }, - "region": { - "startLine": 16, - "startColumn": 1, - "endLine": 16, - "endColumn": 1 - } - }, - "message": { - "text": "main.tf" - } - } - ] - }, - { - "ruleId": "AVD-AWS-0091", - "ruleIndex": 5, - "level": "error", - "message": { - "text": "Artifact: main.tf\nType: terraform\nVulnerability AVD-AWS-0091\nSeverity: HIGH\nMessage: No public access block so not ignoring public acls\nLink: [AVD-AWS-0091](https://avd.aquasec.com/misconfig/avd-aws-0091)" - }, - "locations": [ - { - "physicalLocation": { - "artifactLocation": { - "uri": "main.tf", - "uriBaseId": "ROOTPATH" - }, - "region": { - "startLine": 8, - "startColumn": 1, - "endLine": 10, - "endColumn": 1 - } - }, - "message": { - "text": "main.tf" - } - } - ] - }, - { - "ruleId": "AVD-AWS-0093", - "ruleIndex": 6, - "level": "error", - "message": { - "text": "Artifact: main.tf\nType: terraform\nVulnerability AVD-AWS-0093\nSeverity: HIGH\nMessage: No public access block so not restricting public buckets\nLink: [AVD-AWS-0093](https://avd.aquasec.com/misconfig/avd-aws-0093)" - }, - "locations": [ - { - "physicalLocation": { - "artifactLocation": { - "uri": "main.tf", - "uriBaseId": "ROOTPATH" - }, - "region": { - "startLine": 8, - "startColumn": 1, - "endLine": 10, - "endColumn": 1 - } - }, - "message": { - "text": "main.tf" - } - } - ] - }, - { - "ruleId": "AVD-AWS-0094", - "ruleIndex": 7, - "level": "note", - "message": { - "text": "Artifact: main.tf\nType: terraform\nVulnerability AVD-AWS-0094\nSeverity: LOW\nMessage: Bucket does not have a corresponding public access block.\nLink: [AVD-AWS-0094](https://avd.aquasec.com/misconfig/avd-aws-0094)" - }, - "locations": [ - { - "physicalLocation": { - "artifactLocation": { - "uri": "main.tf", - "uriBaseId": "ROOTPATH" - }, - "region": { - "startLine": 8, - "startColumn": 1, - "endLine": 10, - "endColumn": 1 - } - }, - "message": { - "text": "main.tf" - } - } - ] - }, - { - "ruleId": "AVD-AWS-0132", - "ruleIndex": 8, - "level": "error", - "message": { - "text": "Artifact: main.tf\nType: terraform\nVulnerability AVD-AWS-0132\nSeverity: HIGH\nMessage: Bucket does not encrypt data with a customer managed key.\nLink: [AVD-AWS-0132](https://avd.aquasec.com/misconfig/avd-aws-0132)" - }, - "locations": [ - { - "physicalLocation": { - "artifactLocation": { - "uri": "main.tf", - "uriBaseId": "ROOTPATH" - }, - "region": { - "startLine": 8, - "startColumn": 1, - "endLine": 10, - "endColumn": 1 - } - }, - "message": { - "text": "main.tf" - } - } - ] } ], "columnKind": "utf16CodeUnits" diff --git a/test/data/config-scan/report.json b/test/data/config-scan/report.json index 62aab6c..9cea638 100644 --- a/test/data/config-scan/report.json +++ b/test/data/config-scan/report.json @@ -30,188 +30,11 @@ "Class": "config", "Type": "terraform", "MisconfSummary": { - "Successes": 1, - "Failures": 9, + "Successes": 0, + "Failures": 1, "Exceptions": 0 }, "Misconfigurations": [ - { - "Type": "Terraform Security Check", - "ID": "AVD-AWS-0086", - "AVDID": "AVD-AWS-0086", - "Title": "S3 Access block should block public ACL", - "Description": "\nS3 buckets should block public ACLs on buckets and any objects they contain. By blocking, PUTs with fail if the object has any public ACL a.\n", - "Message": "No public access block so not blocking public acls", - "Query": "data..", - "Resolution": "Enable blocking any PUT calls with a public ACL specified", - "Severity": "HIGH", - "PrimaryURL": "https://avd.aquasec.com/misconfig/avd-aws-0086", - "References": [ - "https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html", - "https://avd.aquasec.com/misconfig/avd-aws-0086" - ], - "Status": "FAIL", - "Layer": {}, - "CauseMetadata": { - "Resource": "aws_s3_bucket.bucket", - "Provider": "AWS", - "Service": "s3", - "StartLine": 8, - "EndLine": 10, - "Code": { - "Lines": [ - { - "Number": 8, - "Content": "resource \"aws_s3_bucket\" \"bucket\" {", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[38;5;33mresource\u001b[0m \u001b[38;5;37m\"aws_s3_bucket\"\u001b[0m \u001b[38;5;37m\"bucket\"\u001b[0m {", - "FirstCause": true, - "LastCause": false - }, - { - "Number": 9, - "Content": " bucket = \"trivy-action-bucket\"", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": " \u001b[38;5;245mbucket\u001b[0m = \u001b[38;5;37m\"trivy-action-bucket\"", - "FirstCause": false, - "LastCause": false - }, - { - "Number": 10, - "Content": "}", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[0m}", - "FirstCause": false, - "LastCause": true - } - ] - } - } - }, - { - "Type": "Terraform Security Check", - "ID": "AVD-AWS-0087", - "AVDID": "AVD-AWS-0087", - "Title": "S3 Access block should block public policy", - "Description": "\nS3 bucket policy should have block public policy to prevent users from putting a policy that enable public access.\n", - "Message": "No public access block so not blocking public policies", - "Query": "data..", - "Resolution": "Prevent policies that allow public access being PUT", - "Severity": "HIGH", - "PrimaryURL": "https://avd.aquasec.com/misconfig/avd-aws-0087", - "References": [ - "https://docs.aws.amazon.com/AmazonS3/latest/dev-retired/access-control-block-public-access.html", - "https://avd.aquasec.com/misconfig/avd-aws-0087" - ], - "Status": "FAIL", - "Layer": {}, - "CauseMetadata": { - "Resource": "aws_s3_bucket.bucket", - "Provider": "AWS", - "Service": "s3", - "StartLine": 8, - "EndLine": 10, - "Code": { - "Lines": [ - { - "Number": 8, - "Content": "resource \"aws_s3_bucket\" \"bucket\" {", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[38;5;33mresource\u001b[0m \u001b[38;5;37m\"aws_s3_bucket\"\u001b[0m \u001b[38;5;37m\"bucket\"\u001b[0m {", - "FirstCause": true, - "LastCause": false - }, - { - "Number": 9, - "Content": " bucket = \"trivy-action-bucket\"", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": " \u001b[38;5;245mbucket\u001b[0m = \u001b[38;5;37m\"trivy-action-bucket\"", - "FirstCause": false, - "LastCause": false - }, - { - "Number": 10, - "Content": "}", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[0m}", - "FirstCause": false, - "LastCause": true - } - ] - } - } - }, - { - "Type": "Terraform Security Check", - "ID": "AVD-AWS-0088", - "AVDID": "AVD-AWS-0088", - "Title": "Unencrypted S3 bucket.", - "Description": "S3 Buckets should be encrypted to protect the data that is stored within them if access is compromised.", - "Message": "Bucket does not have encryption enabled", - "Query": "data..", - "Resolution": "Configure bucket encryption", - "Severity": "HIGH", - "PrimaryURL": "https://avd.aquasec.com/misconfig/avd-aws-0088", - "References": [ - "https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html", - "https://avd.aquasec.com/misconfig/avd-aws-0088" - ], - "Status": "FAIL", - "Layer": {}, - "CauseMetadata": { - "Resource": "aws_s3_bucket.bucket", - "Provider": "AWS", - "Service": "s3", - "StartLine": 8, - "EndLine": 10, - "Code": { - "Lines": [ - { - "Number": 8, - "Content": "resource \"aws_s3_bucket\" \"bucket\" {", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[38;5;33mresource\u001b[0m \u001b[38;5;37m\"aws_s3_bucket\"\u001b[0m \u001b[38;5;37m\"bucket\"\u001b[0m {", - "FirstCause": true, - "LastCause": false - }, - { - "Number": 9, - "Content": " bucket = \"trivy-action-bucket\"", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": " \u001b[38;5;245mbucket\u001b[0m = \u001b[38;5;37m\"trivy-action-bucket\"", - "FirstCause": false, - "LastCause": false - }, - { - "Number": 10, - "Content": "}", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[0m}", - "FirstCause": false, - "LastCause": true - } - ] - } - } - }, { "Type": "Terraform Security Check", "ID": "AVD-AWS-0089", @@ -271,358 +94,6 @@ ] } } - }, - { - "Type": "Terraform Security Check", - "ID": "AVD-AWS-0090", - "AVDID": "AVD-AWS-0090", - "Title": "S3 Data should be versioned", - "Description": "\nVersioning in Amazon S3 is a means of keeping multiple variants of an object in the same bucket. \nYou can use the S3 Versioning feature to preserve, retrieve, and restore every version of every object stored in your buckets. \nWith versioning you can recover more easily from both unintended user actions and application failures.\n", - "Message": "Bucket does not have versioning enabled", - "Query": "data..", - "Resolution": "Enable versioning to protect against accidental/malicious removal or modification", - "Severity": "MEDIUM", - "PrimaryURL": "https://avd.aquasec.com/misconfig/avd-aws-0090", - "References": [ - "https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html", - "https://avd.aquasec.com/misconfig/avd-aws-0090" - ], - "Status": "FAIL", - "Layer": {}, - "CauseMetadata": { - "Resource": "aws_s3_bucket_versioning.bucket_versioning", - "Provider": "AWS", - "Service": "s3", - "StartLine": 16, - "EndLine": 16, - "Code": { - "Lines": [ - { - "Number": 12, - "Content": "resource \"aws_s3_bucket_versioning\" \"bucket_versioning\" {", - "IsCause": false, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[38;5;33mresource\u001b[0m \u001b[38;5;37m\"aws_s3_bucket_versioning\"\u001b[0m \u001b[38;5;37m\"bucket_versioning\"\u001b[0m {", - "FirstCause": false, - "LastCause": false - }, - { - "Number": 13, - "Content": " bucket = aws_s3_bucket.bucket.id", - "IsCause": false, - "Annotation": "", - "Truncated": false, - "Highlighted": " \u001b[38;5;245mbucket\u001b[0m = aws_s3_bucket.bucket.id", - "FirstCause": false, - "LastCause": false - }, - { - "Number": 14, - "Content": "", - "IsCause": false, - "Annotation": "", - "Truncated": false, - "FirstCause": false, - "LastCause": false - }, - { - "Number": 15, - "Content": " versioning_configuration {", - "IsCause": false, - "Annotation": "", - "Truncated": false, - "Highlighted": " versioning_configuration {", - "FirstCause": false, - "LastCause": false - }, - { - "Number": 16, - "Content": " status = var.bucket_versioning_enabled", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": " \u001b[38;5;245mstatus\u001b[0m = \u001b[38;5;33mvar\u001b[0m.bucket_versioning_enabled", - "FirstCause": true, - "LastCause": true - }, - { - "Number": 17, - "Content": " }", - "IsCause": false, - "Annotation": "", - "Truncated": false, - "Highlighted": " }", - "FirstCause": false, - "LastCause": false - }, - { - "Number": 18, - "Content": "}", - "IsCause": false, - "Annotation": "", - "Truncated": false, - "Highlighted": "}", - "FirstCause": false, - "LastCause": false - } - ] - }, - "Occurrences": [ - { - "Resource": "versioning_configuration", - "Filename": "main.tf", - "Location": { - "StartLine": 15, - "EndLine": 17 - } - }, - { - "Resource": "aws_s3_bucket_versioning.bucket_versioning", - "Filename": "main.tf", - "Location": { - "StartLine": 12, - "EndLine": 18 - } - } - ] - } - }, - { - "Type": "Terraform Security Check", - "ID": "AVD-AWS-0091", - "AVDID": "AVD-AWS-0091", - "Title": "S3 Access Block should Ignore Public Acl", - "Description": "\nS3 buckets should ignore public ACLs on buckets and any objects they contain. By ignoring rather than blocking, PUT calls with public ACLs will still be applied but the ACL will be ignored.\n", - "Message": "No public access block so not ignoring public acls", - "Query": "data..", - "Resolution": "Enable ignoring the application of public ACLs in PUT calls", - "Severity": "HIGH", - "PrimaryURL": "https://avd.aquasec.com/misconfig/avd-aws-0091", - "References": [ - "https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html", - "https://avd.aquasec.com/misconfig/avd-aws-0091" - ], - "Status": "FAIL", - "Layer": {}, - "CauseMetadata": { - "Resource": "aws_s3_bucket.bucket", - "Provider": "AWS", - "Service": "s3", - "StartLine": 8, - "EndLine": 10, - "Code": { - "Lines": [ - { - "Number": 8, - "Content": "resource \"aws_s3_bucket\" \"bucket\" {", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[38;5;33mresource\u001b[0m \u001b[38;5;37m\"aws_s3_bucket\"\u001b[0m \u001b[38;5;37m\"bucket\"\u001b[0m {", - "FirstCause": true, - "LastCause": false - }, - { - "Number": 9, - "Content": " bucket = \"trivy-action-bucket\"", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": " \u001b[38;5;245mbucket\u001b[0m = \u001b[38;5;37m\"trivy-action-bucket\"", - "FirstCause": false, - "LastCause": false - }, - { - "Number": 10, - "Content": "}", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[0m}", - "FirstCause": false, - "LastCause": true - } - ] - } - } - }, - { - "Type": "Terraform Security Check", - "ID": "AVD-AWS-0093", - "AVDID": "AVD-AWS-0093", - "Title": "S3 Access block should restrict public bucket to limit access", - "Description": "S3 buckets should restrict public policies for the bucket. By enabling, the restrict_public_buckets, only the bucket owner and AWS Services can access if it has a public policy.", - "Message": "No public access block so not restricting public buckets", - "Query": "data..", - "Resolution": "Limit the access to public buckets to only the owner or AWS Services (eg; CloudFront)", - "Severity": "HIGH", - "PrimaryURL": "https://avd.aquasec.com/misconfig/avd-aws-0093", - "References": [ - "https://docs.aws.amazon.com/AmazonS3/latest/dev-retired/access-control-block-public-access.html", - "https://avd.aquasec.com/misconfig/avd-aws-0093" - ], - "Status": "FAIL", - "Layer": {}, - "CauseMetadata": { - "Resource": "aws_s3_bucket.bucket", - "Provider": "AWS", - "Service": "s3", - "StartLine": 8, - "EndLine": 10, - "Code": { - "Lines": [ - { - "Number": 8, - "Content": "resource \"aws_s3_bucket\" \"bucket\" {", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[38;5;33mresource\u001b[0m \u001b[38;5;37m\"aws_s3_bucket\"\u001b[0m \u001b[38;5;37m\"bucket\"\u001b[0m {", - "FirstCause": true, - "LastCause": false - }, - { - "Number": 9, - "Content": " bucket = \"trivy-action-bucket\"", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": " \u001b[38;5;245mbucket\u001b[0m = \u001b[38;5;37m\"trivy-action-bucket\"", - "FirstCause": false, - "LastCause": false - }, - { - "Number": 10, - "Content": "}", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[0m}", - "FirstCause": false, - "LastCause": true - } - ] - } - } - }, - { - "Type": "Terraform Security Check", - "ID": "AVD-AWS-0094", - "AVDID": "AVD-AWS-0094", - "Title": "S3 buckets should each define an aws_s3_bucket_public_access_block", - "Description": "The \"block public access\" settings in S3 override individual policies that apply to a given bucket, meaning that all public access can be controlled in one central types for that bucket. It is therefore good practice to define these settings for each bucket in order to clearly define the public access that can be allowed for it.", - "Message": "Bucket does not have a corresponding public access block.", - "Query": "data..", - "Resolution": "Define a aws_s3_bucket_public_access_block for the given bucket to control public access policies", - "Severity": "LOW", - "PrimaryURL": "https://avd.aquasec.com/misconfig/avd-aws-0094", - "References": [ - "https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html", - "https://avd.aquasec.com/misconfig/avd-aws-0094" - ], - "Status": "FAIL", - "Layer": {}, - "CauseMetadata": { - "Resource": "aws_s3_bucket.bucket", - "Provider": "AWS", - "Service": "s3", - "StartLine": 8, - "EndLine": 10, - "Code": { - "Lines": [ - { - "Number": 8, - "Content": "resource \"aws_s3_bucket\" \"bucket\" {", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[38;5;33mresource\u001b[0m \u001b[38;5;37m\"aws_s3_bucket\"\u001b[0m \u001b[38;5;37m\"bucket\"\u001b[0m {", - "FirstCause": true, - "LastCause": false - }, - { - "Number": 9, - "Content": " bucket = \"trivy-action-bucket\"", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": " \u001b[38;5;245mbucket\u001b[0m = \u001b[38;5;37m\"trivy-action-bucket\"", - "FirstCause": false, - "LastCause": false - }, - { - "Number": 10, - "Content": "}", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[0m}", - "FirstCause": false, - "LastCause": true - } - ] - } - } - }, - { - "Type": "Terraform Security Check", - "ID": "AVD-AWS-0132", - "AVDID": "AVD-AWS-0132", - "Title": "S3 encryption should use Customer Managed Keys", - "Description": "Encryption using AWS keys provides protection for your S3 buckets. To increase control of the encryption and manage factors like rotation use customer managed keys.", - "Message": "Bucket does not encrypt data with a customer managed key.", - "Query": "data..", - "Resolution": "Enable encryption using customer managed keys", - "Severity": "HIGH", - "PrimaryURL": "https://avd.aquasec.com/misconfig/avd-aws-0132", - "References": [ - "https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html", - "https://avd.aquasec.com/misconfig/avd-aws-0132" - ], - "Status": "FAIL", - "Layer": {}, - "CauseMetadata": { - "Resource": "aws_s3_bucket.bucket", - "Provider": "AWS", - "Service": "s3", - "StartLine": 8, - "EndLine": 10, - "Code": { - "Lines": [ - { - "Number": 8, - "Content": "resource \"aws_s3_bucket\" \"bucket\" {", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[38;5;33mresource\u001b[0m \u001b[38;5;37m\"aws_s3_bucket\"\u001b[0m \u001b[38;5;37m\"bucket\"\u001b[0m {", - "FirstCause": true, - "LastCause": false - }, - { - "Number": 9, - "Content": " bucket = \"trivy-action-bucket\"", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": " \u001b[38;5;245mbucket\u001b[0m = \u001b[38;5;37m\"trivy-action-bucket\"", - "FirstCause": false, - "LastCause": false - }, - { - "Number": 10, - "Content": "}", - "IsCause": true, - "Annotation": "", - "Truncated": false, - "Highlighted": "\u001b[0m}", - "FirstCause": false, - "LastCause": true - } - ] - } - } } ] } diff --git a/test/data/with-tf-vars/report.json b/test/data/with-tf-vars/report.json index 773d923..981200e 100644 --- a/test/data/with-tf-vars/report.json +++ b/test/data/with-tf-vars/report.json @@ -28,12 +28,7 @@ { "Target": "main.tf", "Class": "config", - "Type": "terraform", - "MisconfSummary": { - "Successes": 1, - "Failures": 0, - "Exceptions": 0 - } + "Type": "terraform" } ] } diff --git a/test/data/with-trivy-yaml-cfg/report.json b/test/data/with-trivy-yaml-cfg/report.json index cce0811..fb20538 100644 --- a/test/data/with-trivy-yaml-cfg/report.json +++ b/test/data/with-trivy-yaml-cfg/report.json @@ -64,7 +64,7 @@ "PkgName": "apk-tools", "PkgIdentifier": { "PURL": "pkg:apk/alpine/apk-tools@2.10.6-r0?arch=x86_64&distro=3.10.9", - "UID": "a6adb154870b6380" + "UID": "99f6581ffed6b22" }, "InstalledVersion": "2.10.6-r0", "FixedVersion": "2.10.7-r0",