GuardDuty Data Sources and Finding Types
Learn which logs GuardDuty analyzes and the threats it surfaces.
GuardDuty Data Sources and Finding Types is a free AWS Security Academy lesson on CoddyKit — lesson 2 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the AWS Security Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
What GuardDuty Reads
GuardDuty does not install sensors; it analyzes logs AWS already generates. Its foundational data sources are CloudTrail management events, VPC Flow Logs, and DNS query logs. From these three streams it reconstructs account, network, and name-resolution activity to hunt for threats.
CloudTrail as a Source
By reading CloudTrail management events, GuardDuty sees the API calls made in your account. This lets it detect identity threats like unusual API activity, credentials used from a strange location, or attempts to disable logging. It also analyzes CloudTrail S3 data events as an optional source.
VPC Flow Logs as a Source
From VPC Flow Logs, GuardDuty observes network connections, including communication with known malicious IP addresses. It does this even if you have not enabled Flow Logs yourself, because it reads the underlying network data independently. This catches instances reaching out to command-and-control servers.
DNS Logs as a Source
GuardDuty inspects DNS query logs to spot suspicious domain lookups, such as queries to malware domains or signs of data exfiltration over DNS. This works for instances using the default AWS DNS resolver. Unusual DNS patterns are a strong indicator of compromise.
Optional Protection Plans
Beyond the foundational sources, GuardDuty offers add-on protection plans: S3 Protection, EKS (Kubernetes) Protection, Malware Protection, RDS Protection, and Lambda Protection. Each extends detection into a specific service, analyzing its activity for threats relevant to that workload.
Finding Types and Categories
GuardDuty findings are grouped into categories by what they describe. Reconnaissance findings show probing and scanning. Instance compromise findings show a workload behaving maliciously. Account compromise findings show suspicious use of credentials or configuration changes.
Reading a Finding Type String
Each finding has a structured type like Recon:EC2/PortProbeUnprotectedPort or UnauthorizedAccess:IAMUser/MaliciousIPCaller. The format is ThreatPurpose:ResourceType/ThreatName. Decoding it tells you the intent, the affected resource, and the specific behavior detected.
Resource and Threat Purpose
The resource type in a finding (EC2, IAMUser, S3Bucket, Kubernetes) tells you what was affected. The threat purpose (Recon, UnauthorizedAccess, CryptoCurrency, Trojan, Backdoor) tells you the attacker's likely goal. Together they let you triage quickly.
Findings You Will See Often
Common findings include crypto-mining on a compromised instance, an exposed access key being used maliciously, port scanning, and a Tor exit node connecting to your resources. Recognizing these typical types helps you respond appropriately rather than treating every finding the same.
Malware Protection in Detail
The Malware Protection plan can scan the EBS volumes of an instance flagged by a finding, looking for malware without you installing anything. It produces its own malware findings to confirm or strengthen a suspicion. This agentless scanning is a useful add-on when a foundational finding suggests an instance may be infected.
No Extra Setup for Foundational Sources
A frequently tested detail: GuardDuty reads its foundational sources independently. You do not have to enable CloudTrail, Flow Logs, or DNS logging yourself for GuardDuty to analyze that activity, and it does not affect or incur charges on your own copies of those logs. This is why GuardDuty can start detecting immediately the moment it is turned on.
Quick Check
Map threats to data sources.
Recap
GuardDuty's foundational data sources are CloudTrail (identity and API activity), VPC Flow Logs (network connections), and DNS logs (suspicious lookups), plus optional protection plans for S3, EKS, RDS, Lambda, and malware. Findings use the format ThreatPurpose:ResourceType/ThreatName, letting you triage by intent and affected resource.
Frequently asked questions
Is the “GuardDuty Data Sources and Finding Types” lesson free?
Yes — the full text of “GuardDuty Data Sources and Finding Types” is free to read here on the web, and the AWS Security Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the AWS Security Academy course, upgrade to CoddyKit PRO.
What will I learn in “GuardDuty Data Sources and Finding Types”?
Learn which logs GuardDuty analyzes and the threats it surfaces. You practise AWS Security Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start AWS Security Academy?
No prior experience is required. AWS Security Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 2 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “GuardDuty Data Sources and Finding Types” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this AWS Security Academy lesson?
Yes. Every AWS Security Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- What GuardDuty Detects and Why
- GuardDuty Data Sources and Finding Types
- Reading and Prioritizing GuardDuty Findings
- Enabling GuardDuty Across an Organization