aquasecurity / aquasecurity/cloudsploit

AWS – "S3 Secure Transport Enabled" False Failures

Open
#579 1 comment 1 reaction 0 assignees View on GitHub
Dominant language
JavaScript
Stars
3.8k
Forks
751
Avg merge
11d 9h
Merged PRs (30d)
3

Description

In the test for "S3 Secure Transport Enabled", Aqua scans to ensure that a condition:

```yaml
Bool:
aws:SecureTransport: # based on whether the Effect is Allow or Deny
```

…is attached to each statement within an S3 Bucket Policy. This is not the only way to achieve this goal. An explicit `Deny` statement can also be applied:

```yaml
Action: s3:*
Effect: Deny
Principal: '*'
Resource:
- !GetAtt Bucket.Arn
- !Sub ${Bucket.Arn}/*
Condition:
Bool:
aws:SecureTransport: false
```

This configuration has been checked in the IAM Policy Simulator and comports with [advice from AWS Premium Support][awsps]. The scan should check for a `Deny` statement of this kind and, if present, emit a `PASS` for that bucket without checking each statement of the policy. (If it's not present, do the other thing, natch.)

[awsps]: https://aws.amazon.com/premiumsupport/knowledge-center/s3-bucket-policy-for-config-rule/

Contributor guide

Open the contributing guide

Research direction

Search the repository for the "S3 Secure Transport Enabled" test and read the scanner entry point and its existing policy checks. Add coverage for an explicit Deny statement using aws:SecureTransport false, while preserving the current per-statement behavior when that statement is absent. Done means the test emits PASS for the explicit-Deny configuration and retains the expected result for other policies.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, javascript
Domain
cloud, security
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.