You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T16:14:41Z INFO [vulndb] Need to update DB
2024-11-13T16:14:41Z INFO [vulndb] Downloading vulnerability DB...
2024-11-13T16:14:41Z INFO [vulndb] Downloading artifact... repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T16:14:43Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T16:14:43Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T16:14:43Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T16:14:43Z INFO [misconfig] Need to update the built-in checks
2024-11-13T16:14:43Z INFO [misconfig] Downloading the built-in checks...
160.60 KiB / 160.60 KiB [------------------------------------------------------] 100.00% ? p/s 100ms2024-11-13T16:14:43Z INFO [secret] Secret scanning is enabled
2024-11-13T16:14:43Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T16:14:43Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection
2024-11-13T16:14:44Z INFO [terraform scanner] Scanning root module file_path="."
2024-11-13T16:14:44Z WARN [terraform parser] Variable values was not found in the environment or variable files. Evaluating may not work correctly. module="root" variables="networking"
2024-11-13T16:14:44Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.connected_vpc_transit_gateway_routes" value="cty.NilVal"
2024-11-13T16:14:44Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users" value="cty.NilVal"
2024-11-13T16:14:44Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users_with_egress" value="cty.NilVal"
2024-11-13T16:14:49Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:49Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:49Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:49Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:50Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:50Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:50Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:50Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:50Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:50Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:50Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:50Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:14:51Z INFO [terraform executor] Ignore finding rule="aws-s3-enable-bucket-encryption" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T16:14:51Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:533"
2024-11-13T16:14:51Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:534"
2024-11-13T16:14:51Z INFO [terraform executor] Ignore finding rule="aws-s3-encryption-customer-key" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T16:14:51Z INFO Number of language-specific files num=0
2024-11-13T16:14:51Z INFO Detected config files num=8
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328 resource "aws_network_acl_rule" "private_outbound" {
...
340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...
343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311 resource "aws_network_acl_rule" "private_inbound" {
...
323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...
326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209 resource "aws_network_acl_rule" "public_outbound" {
...
221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...
224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192 resource "aws_network_acl_rule" "public_inbound" {
...
204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...
207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
</details> #### `Checkov Scan` Failed
<details><summary>Show Output</summary>
```hcl
*****************************
Checkov will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Checkov in terraform/environments/analytical-platform-ingestion
Excluding the following checks: CKV_GIT_1,CKV_AWS_126,CKV2_AWS_38,CKV2_AWS_39
2024-11-13 16:14:53,836 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/cloudwatch/aws//modules/log-group:5.6.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,836 [MainThread ] [WARNI] Failed to download module ministryofjustice/observability-platform-tenant/aws:1.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,837 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/kms/aws:3.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,837 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-rule-associations:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,837 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/secrets-manager/aws:1.3.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,837 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/sns/aws:6.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,837 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws//modules/vpc-endpoints:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,837 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-endpoints:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,838 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/lambda/aws:7.9.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,838 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,838 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-assumable-role:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,838 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,838 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/security-group/aws:5.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,838 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/alb/aws:9.11.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,838 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws//modules/notification:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,839 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-policy:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,839 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/ec2-instance/aws:5.7.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:14:53,850 [MainThread ] [WARNI] [ArmLocalGraph] created 0 vertices
2024-11-13 16:14:53,856 [MainThread ] [WARNI] [ArmLocalGraph] created 0 edges
terraform scan results:
Passed checks: 192, Failed checks: 2, Skipped checks: 74
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_route53_resolver_associations
File: /route53-resolver-associations.tf:1-13
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_route53_resolver_associations" {
2 |
3 | source = "terraform-aws-modules/route53/aws//modules/resolver-rule-associations"
4 | version = "4.1.0"
5 |
6 | vpc_id = module.connected_vpc.vpc_id
7 |
8 | resolver_rule_associations = {
9 | mojo-dns-resolver-dom1-infra-int = {
10 | resolver_rule_id = aws_route53_resolver_rule.mojo_dns_resolver_dom1_infra_int.id
11 | }
12 | }
13 | }
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_outbound_route53_resolver_endpoint
File: /route53-resolver-endpoints.tf:1-27
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_outbound_route53_resolver_endpoint" {
2 | source = "terraform-aws-modules/route53/aws//modules/resolver-endpoints"
3 | version = "4.1.0"
4 |
5 | name = "connected-vpc-outbound"
6 | vpc_id = module.connected_vpc.vpc_id
7 | direction = "OUTBOUND"
8 | protocols = ["Do53"]
9 |
10 | ip_address = [
11 | {
12 | subnet_id = module.connected_vpc.private_subnets[0]
13 | },
14 | {
15 | subnet_id = module.connected_vpc.private_subnets[1]
16 | }
17 | ]
18 |
19 | security_group_ingress_cidr_blocks = [module.connected_vpc.vpc_cidr_block]
20 | security_group_egress_cidr_blocks = [
21 | /* MoJO DNS Resolver Service */
22 | "10.180.80.5/32",
23 | "10.180.81.5/32"
24 | ]
25 |
26 | tags = local.tags
27 | }
checkov_exitcode=1
CTFLint Scan Success
Show Output
*****************************
Setting default tflint config...
Running tflint --init...
Installing "terraform" plugin...
Installed "terraform" (source: github.com/terraform-linters/tflint-ruleset-terraform, version:0.9.1)
tflint will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running tflint in terraform/environments/analytical-platform-ingestion
Excluding the following checks: terraform_unused_declarations
tflint_exitcode=0
Trivy Scan Failed
Show Output
*****************************
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T16:14:41Z INFO [vulndb] Need to update DB
2024-11-13T16:14:41Z INFO [vulndb] Downloading vulnerability DB...2024-11-13T16:14:41Z INFO [vulndb] Downloading artifact...repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T16:14:43Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T16:14:43Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T16:14:43Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T16:14:43Z INFO [misconfig] Need to update the built-in checks
2024-11-13T16:14:43Z INFO [misconfig] Downloading the built-in checks...160.60 KiB /160.60 KiB [------------------------------------------------------] 100.00%? p/s 100ms2024-11-13T16:14:43Z INFO [secret] Secret scanning is enabled
2024-11-13T16:14:43Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T16:14:43Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection2024-11-13T16:14:44Z INFO [terraformscanner] Scanning root module file_path="."2024-11-13T16:14:44Z WARN [terraformparser] Variable values was not found in the environment or variable files. Evaluating may not work correctly.module="root"variables="networking"2024-11-13T16:14:44Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.connected_vpc_transit_gateway_routes"value="cty.NilVal"2024-11-13T16:14:44Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users"value="cty.NilVal"2024-11-13T16:14:44Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users_with_egress"value="cty.NilVal"2024-11-13T16:14:49Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:49Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:49Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:49Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:50Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:50Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:50Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:50Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:50Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:50Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:50Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:50Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:14:51Z INFO [terraformexecutor] Ignore finding rule="aws-s3-enable-bucket-encryption"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T16:14:51Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:533"2024-11-13T16:14:51Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:534"2024-11-13T16:14:51Z INFO [terraformexecutor] Ignore finding rule="aws-s3-encryption-customer-key"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T16:14:51Z INFO Number of language-specific files num=02024-11-13T16:14:51Z INFO Detected config files num=8
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf (terraform)
===============================================================================================================================
Tests:1 (SUCCESSES:0, FAILURES:1)
Failures:1 (HIGH:1, CRITICAL:0)
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
See https://avd.aquasec.com/misconfig/avd-aws-0053
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf:12-81
via network-load-balancers.tf:1-37 (module.datasync_activation_nlb)
ββββββββββββββββββββββββββββββββββββββββ
12 β resource"aws_lb""this" {
13 β count=local.create?1:014 β
15 β dynamic"access_logs" {
16 β for_each=length(var.access_logs) >0? [var.access_logs] : []
17 β
18 β content {
19 β bucket=access_logs.value.bucket20 β enabled=try(access_logs.value.enabled, true)
..
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf (terraform)
===============================================================================================================================
Tests:4 (SUCCESSES:0, FAILURES:4)
Failures:4 (HIGH:0, CRITICAL:4)
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328resource"aws_network_acl_rule""private_outbound" {
...340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311resource"aws_network_acl_rule""private_inbound" {
...323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209resource"aws_network_acl_rule""public_outbound" {
...221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192resource"aws_network_acl_rule""public_inbound" {
...204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T16:18:27Z INFO [vulndb] Need to update DB
2024-11-13T16:18:27Z INFO [vulndb] Downloading vulnerability DB...
2024-11-13T16:18:27Z INFO [vulndb] Downloading artifact... repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T16:18:29Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T16:18:29Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T16:18:29Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T16:18:29Z INFO [misconfig] Need to update the built-in checks
2024-11-13T16:18:29Z INFO [misconfig] Downloading the built-in checks...
160.60 KiB / 160.60 KiB [------------------------------------------------------] 100.00% ? p/s 100ms2024-11-13T16:18:30Z INFO [secret] Secret scanning is enabled
2024-11-13T16:18:30Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T16:18:30Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection
2024-11-13T16:18:31Z INFO [terraform scanner] Scanning root module file_path="."
2024-11-13T16:18:31Z WARN [terraform parser] Variable values was not found in the environment or variable files. Evaluating may not work correctly. module="root" variables="networking"
2024-11-13T16:18:31Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.connected_vpc_transit_gateway_routes" value="cty.NilVal"
2024-11-13T16:18:31Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users" value="cty.NilVal"
2024-11-13T16:18:31Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users_with_egress" value="cty.NilVal"
2024-11-13T16:18:42Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:42Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:42Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:42Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:43Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:43Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:43Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:43Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:43Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:43Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:43Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:43Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:18:44Z INFO [terraform executor] Ignore finding rule="aws-s3-enable-bucket-encryption" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T16:18:44Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:533"
2024-11-13T16:18:44Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:534"
2024-11-13T16:18:44Z INFO [terraform executor] Ignore finding rule="aws-s3-encryption-customer-key" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T16:18:44Z INFO Number of language-specific files num=0
2024-11-13T16:18:44Z INFO Detected config files num=8
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328 resource "aws_network_acl_rule" "private_outbound" {
...
340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...
343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311 resource "aws_network_acl_rule" "private_inbound" {
...
323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...
326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209 resource "aws_network_acl_rule" "public_outbound" {
...
221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...
224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192 resource "aws_network_acl_rule" "public_inbound" {
...
204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...
207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
</details> #### `Checkov Scan` Failed
<details><summary>Show Output</summary>
```hcl
*****************************
Checkov will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Checkov in terraform/environments/analytical-platform-ingestion
Excluding the following checks: CKV_GIT_1,CKV_AWS_126,CKV2_AWS_38,CKV2_AWS_39
2024-11-13 16:18:47,509 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/cloudwatch/aws//modules/log-group:5.6.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,509 [MainThread ] [WARNI] Failed to download module ministryofjustice/observability-platform-tenant/aws:1.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,509 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/kms/aws:3.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,509 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-rule-associations:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,509 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/secrets-manager/aws:1.3.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,509 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/sns/aws:6.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,510 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws//modules/vpc-endpoints:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,510 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-endpoints:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,510 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/lambda/aws:7.9.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,510 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,510 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-assumable-role:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,510 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,511 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/security-group/aws:5.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,511 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/alb/aws:9.11.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,511 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws//modules/notification:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,511 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-policy:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,511 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/ec2-instance/aws:5.7.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:18:47,528 [MainThread ] [WARNI] [ArmLocalGraph] created 0 vertices
2024-11-13 16:18:47,528 [MainThread ] [WARNI] [ArmLocalGraph] created 0 edges
terraform scan results:
Passed checks: 192, Failed checks: 2, Skipped checks: 74
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_route53_resolver_associations
File: /route53-resolver-associations.tf:1-13
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_route53_resolver_associations" {
2 |
3 | source = "terraform-aws-modules/route53/aws//modules/resolver-rule-associations"
4 | version = "4.1.0"
5 |
6 | vpc_id = module.connected_vpc.vpc_id
7 |
8 | resolver_rule_associations = {
9 | mojo-dns-resolver-dom1-infra-int = {
10 | resolver_rule_id = aws_route53_resolver_rule.mojo_dns_resolver_dom1_infra_int.id
11 | }
12 | }
13 | }
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_outbound_route53_resolver_endpoint
File: /route53-resolver-endpoints.tf:1-27
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_outbound_route53_resolver_endpoint" {
2 | source = "terraform-aws-modules/route53/aws//modules/resolver-endpoints"
3 | version = "4.1.0"
4 |
5 | name = "connected-vpc-outbound"
6 | vpc_id = module.connected_vpc.vpc_id
7 | direction = "OUTBOUND"
8 | protocols = ["Do53"]
9 |
10 | ip_address = [
11 | {
12 | subnet_id = module.connected_vpc.private_subnets[0]
13 | },
14 | {
15 | subnet_id = module.connected_vpc.private_subnets[1]
16 | }
17 | ]
18 |
19 | security_group_ingress_cidr_blocks = [module.connected_vpc.vpc_cidr_block]
20 | security_group_egress_cidr_blocks = [
21 | /* MoJO DNS Resolver Service */
22 | "10.180.80.5/32",
23 | "10.180.81.5/32"
24 | ]
25 |
26 | tags = local.tags
27 | }
checkov_exitcode=1
CTFLint Scan Success
Show Output
*****************************
Setting default tflint config...
Running tflint --init...
Installing "terraform" plugin...
Installed "terraform" (source: github.com/terraform-linters/tflint-ruleset-terraform, version:0.9.1)
tflint will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running tflint in terraform/environments/analytical-platform-ingestion
Excluding the following checks: terraform_unused_declarations
tflint_exitcode=0
Trivy Scan Failed
Show Output
*****************************
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T16:18:27Z INFO [vulndb] Need to update DB
2024-11-13T16:18:27Z INFO [vulndb] Downloading vulnerability DB...2024-11-13T16:18:27Z INFO [vulndb] Downloading artifact...repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T16:18:29Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T16:18:29Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T16:18:29Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T16:18:29Z INFO [misconfig] Need to update the built-in checks
2024-11-13T16:18:29Z INFO [misconfig] Downloading the built-in checks...160.60 KiB /160.60 KiB [------------------------------------------------------] 100.00%? p/s 100ms2024-11-13T16:18:30Z INFO [secret] Secret scanning is enabled
2024-11-13T16:18:30Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T16:18:30Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection2024-11-13T16:18:31Z INFO [terraformscanner] Scanning root module file_path="."2024-11-13T16:18:31Z WARN [terraformparser] Variable values was not found in the environment or variable files. Evaluating may not work correctly.module="root"variables="networking"2024-11-13T16:18:31Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.connected_vpc_transit_gateway_routes"value="cty.NilVal"2024-11-13T16:18:31Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users"value="cty.NilVal"2024-11-13T16:18:31Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users_with_egress"value="cty.NilVal"2024-11-13T16:18:42Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:42Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:42Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:42Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:43Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:43Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:43Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:43Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:43Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:43Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:43Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:43Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:18:44Z INFO [terraformexecutor] Ignore finding rule="aws-s3-enable-bucket-encryption"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T16:18:44Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:533"2024-11-13T16:18:44Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:534"2024-11-13T16:18:44Z INFO [terraformexecutor] Ignore finding rule="aws-s3-encryption-customer-key"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T16:18:44Z INFO Number of language-specific files num=02024-11-13T16:18:44Z INFO Detected config files num=8
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf (terraform)
===============================================================================================================================
Tests:1 (SUCCESSES:0, FAILURES:1)
Failures:1 (HIGH:1, CRITICAL:0)
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
See https://avd.aquasec.com/misconfig/avd-aws-0053
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf:12-81
via network-load-balancers.tf:1-37 (module.datasync_activation_nlb)
ββββββββββββββββββββββββββββββββββββββββ
12 β resource"aws_lb""this" {
13 β count=local.create?1:014 β
15 β dynamic"access_logs" {
16 β for_each=length(var.access_logs) >0? [var.access_logs] : []
17 β
18 β content {
19 β bucket=access_logs.value.bucket20 β enabled=try(access_logs.value.enabled, true)
..
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf (terraform)
===============================================================================================================================
Tests:4 (SUCCESSES:0, FAILURES:4)
Failures:4 (HIGH:0, CRITICAL:4)
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328resource"aws_network_acl_rule""private_outbound" {
...340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311resource"aws_network_acl_rule""private_inbound" {
...323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209resource"aws_network_acl_rule""public_outbound" {
...221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192resource"aws_network_acl_rule""public_inbound" {
...204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T16:30:51Z INFO [vulndb] Need to update DB
2024-11-13T16:30:51Z INFO [vulndb] Downloading vulnerability DB...
2024-11-13T16:30:51Z INFO [vulndb] Downloading artifact... repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T16:30:53Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T16:30:53Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T16:30:53Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T16:30:53Z INFO [misconfig] Need to update the built-in checks
2024-11-13T16:30:53Z INFO [misconfig] Downloading the built-in checks...
160.60 KiB / 160.60 KiB [------------------------------------------------------] 100.00% ? p/s 100ms2024-11-13T16:30:54Z INFO [secret] Secret scanning is enabled
2024-11-13T16:30:54Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T16:30:54Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection
2024-11-13T16:30:55Z INFO [terraform scanner] Scanning root module file_path="."
2024-11-13T16:30:55Z WARN [terraform parser] Variable values was not found in the environment or variable files. Evaluating may not work correctly. module="root" variables="networking"
2024-11-13T16:30:55Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.connected_vpc_transit_gateway_routes" value="cty.NilVal"
2024-11-13T16:30:55Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users" value="cty.NilVal"
2024-11-13T16:30:55Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users_with_egress" value="cty.NilVal"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:06Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:31:08Z INFO [terraform executor] Ignore finding rule="aws-s3-enable-bucket-encryption" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T16:31:08Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:533"
2024-11-13T16:31:08Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:534"
2024-11-13T16:31:08Z INFO [terraform executor] Ignore finding rule="aws-s3-encryption-customer-key" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T16:31:08Z INFO Number of language-specific files num=0
2024-11-13T16:31:08Z INFO Detected config files num=8
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328 resource "aws_network_acl_rule" "private_outbound" {
...
340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...
343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311 resource "aws_network_acl_rule" "private_inbound" {
...
323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...
326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209 resource "aws_network_acl_rule" "public_outbound" {
...
221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...
224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192 resource "aws_network_acl_rule" "public_inbound" {
...
204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...
207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
</details> #### `Checkov Scan` Failed
<details><summary>Show Output</summary>
```hcl
*****************************
Checkov will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Checkov in terraform/environments/analytical-platform-ingestion
Excluding the following checks: CKV_GIT_1,CKV_AWS_126,CKV2_AWS_38,CKV2_AWS_39
2024-11-13 16:31:10,985 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/cloudwatch/aws//modules/log-group:5.6.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,985 [MainThread ] [WARNI] Failed to download module ministryofjustice/observability-platform-tenant/aws:1.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,985 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/kms/aws:3.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,985 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-rule-associations:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,985 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/secrets-manager/aws:1.3.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,986 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/sns/aws:6.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,986 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws//modules/vpc-endpoints:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,986 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-endpoints:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,986 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/lambda/aws:7.9.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,986 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,986 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-assumable-role:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,987 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,987 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/security-group/aws:5.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,987 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/alb/aws:9.11.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,987 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws//modules/notification:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,987 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-policy:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:10,987 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/ec2-instance/aws:5.7.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:31:11,007 [MainThread ] [WARNI] [ArmLocalGraph] created 0 vertices
2024-11-13 16:31:11,007 [MainThread ] [WARNI] [ArmLocalGraph] created 0 edges
terraform scan results:
Passed checks: 192, Failed checks: 2, Skipped checks: 74
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_route53_resolver_associations
File: /route53-resolver-associations.tf:1-13
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_route53_resolver_associations" {
2 |
3 | source = "terraform-aws-modules/route53/aws//modules/resolver-rule-associations"
4 | version = "4.1.0"
5 |
6 | vpc_id = module.connected_vpc.vpc_id
7 |
8 | resolver_rule_associations = {
9 | mojo-dns-resolver-dom1-infra-int = {
10 | resolver_rule_id = aws_route53_resolver_rule.mojo_dns_resolver_dom1_infra_int.id
11 | }
12 | }
13 | }
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_outbound_route53_resolver_endpoint
File: /route53-resolver-endpoints.tf:1-27
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_outbound_route53_resolver_endpoint" {
2 | source = "terraform-aws-modules/route53/aws//modules/resolver-endpoints"
3 | version = "4.1.0"
4 |
5 | name = "connected-vpc-outbound"
6 | vpc_id = module.connected_vpc.vpc_id
7 | direction = "OUTBOUND"
8 | protocols = ["Do53"]
9 |
10 | ip_address = [
11 | {
12 | subnet_id = module.connected_vpc.private_subnets[0]
13 | },
14 | {
15 | subnet_id = module.connected_vpc.private_subnets[1]
16 | }
17 | ]
18 |
19 | security_group_ingress_cidr_blocks = [module.connected_vpc.vpc_cidr_block]
20 | security_group_egress_cidr_blocks = [
21 | /* MoJO DNS Resolver Service */
22 | "10.180.80.5/32",
23 | "10.180.81.5/32"
24 | ]
25 |
26 | tags = local.tags
27 | }
checkov_exitcode=1
CTFLint Scan Success
Show Output
*****************************
Setting default tflint config...
Running tflint --init...
Installing "terraform" plugin...
Installed "terraform" (source: github.com/terraform-linters/tflint-ruleset-terraform, version:0.9.1)
tflint will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running tflint in terraform/environments/analytical-platform-ingestion
Excluding the following checks: terraform_unused_declarations
tflint_exitcode=0
Trivy Scan Failed
Show Output
*****************************
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T16:30:51Z INFO [vulndb] Need to update DB
2024-11-13T16:30:51Z INFO [vulndb] Downloading vulnerability DB...2024-11-13T16:30:51Z INFO [vulndb] Downloading artifact...repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T16:30:53Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T16:30:53Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T16:30:53Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T16:30:53Z INFO [misconfig] Need to update the built-in checks
2024-11-13T16:30:53Z INFO [misconfig] Downloading the built-in checks...160.60 KiB /160.60 KiB [------------------------------------------------------] 100.00%? p/s 100ms2024-11-13T16:30:54Z INFO [secret] Secret scanning is enabled
2024-11-13T16:30:54Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T16:30:54Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection2024-11-13T16:30:55Z INFO [terraformscanner] Scanning root module file_path="."2024-11-13T16:30:55Z WARN [terraformparser] Variable values was not found in the environment or variable files. Evaluating may not work correctly.module="root"variables="networking"2024-11-13T16:30:55Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.connected_vpc_transit_gateway_routes"value="cty.NilVal"2024-11-13T16:30:55Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users"value="cty.NilVal"2024-11-13T16:30:55Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users_with_egress"value="cty.NilVal"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:06Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:31:08Z INFO [terraformexecutor] Ignore finding rule="aws-s3-enable-bucket-encryption"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T16:31:08Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:533"2024-11-13T16:31:08Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:534"2024-11-13T16:31:08Z INFO [terraformexecutor] Ignore finding rule="aws-s3-encryption-customer-key"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T16:31:08Z INFO Number of language-specific files num=02024-11-13T16:31:08Z INFO Detected config files num=8
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf (terraform)
===============================================================================================================================
Tests:1 (SUCCESSES:0, FAILURES:1)
Failures:1 (HIGH:1, CRITICAL:0)
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
See https://avd.aquasec.com/misconfig/avd-aws-0053
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf:12-81
via network-load-balancers.tf:1-37 (module.datasync_activation_nlb)
ββββββββββββββββββββββββββββββββββββββββ
12 β resource"aws_lb""this" {
13 β count=local.create?1:014 β
15 β dynamic"access_logs" {
16 β for_each=length(var.access_logs) >0? [var.access_logs] : []
17 β
18 β content {
19 β bucket=access_logs.value.bucket20 β enabled=try(access_logs.value.enabled, true)
..
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf (terraform)
===============================================================================================================================
Tests:4 (SUCCESSES:0, FAILURES:4)
Failures:4 (HIGH:0, CRITICAL:4)
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328resource"aws_network_acl_rule""private_outbound" {
...340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311resource"aws_network_acl_rule""private_inbound" {
...323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209resource"aws_network_acl_rule""public_outbound" {
...221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192resource"aws_network_acl_rule""public_inbound" {
...204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T16:36:04Z INFO [vulndb] Need to update DB
2024-11-13T16:36:04Z INFO [vulndb] Downloading vulnerability DB...
2024-11-13T16:36:04Z INFO [vulndb] Downloading artifact... repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T16:36:06Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T16:36:06Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T16:36:06Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T16:36:06Z INFO [misconfig] Need to update the built-in checks
2024-11-13T16:36:06Z INFO [misconfig] Downloading the built-in checks...
160.60 KiB / 160.60 KiB [---------------------------------------------------------] 100.00% ? p/s 0s2024-11-13T16:36:06Z INFO [secret] Secret scanning is enabled
2024-11-13T16:36:06Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T16:36:06Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection
2024-11-13T16:36:07Z INFO [terraform scanner] Scanning root module file_path="."
2024-11-13T16:36:07Z WARN [terraform parser] Variable values was not found in the environment or variable files. Evaluating may not work correctly. module="root" variables="networking"
2024-11-13T16:36:07Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.connected_vpc_transit_gateway_routes" value="cty.NilVal"
2024-11-13T16:36:07Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users" value="cty.NilVal"
2024-11-13T16:36:07Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users_with_egress" value="cty.NilVal"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:20Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:36:21Z INFO [terraform executor] Ignore finding rule="aws-s3-enable-bucket-encryption" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T16:36:21Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:533"
2024-11-13T16:36:21Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:534"
2024-11-13T16:36:21Z INFO [terraform executor] Ignore finding rule="aws-s3-encryption-customer-key" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T16:36:21Z INFO Number of language-specific files num=0
2024-11-13T16:36:21Z INFO Detected config files num=8
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328 resource "aws_network_acl_rule" "private_outbound" {
...
340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...
343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311 resource "aws_network_acl_rule" "private_inbound" {
...
323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...
326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209 resource "aws_network_acl_rule" "public_outbound" {
...
221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...
224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192 resource "aws_network_acl_rule" "public_inbound" {
...
204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...
207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
</details> #### `Checkov Scan` Failed
<details><summary>Show Output</summary>
```hcl
*****************************
Checkov will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Checkov in terraform/environments/analytical-platform-ingestion
Excluding the following checks: CKV_GIT_1,CKV_AWS_126,CKV2_AWS_38,CKV2_AWS_39
2024-11-13 16:36:24,797 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/cloudwatch/aws//modules/log-group:5.6.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,797 [MainThread ] [WARNI] Failed to download module ministryofjustice/observability-platform-tenant/aws:1.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,798 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/kms/aws:3.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,798 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-rule-associations:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,798 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/secrets-manager/aws:1.3.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,798 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/sns/aws:6.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,798 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws//modules/vpc-endpoints:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,799 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-endpoints:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,799 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/lambda/aws:7.9.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,799 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,799 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-assumable-role:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,799 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,799 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/security-group/aws:5.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,799 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/alb/aws:9.11.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,800 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws//modules/notification:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,800 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-policy:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,800 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/ec2-instance/aws:5.7.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:36:24,816 [MainThread ] [WARNI] [ArmLocalGraph] created 0 vertices
2024-11-13 16:36:24,816 [MainThread ] [WARNI] [ArmLocalGraph] created 0 edges
terraform scan results:
Passed checks: 192, Failed checks: 2, Skipped checks: 74
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_route53_resolver_associations
File: /route53-resolver-associations.tf:1-13
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_route53_resolver_associations" {
2 |
3 | source = "terraform-aws-modules/route53/aws//modules/resolver-rule-associations"
4 | version = "4.1.0"
5 |
6 | vpc_id = module.connected_vpc.vpc_id
7 |
8 | resolver_rule_associations = {
9 | mojo-dns-resolver-dom1-infra-int = {
10 | resolver_rule_id = aws_route53_resolver_rule.mojo_dns_resolver_dom1_infra_int.id
11 | }
12 | }
13 | }
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_outbound_route53_resolver_endpoint
File: /route53-resolver-endpoints.tf:1-27
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_outbound_route53_resolver_endpoint" {
2 | source = "terraform-aws-modules/route53/aws//modules/resolver-endpoints"
3 | version = "4.1.0"
4 |
5 | name = "connected-vpc-outbound"
6 | vpc_id = module.connected_vpc.vpc_id
7 | direction = "OUTBOUND"
8 | protocols = ["Do53"]
9 |
10 | ip_address = [
11 | {
12 | subnet_id = module.connected_vpc.private_subnets[0]
13 | },
14 | {
15 | subnet_id = module.connected_vpc.private_subnets[1]
16 | }
17 | ]
18 |
19 | security_group_ingress_cidr_blocks = [module.connected_vpc.vpc_cidr_block]
20 | security_group_egress_cidr_blocks = [
21 | /* MoJO DNS Resolver Service */
22 | "10.180.80.5/32",
23 | "10.180.81.5/32"
24 | ]
25 |
26 | tags = local.tags
27 | }
checkov_exitcode=1
CTFLint Scan Success
Show Output
*****************************
Setting default tflint config...
Running tflint --init...
Installing "terraform" plugin...
Installed "terraform" (source: github.com/terraform-linters/tflint-ruleset-terraform, version:0.9.1)
tflint will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running tflint in terraform/environments/analytical-platform-ingestion
Excluding the following checks: terraform_unused_declarations
tflint_exitcode=0
Trivy Scan Failed
Show Output
*****************************
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T16:36:04Z INFO [vulndb] Need to update DB
2024-11-13T16:36:04Z INFO [vulndb] Downloading vulnerability DB...2024-11-13T16:36:04Z INFO [vulndb] Downloading artifact...repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T16:36:06Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T16:36:06Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T16:36:06Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T16:36:06Z INFO [misconfig] Need to update the built-in checks
2024-11-13T16:36:06Z INFO [misconfig] Downloading the built-in checks...160.60 KiB /160.60 KiB [---------------------------------------------------------] 100.00%? p/s 0s2024-11-13T16:36:06Z INFO [secret] Secret scanning is enabled
2024-11-13T16:36:06Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T16:36:06Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection2024-11-13T16:36:07Z INFO [terraformscanner] Scanning root module file_path="."2024-11-13T16:36:07Z WARN [terraformparser] Variable values was not found in the environment or variable files. Evaluating may not work correctly.module="root"variables="networking"2024-11-13T16:36:07Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.connected_vpc_transit_gateway_routes"value="cty.NilVal"2024-11-13T16:36:07Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users"value="cty.NilVal"2024-11-13T16:36:07Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users_with_egress"value="cty.NilVal"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:20Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:36:21Z INFO [terraformexecutor] Ignore finding rule="aws-s3-enable-bucket-encryption"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T16:36:21Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:533"2024-11-13T16:36:21Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:534"2024-11-13T16:36:21Z INFO [terraformexecutor] Ignore finding rule="aws-s3-encryption-customer-key"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T16:36:21Z INFO Number of language-specific files num=02024-11-13T16:36:21Z INFO Detected config files num=8
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf (terraform)
===============================================================================================================================
Tests:1 (SUCCESSES:0, FAILURES:1)
Failures:1 (HIGH:1, CRITICAL:0)
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
See https://avd.aquasec.com/misconfig/avd-aws-0053
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf:12-81
via network-load-balancers.tf:1-37 (module.datasync_activation_nlb)
ββββββββββββββββββββββββββββββββββββββββ
12 β resource"aws_lb""this" {
13 β count=local.create?1:014 β
15 β dynamic"access_logs" {
16 β for_each=length(var.access_logs) >0? [var.access_logs] : []
17 β
18 β content {
19 β bucket=access_logs.value.bucket20 β enabled=try(access_logs.value.enabled, true)
..
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf (terraform)
===============================================================================================================================
Tests:4 (SUCCESSES:0, FAILURES:4)
Failures:4 (HIGH:0, CRITICAL:4)
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328resource"aws_network_acl_rule""private_outbound" {
...340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311resource"aws_network_acl_rule""private_inbound" {
...323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209resource"aws_network_acl_rule""public_outbound" {
...221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192resource"aws_network_acl_rule""public_inbound" {
...204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T16:57:54Z INFO [vulndb] Need to update DB
2024-11-13T16:57:54Z INFO [vulndb] Downloading vulnerability DB...
2024-11-13T16:57:54Z INFO [vulndb] Downloading artifact... repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T16:57:57Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T16:57:57Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T16:57:57Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T16:57:57Z INFO [misconfig] Need to update the built-in checks
2024-11-13T16:57:57Z INFO [misconfig] Downloading the built-in checks...
2024-11-13T16:57:57Z ERROR [misconfig] Falling back to embedded checks err="failed to download built-in policies: download error: OCI repository error: 1 error occurred:\n\t* GET https://ghcr.io/v2/aquasecurity/trivy-checks/manifests/1: TOOMANYREQUESTS: retry-after: 435.322Β΅s, allowed: 44000/minute\n\n"
2024-11-13T16:57:57Z INFO [secret] Secret scanning is enabled
2024-11-13T16:57:57Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T16:57:57Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection
2024-11-13T16:57:58Z INFO [terraform scanner] Scanning root module file_path="."
2024-11-13T16:57:58Z WARN [terraform parser] Variable values was not found in the environment or variable files. Evaluating may not work correctly. module="root" variables="networking"
2024-11-13T16:57:58Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.connected_vpc_transit_gateway_routes" value="cty.NilVal"
2024-11-13T16:57:58Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users" value="cty.NilVal"
2024-11-13T16:57:58Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users_with_egress" value="cty.NilVal"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:03Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T16:58:04Z INFO [terraform executor] Ignore finding rule="aws-s3-encryption-customer-key" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T16:58:04Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:533"
2024-11-13T16:58:04Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:534"
2024-11-13T16:58:04Z INFO [terraform executor] Ignore finding rule="aws-s3-enable-bucket-encryption" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T16:58:04Z INFO Number of language-specific files num=0
2024-11-13T16:58:04Z INFO Detected config files num=8
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328 resource "aws_network_acl_rule" "private_outbound" {
...
340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...
343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311 resource "aws_network_acl_rule" "private_inbound" {
...
323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...
326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209 resource "aws_network_acl_rule" "public_outbound" {
...
221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...
224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192 resource "aws_network_acl_rule" "public_inbound" {
...
204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...
207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
</details> #### `Checkov Scan` Failed
<details><summary>Show Output</summary>
```hcl
*****************************
Checkov will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Checkov in terraform/environments/analytical-platform-ingestion
Excluding the following checks: CKV_GIT_1,CKV_AWS_126,CKV2_AWS_38,CKV2_AWS_39
2024-11-13 16:58:07,186 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/cloudwatch/aws//modules/log-group:5.6.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,186 [MainThread ] [WARNI] Failed to download module ministryofjustice/observability-platform-tenant/aws:1.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,186 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/kms/aws:3.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,186 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-rule-associations:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,186 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/secrets-manager/aws:1.3.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,186 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/sns/aws:6.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,187 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws//modules/vpc-endpoints:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,187 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-endpoints:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,187 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/lambda/aws:7.9.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,187 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,187 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-assumable-role:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,187 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,187 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/security-group/aws:5.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,188 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/alb/aws:9.11.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,188 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws//modules/notification:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,188 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-policy:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,188 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/ec2-instance/aws:5.7.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 16:58:07,202 [MainThread ] [WARNI] [ArmLocalGraph] created 0 vertices
2024-11-13 16:58:07,208 [MainThread ] [WARNI] [ArmLocalGraph] created 0 edges
terraform scan results:
Passed checks: 192, Failed checks: 2, Skipped checks: 74
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_route53_resolver_associations
File: /route53-resolver-associations.tf:1-13
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_route53_resolver_associations" {
2 |
3 | source = "terraform-aws-modules/route53/aws//modules/resolver-rule-associations"
4 | version = "4.1.0"
5 |
6 | vpc_id = module.connected_vpc.vpc_id
7 |
8 | resolver_rule_associations = {
9 | mojo-dns-resolver-dom1-infra-int = {
10 | resolver_rule_id = aws_route53_resolver_rule.mojo_dns_resolver_dom1_infra_int.id
11 | }
12 | }
13 | }
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_outbound_route53_resolver_endpoint
File: /route53-resolver-endpoints.tf:1-27
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_outbound_route53_resolver_endpoint" {
2 | source = "terraform-aws-modules/route53/aws//modules/resolver-endpoints"
3 | version = "4.1.0"
4 |
5 | name = "connected-vpc-outbound"
6 | vpc_id = module.connected_vpc.vpc_id
7 | direction = "OUTBOUND"
8 | protocols = ["Do53"]
9 |
10 | ip_address = [
11 | {
12 | subnet_id = module.connected_vpc.private_subnets[0]
13 | },
14 | {
15 | subnet_id = module.connected_vpc.private_subnets[1]
16 | }
17 | ]
18 |
19 | security_group_ingress_cidr_blocks = [module.connected_vpc.vpc_cidr_block]
20 | security_group_egress_cidr_blocks = [
21 | /* MoJO DNS Resolver Service */
22 | "10.180.80.5/32",
23 | "10.180.81.5/32"
24 | ]
25 |
26 | tags = local.tags
27 | }
checkov_exitcode=1
CTFLint Scan Success
Show Output
*****************************
Setting default tflint config...
Running tflint --init...
Installing "terraform" plugin...
Installed "terraform" (source: github.com/terraform-linters/tflint-ruleset-terraform, version:0.9.1)
tflint will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running tflint in terraform/environments/analytical-platform-ingestion
Excluding the following checks: terraform_unused_declarations
tflint_exitcode=0
Trivy Scan Failed
Show Output
*****************************
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T16:57:54Z INFO [vulndb] Need to update DB
2024-11-13T16:57:54Z INFO [vulndb] Downloading vulnerability DB...2024-11-13T16:57:54Z INFO [vulndb] Downloading artifact...repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T16:57:57Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T16:57:57Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T16:57:57Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T16:57:57Z INFO [misconfig] Need to update the built-in checks
2024-11-13T16:57:57Z INFO [misconfig] Downloading the built-in checks...2024-11-13T16:57:57Z ERROR [misconfig] Falling back to embedded checks err="failed to download built-in policies: download error: OCI repository error: 1 error occurred:\n\t* GET https://ghcr.io/v2/aquasecurity/trivy-checks/manifests/1: TOOMANYREQUESTS: retry-after: 435.322Β΅s, allowed: 44000/minute\n\n"2024-11-13T16:57:57Z INFO [secret] Secret scanning is enabled
2024-11-13T16:57:57Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T16:57:57Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection2024-11-13T16:57:58Z INFO [terraformscanner] Scanning root module file_path="."2024-11-13T16:57:58Z WARN [terraformparser] Variable values was not found in the environment or variable files. Evaluating may not work correctly.module="root"variables="networking"2024-11-13T16:57:58Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.connected_vpc_transit_gateway_routes"value="cty.NilVal"2024-11-13T16:57:58Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users"value="cty.NilVal"2024-11-13T16:57:58Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users_with_egress"value="cty.NilVal"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:03Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T16:58:04Z INFO [terraformexecutor] Ignore finding rule="aws-s3-encryption-customer-key"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T16:58:04Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:533"2024-11-13T16:58:04Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:534"2024-11-13T16:58:04Z INFO [terraformexecutor] Ignore finding rule="aws-s3-enable-bucket-encryption"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T16:58:04Z INFO Number of language-specific files num=02024-11-13T16:58:04Z INFO Detected config files num=8
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf (terraform)
===============================================================================================================================
Tests:1 (SUCCESSES:0, FAILURES:1)
Failures:1 (HIGH:1, CRITICAL:0)
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
See https://avd.aquasec.com/misconfig/avd-aws-0053
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf:12-81
via network-load-balancers.tf:1-37 (module.datasync_activation_nlb)
ββββββββββββββββββββββββββββββββββββββββ
12 β resource"aws_lb""this" {
13 β count=local.create?1:014 β
15 β dynamic"access_logs" {
16 β for_each=length(var.access_logs) >0? [var.access_logs] : []
17 β
18 β content {
19 β bucket=access_logs.value.bucket20 β enabled=try(access_logs.value.enabled, true)
..
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf (terraform)
===============================================================================================================================
Tests:4 (SUCCESSES:0, FAILURES:4)
Failures:4 (HIGH:0, CRITICAL:4)
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328resource"aws_network_acl_rule""private_outbound" {
...340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311resource"aws_network_acl_rule""private_inbound" {
...323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209resource"aws_network_acl_rule""public_outbound" {
...221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192resource"aws_network_acl_rule""public_inbound" {
...204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T17:21:14Z INFO [vulndb] Need to update DB
2024-11-13T17:21:14Z INFO [vulndb] Downloading vulnerability DB...
2024-11-13T17:21:14Z INFO [vulndb] Downloading artifact... repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T17:21:16Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T17:21:16Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T17:21:16Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T17:21:16Z INFO [misconfig] Need to update the built-in checks
2024-11-13T17:21:16Z INFO [misconfig] Downloading the built-in checks...
2024-11-13T17:21:17Z ERROR [misconfig] Falling back to embedded checks err="failed to download built-in policies: download error: OCI repository error: 1 error occurred:\n\t* GET https://ghcr.io/v2/aquasecurity/trivy-checks/manifests/1: TOOMANYREQUESTS: retry-after: 669.926Β΅s, allowed: 44000/minute\n\n"
2024-11-13T17:21:17Z INFO [secret] Secret scanning is enabled
2024-11-13T17:21:17Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T17:21:17Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection
2024-11-13T17:21:17Z INFO [terraform scanner] Scanning root module file_path="."
2024-11-13T17:21:17Z WARN [terraform parser] Variable values was not found in the environment or variable files. Evaluating may not work correctly. module="root" variables="networking"
2024-11-13T17:21:17Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.connected_vpc_transit_gateway_routes" value="cty.NilVal"
2024-11-13T17:21:17Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users" value="cty.NilVal"
2024-11-13T17:21:17Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users_with_egress" value="cty.NilVal"
2024-11-13T17:21:21Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:21Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:21Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:21Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:21Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:21Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:22Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:21:23Z INFO [terraform executor] Ignore finding rule="aws-s3-encryption-customer-key" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T17:21:23Z INFO [terraform executor] Ignore finding rule="aws-s3-enable-bucket-encryption" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T17:21:23Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:533"
2024-11-13T17:21:23Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:534"
2024-11-13T17:21:23Z INFO Number of language-specific files num=0
2024-11-13T17:21:23Z INFO Detected config files num=8
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328 resource "aws_network_acl_rule" "private_outbound" {
...
340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...
343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311 resource "aws_network_acl_rule" "private_inbound" {
...
323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...
326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209 resource "aws_network_acl_rule" "public_outbound" {
...
221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...
224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192 resource "aws_network_acl_rule" "public_inbound" {
...
204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...
207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
</details> #### `Checkov Scan` Failed
<details><summary>Show Output</summary>
```hcl
*****************************
Checkov will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Checkov in terraform/environments/analytical-platform-ingestion
Excluding the following checks: CKV_GIT_1,CKV_AWS_126,CKV2_AWS_38,CKV2_AWS_39
2024-11-13 17:21:26,035 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/cloudwatch/aws//modules/log-group:5.6.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,035 [MainThread ] [WARNI] Failed to download module ministryofjustice/observability-platform-tenant/aws:1.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,035 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/kms/aws:3.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,035 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-rule-associations:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,036 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/secrets-manager/aws:1.3.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,036 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/sns/aws:6.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,036 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws//modules/vpc-endpoints:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,036 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-endpoints:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,036 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/lambda/aws:7.9.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,036 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,037 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-assumable-role:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,037 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,037 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/security-group/aws:5.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,037 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/alb/aws:9.11.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,037 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws//modules/notification:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,037 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-policy:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,037 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/ec2-instance/aws:5.7.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:21:26,049 [MainThread ] [WARNI] [ArmLocalGraph] created 0 vertices
2024-11-13 17:21:26,056 [MainThread ] [WARNI] [ArmLocalGraph] created 0 edges
terraform scan results:
Passed checks: 198, Failed checks: 2, Skipped checks: 74
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_route53_resolver_associations
File: /route53-resolver-associations.tf:1-13
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_route53_resolver_associations" {
2 |
3 | source = "terraform-aws-modules/route53/aws//modules/resolver-rule-associations"
4 | version = "4.1.0"
5 |
6 | vpc_id = module.connected_vpc.vpc_id
7 |
8 | resolver_rule_associations = {
9 | mojo-dns-resolver-dom1-infra-int = {
10 | resolver_rule_id = aws_route53_resolver_rule.mojo_dns_resolver_dom1_infra_int.id
11 | }
12 | }
13 | }
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_outbound_route53_resolver_endpoint
File: /route53-resolver-endpoints.tf:1-27
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_outbound_route53_resolver_endpoint" {
2 | source = "terraform-aws-modules/route53/aws//modules/resolver-endpoints"
3 | version = "4.1.0"
4 |
5 | name = "connected-vpc-outbound"
6 | vpc_id = module.connected_vpc.vpc_id
7 | direction = "OUTBOUND"
8 | protocols = ["Do53"]
9 |
10 | ip_address = [
11 | {
12 | subnet_id = module.connected_vpc.private_subnets[0]
13 | },
14 | {
15 | subnet_id = module.connected_vpc.private_subnets[1]
16 | }
17 | ]
18 |
19 | security_group_ingress_cidr_blocks = [module.connected_vpc.vpc_cidr_block]
20 | security_group_egress_cidr_blocks = [
21 | /* MoJO DNS Resolver Service */
22 | "10.180.80.5/32",
23 | "10.180.81.5/32"
24 | ]
25 |
26 | tags = local.tags
27 | }
checkov_exitcode=1
CTFLint Scan Success
Show Output
*****************************
Setting default tflint config...
Running tflint --init...
Installing "terraform" plugin...
Installed "terraform" (source: github.com/terraform-linters/tflint-ruleset-terraform, version:0.9.1)
tflint will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running tflint in terraform/environments/analytical-platform-ingestion
Excluding the following checks: terraform_unused_declarations
tflint_exitcode=0
Trivy Scan Failed
Show Output
*****************************
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T17:21:14Z INFO [vulndb] Need to update DB
2024-11-13T17:21:14Z INFO [vulndb] Downloading vulnerability DB...2024-11-13T17:21:14Z INFO [vulndb] Downloading artifact...repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T17:21:16Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T17:21:16Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T17:21:16Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T17:21:16Z INFO [misconfig] Need to update the built-in checks
2024-11-13T17:21:16Z INFO [misconfig] Downloading the built-in checks...2024-11-13T17:21:17Z ERROR [misconfig] Falling back to embedded checks err="failed to download built-in policies: download error: OCI repository error: 1 error occurred:\n\t* GET https://ghcr.io/v2/aquasecurity/trivy-checks/manifests/1: TOOMANYREQUESTS: retry-after: 669.926Β΅s, allowed: 44000/minute\n\n"2024-11-13T17:21:17Z INFO [secret] Secret scanning is enabled
2024-11-13T17:21:17Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T17:21:17Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection2024-11-13T17:21:17Z INFO [terraformscanner] Scanning root module file_path="."2024-11-13T17:21:17Z WARN [terraformparser] Variable values was not found in the environment or variable files. Evaluating may not work correctly.module="root"variables="networking"2024-11-13T17:21:17Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.connected_vpc_transit_gateway_routes"value="cty.NilVal"2024-11-13T17:21:17Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users"value="cty.NilVal"2024-11-13T17:21:17Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users_with_egress"value="cty.NilVal"2024-11-13T17:21:21Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:21Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:21Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:21Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:21Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:21Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:22Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:21:23Z INFO [terraformexecutor] Ignore finding rule="aws-s3-encryption-customer-key"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T17:21:23Z INFO [terraformexecutor] Ignore finding rule="aws-s3-enable-bucket-encryption"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T17:21:23Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:533"2024-11-13T17:21:23Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:534"2024-11-13T17:21:23Z INFO Number of language-specific files num=02024-11-13T17:21:23Z INFO Detected config files num=8
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf (terraform)
===============================================================================================================================
Tests:1 (SUCCESSES:0, FAILURES:1)
Failures:1 (HIGH:1, CRITICAL:0)
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
See https://avd.aquasec.com/misconfig/avd-aws-0053
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf:12-81
via network-load-balancers.tf:1-37 (module.datasync_activation_nlb)
ββββββββββββββββββββββββββββββββββββββββ
12 β resource"aws_lb""this" {
13 β count=local.create?1:014 β
15 β dynamic"access_logs" {
16 β for_each=length(var.access_logs) >0? [var.access_logs] : []
17 β
18 β content {
19 β bucket=access_logs.value.bucket20 β enabled=try(access_logs.value.enabled, true)
..
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf (terraform)
===============================================================================================================================
Tests:4 (SUCCESSES:0, FAILURES:4)
Failures:4 (HIGH:0, CRITICAL:4)
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328resource"aws_network_acl_rule""private_outbound" {
...340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311resource"aws_network_acl_rule""private_inbound" {
...323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209resource"aws_network_acl_rule""public_outbound" {
...221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192resource"aws_network_acl_rule""public_inbound" {
...204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T17:23:46Z INFO [vulndb] Need to update DB
2024-11-13T17:23:46Z INFO [vulndb] Downloading vulnerability DB...
2024-11-13T17:23:46Z INFO [vulndb] Downloading artifact... repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T17:23:48Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"
2024-11-13T17:23:48Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T17:23:48Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T17:23:48Z INFO [misconfig] Need to update the built-in checks
2024-11-13T17:23:48Z INFO [misconfig] Downloading the built-in checks...
160.60 KiB / 160.60 KiB [---------------------------------------------------------] 100.00% ? p/s 0s2024-11-13T17:23:48Z INFO [secret] Secret scanning is enabled
2024-11-13T17:23:48Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T17:23:48Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection
2024-11-13T17:23:49Z INFO [terraform scanner] Scanning root module file_path="."
2024-11-13T17:23:49Z WARN [terraform parser] Variable values was not found in the environment or variable files. Evaluating may not work correctly. module="root" variables="networking"
2024-11-13T17:23:49Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.connected_vpc_transit_gateway_routes" value="cty.NilVal"
2024-11-13T17:23:49Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users" value="cty.NilVal"
2024-11-13T17:23:49Z ERROR [terraform evaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable. block="module.sftp_users_with_egress" value="cty.NilVal"
2024-11-13T17:23:55Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:55Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:55Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:55Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:55Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:55Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]" err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:56Z ERROR [terraform evaluator] Failed to expand dynamic block. block="module.definition_upload_lambda.aws_lambda_function.this[0]" err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"
2024-11-13T17:23:57Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:533"
2024-11-13T17:23:57Z INFO [terraform executor] Ignore finding rule="aws-ec2-no-public-egress-sgr" range="terraform-aws-modules/security-group/aws/main.tf:534"
2024-11-13T17:23:57Z INFO [terraform executor] Ignore finding rule="aws-s3-enable-bucket-encryption" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T17:23:57Z INFO [terraform executor] Ignore finding rule="aws-s3-encryption-customer-key" range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"
2024-11-13T17:23:57Z INFO Number of language-specific files num=0
2024-11-13T17:23:57Z INFO Detected config files num=8
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328 resource "aws_network_acl_rule" "private_outbound" {
...
340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...
343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311 resource "aws_network_acl_rule" "private_inbound" {
...
323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...
326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209 resource "aws_network_acl_rule" "public_outbound" {
...
221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...
224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192 resource "aws_network_acl_rule" "public_inbound" {
...
204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...
207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
</details> #### `Checkov Scan` Failed
<details><summary>Show Output</summary>
```hcl
*****************************
Checkov will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Checkov in terraform/environments/analytical-platform-ingestion
Excluding the following checks: CKV_GIT_1,CKV_AWS_126,CKV2_AWS_38,CKV2_AWS_39
2024-11-13 17:24:00,136 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/cloudwatch/aws//modules/log-group:5.6.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,137 [MainThread ] [WARNI] Failed to download module ministryofjustice/observability-platform-tenant/aws:1.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,137 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/kms/aws:3.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,137 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-rule-associations:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,137 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/secrets-manager/aws:1.3.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,137 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/sns/aws:6.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,138 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws//modules/vpc-endpoints:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,138 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/route53/aws//modules/resolver-endpoints:4.1.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,138 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/lambda/aws:7.9.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,138 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/vpc/aws:5.13.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,138 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-assumable-role:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,138 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,138 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/security-group/aws:5.2.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,138 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/alb/aws:9.11.0 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,139 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/s3-bucket/aws//modules/notification:4.1.2 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,139 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/iam/aws//modules/iam-policy:5.44.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,139 [MainThread ] [WARNI] Failed to download module terraform-aws-modules/ec2-instance/aws:5.7.1 (for external modules, the --download-external-modules flag is required)
2024-11-13 17:24:00,155 [MainThread ] [WARNI] [ArmLocalGraph] created 0 vertices
2024-11-13 17:24:00,156 [MainThread ] [WARNI] [ArmLocalGraph] created 0 edges
terraform scan results:
Passed checks: 198, Failed checks: 2, Skipped checks: 74
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_route53_resolver_associations
File: /route53-resolver-associations.tf:1-13
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_route53_resolver_associations" {
2 |
3 | source = "terraform-aws-modules/route53/aws//modules/resolver-rule-associations"
4 | version = "4.1.0"
5 |
6 | vpc_id = module.connected_vpc.vpc_id
7 |
8 | resolver_rule_associations = {
9 | mojo-dns-resolver-dom1-infra-int = {
10 | resolver_rule_id = aws_route53_resolver_rule.mojo_dns_resolver_dom1_infra_int.id
11 | }
12 | }
13 | }
Check: CKV_TF_1: "Ensure Terraform module sources use a commit hash"
FAILED for resource: connected_vpc_outbound_route53_resolver_endpoint
File: /route53-resolver-endpoints.tf:1-27
Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/supply-chain-policies/terraform-policies/ensure-terraform-module-sources-use-git-url-with-commit-hash-revision
1 | module "connected_vpc_outbound_route53_resolver_endpoint" {
2 | source = "terraform-aws-modules/route53/aws//modules/resolver-endpoints"
3 | version = "4.1.0"
4 |
5 | name = "connected-vpc-outbound"
6 | vpc_id = module.connected_vpc.vpc_id
7 | direction = "OUTBOUND"
8 | protocols = ["Do53"]
9 |
10 | ip_address = [
11 | {
12 | subnet_id = module.connected_vpc.private_subnets[0]
13 | },
14 | {
15 | subnet_id = module.connected_vpc.private_subnets[1]
16 | }
17 | ]
18 |
19 | security_group_ingress_cidr_blocks = [module.connected_vpc.vpc_cidr_block]
20 | security_group_egress_cidr_blocks = [
21 | /* MoJO DNS Resolver Service */
22 | "10.180.80.5/32",
23 | "10.180.81.5/32"
24 | ]
25 |
26 | tags = local.tags
27 | }
checkov_exitcode=1
CTFLint Scan Success
Show Output
*****************************
Setting default tflint config...
Running tflint --init...
Installing "terraform" plugin...
Installed "terraform" (source: github.com/terraform-linters/tflint-ruleset-terraform, version:0.9.1)
tflint will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running tflint in terraform/environments/analytical-platform-ingestion
Excluding the following checks: terraform_unused_declarations
tflint_exitcode=0
Trivy Scan Failed
Show Output
*****************************
Trivy will check the following folders:
terraform/environments/analytical-platform-ingestion
*****************************
Running Trivy in terraform/environments/analytical-platform-ingestion
2024-11-13T17:23:46Z INFO [vulndb] Need to update DB
2024-11-13T17:23:46Z INFO [vulndb] Downloading vulnerability DB...2024-11-13T17:23:46Z INFO [vulndb] Downloading artifact...repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T17:23:48Z INFO [vulndb] Artifact successfully downloaded repo="public.ecr.aws/aquasecurity/trivy-db:2"2024-11-13T17:23:48Z INFO [vuln] Vulnerability scanning is enabled
2024-11-13T17:23:48Z INFO [misconfig] Misconfiguration scanning is enabled
2024-11-13T17:23:48Z INFO [misconfig] Need to update the built-in checks
2024-11-13T17:23:48Z INFO [misconfig] Downloading the built-in checks...160.60 KiB /160.60 KiB [---------------------------------------------------------] 100.00%? p/s 0s2024-11-13T17:23:48Z INFO [secret] Secret scanning is enabled
2024-11-13T17:23:48Z INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-11-13T17:23:48Z INFO [secret] Please see also https://aquasecurity.github.io/trivy/v0.57/docs/scanner/secret#recommendation for faster secret detection2024-11-13T17:23:49Z INFO [terraformscanner] Scanning root module file_path="."2024-11-13T17:23:49Z WARN [terraformparser] Variable values was not found in the environment or variable files. Evaluating may not work correctly.module="root"variables="networking"2024-11-13T17:23:49Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.connected_vpc_transit_gateway_routes"value="cty.NilVal"2024-11-13T17:23:49Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users"value="cty.NilVal"2024-11-13T17:23:49Z ERROR [terraformevaluator] Failed to expand block. Invalid "for-each" argument. Must be known and iterable.block="module.sftp_users_with_egress"value="cty.NilVal"2024-11-13T17:23:55Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:55Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.bold_egress_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:55Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:55Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:55Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:55Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_replication_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_replication_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.datasync_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definitions_bucket.aws_s3_bucket_server_side_encryption_configuration.this[0]"err="1 error occurred:\n\t* invalid for-each in aws_s3_bucket_server_side_encryption_configuration.this[0].dynamic.rule block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:56Z ERROR [terraformevaluator] Failed to expand dynamic block.block="module.definition_upload_lambda.aws_lambda_function.this[0]"err="2 errors occurred:\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.vpc_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\t* invalid for-each in aws_lambda_function.this[0].dynamic.logging_config block: cannot use a cty.NilVal value in for_each. An iterable collection is required\n\n"2024-11-13T17:23:57Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:533"2024-11-13T17:23:57Z INFO [terraformexecutor] Ignore finding rule="aws-ec2-no-public-egress-sgr"range="terraform-aws-modules/security-group/aws/main.tf:534"2024-11-13T17:23:57Z INFO [terraformexecutor] Ignore finding rule="aws-s3-enable-bucket-encryption"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T17:23:57Z INFO [terraformexecutor] Ignore finding rule="aws-s3-encryption-customer-key"range="git::https:/github.com/terraform-aws-modules/terraform-aws-s3-bucket?ref=8a0b697adfbc673e6135c70246cff7f8052ad95a/main.tf:176-198"2024-11-13T17:23:57Z INFO Number of language-specific files num=02024-11-13T17:23:57Z INFO Detected config files num=8
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf (terraform)
===============================================================================================================================
Tests:1 (SUCCESSES:0, FAILURES:1)
Failures:1 (HIGH:1, CRITICAL:0)
AVD-AWS-0053 (HIGH): Load balancer is exposed publicly.
ββββββββββββββββββββββββββββββββββββββββ
There are many scenarios in which you would want to expose a load balancer to the wider internet, but this check exists as a warning to prevent accidental exposure of internal assets. You should ensure that this resource should be exposed publicly.
See https://avd.aquasec.com/misconfig/avd-aws-0053
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-alb?ref=349540d1a611cd98a6383cc64ef0d9bf08d88fb7/main.tf:12-81
via network-load-balancers.tf:1-37 (module.datasync_activation_nlb)
ββββββββββββββββββββββββββββββββββββββββ
12 β resource"aws_lb""this" {
13 β count=local.create?1:014 β
15 β dynamic"access_logs" {
16 β for_each=length(var.access_logs) >0? [var.access_logs] : []
17 β
18 β content {
19 β bucket=access_logs.value.bucket20 β enabled=try(access_logs.value.enabled, true)
..
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf (terraform)
===============================================================================================================================
Tests:4 (SUCCESSES:0, FAILURES:4)
Failures:4 (HIGH:0, CRITICAL:4)
AVD-AWS-0102 (CRITICAL): Network ACL rule allows access using ALL ports.
ββββββββββββββββββββββββββββββββββββββββ
Ensure access to specific required ports is allowed, and nothing else.
See https://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:340
via git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:328-343 (aws_network_acl_rule.private_outbound[0])
via vpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
328resource"aws_network_acl_rule""private_outbound" {
...340 [ protocol = var.private_outbound_acl_rules[count.index]["protocol"]
...343 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:323viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:311-326 (aws_network_acl_rule.private_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
311resource"aws_network_acl_rule""private_inbound" {
...323 [ protocol = var.private_inbound_acl_rules[count.index]["protocol"]
...326 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:221viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:209-224 (aws_network_acl_rule.public_outbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
209resource"aws_network_acl_rule""public_outbound" {
...221 [ protocol = var.public_outbound_acl_rules[count.index]["protocol"]
...224 }
ββββββββββββββββββββββββββββββββββββββββ
AVD-AWS-0102 (CRITICAL):NetworkACLruleallowsaccessusingALLports.
ββββββββββββββββββββββββββββββββββββββββ
Ensureaccesstospecificrequiredportsisallowed, andnothingelse.Seehttps://avd.aquasec.com/misconfig/aws-vpc-no-excessive-port-access
ββββββββββββββββββββββββββββββββββββββββ
git::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:204viagit::https:/github.com/terraform-aws-modules/terraform-aws-vpc?ref=e226cc15a7b8f62fd0e108792fea66fa85bcb4b9/main.tf:192-207 (aws_network_acl_rule.public_inbound[0])
viavpc.tf:1-23 (module.connected_vpc)
ββββββββββββββββββββββββββββββββββββββββ
192resource"aws_network_acl_rule""public_inbound" {
...204 [ protocol = var.public_inbound_acl_rules[count.index]["protocol"]
...207 }
ββββββββββββββββββββββββββββββββββββββββ
trivy_exitcode=1
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request:
Signed-off-by: Jacob Woffenden jacob.woffenden@justice.gov.uk