S3 Malware Protection
Overview
Malware Protection for S3 enables malware scans on Amazon S3 buckets within your AWS account. You can choose to protect an entire bucket or restrict scans to specific object prefixes (up to 5). Once enabled, scanned buckets are known as protected buckets.
IAM Role Requirements:
An IAM role with specific permissions is required for GuardDuty to:
Detect newly uploaded objects.
Perform scans.
Optionally, tag objects based on scan results.
You can update an existing role or create a new one to support multiple buckets.
Tagging Scanned Objects (Optional):
During setup, you can enable tagging for scanned objects with the key-value pair: GuardDutyMalwareScanStatus:
<Potential Scan Result>
Possible tag values include:
NO_THREATS_FOUND
THREATS_FOUND
UNSUPPORTED
ACCESS_DENIED
FAILED
Important: Tagging must be enabled before objects are uploaded to allow tagging of scanned results. These tags can support tag-based access control (TBAC) policies to act on malicious objects.
How Malware Protection for S3 Works:
Event Detection and Isolation:
GuardDuty uses Amazon EventBridge to detect new uploads in protected buckets.
Files are downloaded using AWS PrivateLink and scanned in an isolated, locked-down VPC environment with no internet access.
Scans are encrypted with AWS KMS during the process, ensuring data protection.
Data Handling and Clean-up:
GuardDuty temporarily stores scanned objects within the isolated environment and deletes them after scanning.
Each scan starts in a freshly cleaned environment to ensure data isolation.
Reviewing Scan Status and Results:
EventBridge: GuardDuty publishes the scan results to EventBridge.
CloudWatch Metrics: You can monitor the number of scanned objects and bytes via CloudWatch and set up alarms based on scan results.
Tagged Objects: If tagging is enabled, you can track scan status directly through S3 object tags.
Using Malware Protection for S3 with and without GuardDuty:
With GuardDuty Enabled:
Findings are generated for detected malware and can be viewed through the GuardDuty console or exported to S3 or EventBridge for further action.
Without GuardDuty (Independent Feature):
No findings are generated, but scan results can be tracked through:
EventBridge events.
CloudWatch metrics.
S3 object tags (if tagging is enabled).
Last updated