Event type
GuardDuty Malware Protection for EC2 Finding Types
Malware detection on EC2 instances and containers
AWS GuardDuty Malware Protection for EC2 finding types detecting malicious and suspicious files on EC2 instances, ECS clusters, Kubernetes clusters, and containers through EBS volume scanning, including trojans, backdoors, viruses, adware, spyware, ransomware, rootkits, miners, and worms
Overview
What this event covers
Malware Protection for EC2 provides single findings for all threats detected during EBS volume scans of EC2 instances and container workloads. Includes total number of detections and details for top 32 threats based on severity. Findings include scan information and correlation with GuardDuty findings that initiated the scan.
When generated
- ›Malicious file detected on EC2 instance during EBS volume scan
- ›Malicious file detected on container workload in ECS cluster
- ›Malicious file detected on container workload in Kubernetes cluster
- ›Malicious file detected on standalone container workload
- ›Suspicious file (adware, spyware, dual-use tool) detected on EC2 instance
- ›Suspicious file (adware, spyware, dual-use tool) detected on container workload
- ›Scan triggered by GuardDuty threat detection finding
- ›Scheduled malware scan detects threats
Security relevance
HighCompliance
Frequency notes
Malware Protection for EC2 findings are generated when malware scans detect threats. Frequency depends on threat landscape and scan frequency (triggered by GuardDuty findings or scheduled). Production environments typically see 5-30 findings per day. Each finding represents one scan with detected threats - findings are not updated when same resource is scanned again. New finding generated for each scan that detects malware. Malicious file findings are higher severity than suspicious file findings.
Resources
Docs and tools
Generation
Configuration
- Base frequency
- 15 events/hour
- Time patterns
- business_hours night_hours weekend
- Business hours
- 1.5x
- Night hours
- 1.2x
- Weekend
- 1.0x
Schema
Field definitions
Field reference for this event type — types, requirements, examples, and allowed values.
detail.type
Malware Protection for EC2 finding type indicating resource and threat classification
Source: random_choice() of 8 Malware Protection for EC2 finding types
Execution:EC2/MaliciousFile-
Execution:EC2/MaliciousFileMalicious file detected on EC2 instance -
Execution:ECS/MaliciousFileMalicious file detected on container in ECS cluster -
Execution:Kubernetes/MaliciousFileMalicious file detected on container in Kubernetes cluster -
Execution:Container/MaliciousFileMalicious file detected on standalone container -
Execution:EC2/SuspiciousFileSuspicious file (adware, spyware, dual-use tool) detected on EC2 instance -
Execution:ECS/SuspiciousFileSuspicious file (adware, spyware, dual-use tool) detected on container in ECS cluster -
Execution:Kubernetes/SuspiciousFileSuspicious file (adware, spyware, dual-use tool) detected on container in Kubernetes cluster -
Execution:Container/SuspiciousFileSuspicious file (adware, spyware, dual-use tool) detected on standalone container
detail.resource.resourceType
Type of resource where malware was detected
Source: random_choice(['Instance', 'EKSCluster', 'ECSCluster', 'Container'])
Instance-
InstanceAmazon EC2 instance -
EKSClusterAmazon EKS cluster (for Kubernetes findings) -
ECSClusterAmazon ECS cluster (for ECS findings) -
ContainerStandalone container (for Container findings)
detail.service.malwareProtectionScanDetails
Details about the malware scan that detected the threats
Source: Malware scan metadata from GuardDuty
{scanId, scanStartTime, scanEndTime, scannedResourceDetails, triggerFindingId, sources}detail.service.malwareProtectionScanDetails.scanId
Unique identifier for the malware scan
Source: random_guid()
UUID550e8400-e29b-41d4-a716-446655440000detail.service.malwareProtectionScanDetails.scannedResourceDetails.volumeDetails
EBS volume details that were scanned
Source: EBS volume metadata from scan
[{volumeArn, volumeType, deviceName, volumeSizeInGB, encryptionType}]detail.service.malwareProtectionScanDetails.triggerFindingId
GuardDuty finding ID that triggered this scan (if scan was triggered by finding)
Source: random_hex(32, 32) or empty if scheduled scan
32-character hexadecimal stringa1b2c3d4e5f6...detail.service.malwareProtectionScanDetails.sources
Source that initiated the scan
Source: random_choice(['THREAT_DETECTION', 'SCHEDULED_SCAN'])
['THREAT_DETECTION']-
THREAT_DETECTIONScan triggered by GuardDuty threat detection finding -
SCHEDULED_SCANScan performed on scheduled basis
detail.service.additionalInfo.threatsDetectedItemCount
Total number of threats detected during the scan
Source: random_int(1, 32) - total detections in scan
Integer (1 or more)15detail.service.additionalInfo.threatsDetected
Details for top 32 threats detected (based on severity). Each finding includes up to 32 threats.
Source: Array of threat details from malware scan
[{threatName, severity, itemCount, files}]detail.service.additionalInfo.threatsDetected[].threatName
Name of the detected threat
Source: random_choice() of malware threat names
Threat nameTrojan.Win32.Generic-
Trojan.Win32.GenericWindows trojan -
Trojan.Linux.GenericLinux trojan -
Backdoor.Linux.GenericLinux backdoor -
Virus.Win32.GenericWindows virus -
Adware.Mac.GenericMac adware -
Spyware.Win32.GenericWindows spyware -
Ransomware.Win32.GenericWindows ransomware -
PUA.Win32.GenericPotentially Unwanted Application -
Rootkit.Linux.GenericLinux rootkit -
Miner.Linux.GenericCryptocurrency miner
detail.service.additionalInfo.threatsDetected[].files[].filePath
Full path to the malicious or suspicious file. Note: File paths may be controlled by malicious actors and should be sanitized when displayed
Source: File path from malware scan
Absolute file path/tmp/malware.exedetail.service.additionalInfo.threatsDetected[].files[].fileHash
SHA-256 hash of the malicious or suspicious file
Source: SHA-256 hash of file content
64-character hexadecimal stringa1b2c3d4e5f6...detail.severity
Finding severity level (varies depending on detected threat severity)
Source: random_choice([2, 5, 5, 8, 8, 8]) - varies based on threat
8-
2Low severity (1.0-3.9) - typically suspicious files -
5Medium severity (4.0-6.9) -
8High severity (7.0-8.9) - typically malicious files