AWS Threat Detection and Incident Response

Investigate, detect and respond with the evidence AWS records

Five weeks of an AWS organization under attack, read the way investigators read it: with SQL, from CloudTrail and the sources around it. Every query runs in the page, every number is checked, and nothing assumes you have worked in AWS before.

Included with Premium, from $19.99/month, or $179/year and save 25%. Preview the first module free, no account needed.
Practice included: AWS query drills, plus the Practice Hub.
View Pricing Take End of Course Exam → 40 CPE Credits

What you'll be able to do

✓Decide what an AWS organization must record before an incident, and assess whether it can be investigated
✓Query CloudTrail and the sources around it with Athena SQL, from a first SELECT to window functions and timelines
✓Investigate leaked keys, sprays, stolen sessions, escalation, persistence, data theft, ransom and compute compromise from AWS's own records
✓Prove the record intact under attack, and build, test, tune and specify detections of your own
✓Contain, preserve, eradicate and recover, and close the gaps an incident exposed
SEC404 | Premium tier | 10 teaching modules, an orientation and a Project | 36–40 hours at your own pace | 40 CPE credits

Course Syllabus

Every module and every lesson. The first three modules are open; the rest open on a click.

Download the full syllabus (PDF)

Orientation

Foundation

Module 1Querying CloudTrail with Athena

Module 1 of AWS Threat Detection and Incident Response: how CloudTrail records reach Athena, the CloudTrail table and its columns, selecting and filtering, the identity block, management and data events, time windows, and reads, writes and errors.

Show 9 lessonsHide lessons
  1. 1.11.1 How CloudTrail Reaches Athena
  2. 1.21.2 The CloudTrail Table and Its Columns
  3. 1.31.3 Selecting the Columns That Answer a Question
  4. 1.41.4 Filtering with WHERE
  5. 1.51.5 Reading the Identity Block
  6. 1.61.6 Management and Data Events
  7. 1.71.7 Working in Time Windows
  8. 1.81.8 Reads, Writes and Errors
  9. 1.9Module Summary and Knowledge Check
Module 2Filtering, Parsing and Aggregating AWS Evidence

Module 2 of AWS Threat Detection and Incident Response: combining conditions, matching text and patterns, extracting values from JSON, arrays and UNNEST, counting and grouping, filtering groups with HAVING, ranking and top-N, and building a timeline.

Show 9 lessonsHide lessons
  1. 2.12.1 Combining Conditions
  2. 2.22.2 Matching Text and Patterns
  3. 2.32.3 Extracting Values from JSON
  4. 2.42.4 Arrays and UNNEST
  5. 2.52.5 Counting and Grouping
  6. 2.62.6 Filtering Groups with HAVING
  7. 2.72.7 Ranking and Top-N
  8. 2.82.8 Building a Timeline
  9. 2.9Module Summary and Knowledge Check
Module 3IAM Principals, Sessions and Joins

Module 3 of AWS Threat Detection and Incident Response: IAM users, access keys and the root user; roles and AssumeRole; joining a session to its source; cross-account access; federation and Identity Center sign-in; service-linked roles and service principals; common table expressions; attributing an action to a person.

Show 9 lessonsHide lessons
  1. 3.13.1 IAM Users, Access Keys and the Root User
  2. 3.23.2 Roles and AssumeRole
  3. 3.33.3 Joining a Session to Its Source
  4. 3.43.4 Cross-Account Access
  5. 3.53.5 Federation and Identity Center Sign-In
  6. 3.63.6 Service-Linked Roles and Service Principals
  7. 3.73.7 Common Table Expressions for Investigations
  8. 3.83.8 Attributing an Action to a Person
  9. 3.9Module Summary and Knowledge Check

Intermediate

Module 4Credential Compromise and Initial Access

Module 4 of AWS Threat Detection and Incident Response: how credentials leak, detecting use of a leaked key, console sign-in and MFA evidence, root user activity, reading GuardDuty findings, discovery after access, baselines and first-seen analysis, and scoping a compromised credential.

Show 9 lessonsHide lessons
  1. 4.14.1 How Credentials Leak
  2. 4.24.2 Detecting Use of a Leaked Key
  3. 4.34.3 Console Sign-In and MFA Evidence
  4. 4.44.4 Root User Activity
  5. 4.54.5 Reading GuardDuty Findings
  6. 4.64.6 Discovery After Access
  7. 4.74.7 Baselines and First-Seen Analysis
  8. 4.84.8 Scoping a Compromised Credential
  9. 4.9Module Summary and Knowledge Check
Module 5Privilege Escalation and Persistence

Module 5 of AWS Threat Detection and Incident Response: escalation paths in IAM, policy versions and inline policies, PassRole through compute services, trust policy changes, new users, keys and login profiles, configuration history with AWS Config, window functions for change sequences, and proving what an identity could do.

Show 9 lessonsHide lessons
  1. 5.15.1 Escalation Paths in IAM
  2. 5.25.2 Policy Versions and Inline Policies
  3. 5.35.3 PassRole Through Compute Services
  4. 5.45.4 Trust Policy Changes
  5. 5.55.5 New Users, Keys and Login Profiles
  6. 5.65.6 Configuration History with AWS Config
  7. 5.75.7 Window Functions for Change Sequences
  8. 5.85.8 Proving What an Identity Could Do
  9. 5.9Module Summary and Knowledge Check
Module 6S3 Data Exposure and Exfiltration

Module 6 of AWS Threat Detection and Incident Response: bucket access control and Block Public Access, public exposure and who used it, data events for object access, S3 server access logs, measuring what left, the KMS witness, ransom with customer-provided keys, and scoping a data theft.

Show 9 lessonsHide lessons
  1. 6.16.1 Bucket Access Control and Block Public Access
  2. 6.26.2 Public Exposure and Who Used It
  3. 6.36.3 Data Events for Object Access
  4. 6.46.4 S3 Server Access Logs
  5. 6.56.5 Measuring What Left
  6. 6.66.6 The KMS Witness
  7. 6.76.7 Ransom with SSE-C
  8. 6.86.8 Scoping a Data Theft
  9. 6.9Module Summary and Knowledge Check

Advanced

Module 7Compute Compromise: EC2, IMDS and Lambda

Module 7 of AWS Threat Detection and Incident Response: the instance metadata service, instance credentials used elsewhere, VPC Flow Logs, DNS query logs, load balancer logs and SSRF, Lambda abuse, joining network and API evidence, and reconstructing a host's activity.

Show 9 lessonsHide lessons
  1. 7.17.1 The Instance Metadata Service
  2. 7.27.2 Instance Credentials Used Elsewhere
  3. 7.37.3 VPC Flow Logs
  4. 7.47.4 DNS Query Logs
  5. 7.57.5 Load Balancer Logs and SSRF
  6. 7.67.6 Lambda Abuse
  7. 7.77.7 Joining Network and API Evidence
  8. 7.87.8 Reconstructing a Host's Activity
  9. 7.9Module Summary and Knowledge Check
Module 8Defense Evasion and Logging Tampering

Module 8 of AWS Threat Detection and Incident Response: stopping and deleting trails, changing what a trail records, disabling GuardDuty, Config and Security Hub, Region and account evasion, anonymized infrastructure, gaps in the record, proving logging was intact, and evasion in a timeline.

Show 9 lessonsHide lessons
  1. 8.18.1 Stopping and Deleting Trails
  2. 8.28.2 Changing What a Trail Records
  3. 8.38.3 Disabling GuardDuty, Config and Security Hub
  4. 8.48.4 Region and Account Evasion
  5. 8.58.5 Anonymized Infrastructure
  6. 8.68.6 Gaps in the Record
  7. 8.78.7 Proving Logging Was Intact
  8. 8.88.8 Evasion in a Timeline
  9. 8.9Module Summary and Knowledge Check
Module 9Threat Detection

Module 9 of AWS Threat Detection and Incident Response: triaging GuardDuty findings, attack sequence findings, Security Hub in both formats, suppression and trusted lists, detections from CloudTrail queries, testing a detection against the sample period, tuning false positives, and writing a detection specification.

Show 9 lessonsHide lessons
  1. 9.19.1 Triaging GuardDuty Findings
  2. 9.29.2 Attack Sequence Findings
  3. 9.39.3 Security Hub in Both Formats
  4. 9.49.4 Suppression and Trusted Lists
  5. 9.59.5 Detections from CloudTrail Queries
  6. 9.69.6 Testing a Detection Against the Corpus
  7. 9.79.7 Tuning False Positives
  8. 9.89.8 Writing a Detection Specification
  9. 9.9Module Summary and Knowledge Check

Mastery

Module 10Containment, Eradication, Recovery and Post-Incident Review

Module 10 of AWS Threat Detection and Incident Response: the AWS incident response process and AWS's role in it, triaging and declaring an incident, containing compromised identities and resources, organization-level containment with SCPs and RCPs, preserving evidence, eradication and recovery, and post-incident review.

Show 9 lessonsHide lessons
  1. 10.110.1 The AWS Incident Response Process
  2. 10.210.2 Triaging and Declaring an Incident
  3. 10.310.3 Containing a Compromised Identity
  4. 10.410.4 Containing Compromised Resources
  5. 10.510.5 Organization-Level Containment
  6. 10.610.6 Preserving Evidence
  7. 10.710.7 Eradication and Recovery
  8. 10.810.8 Post-Incident Review
  9. 10.9Module Summary and Knowledge Check

Phase 0: Course Resources

ResourcesCheatsheets

Athena queries by investigation area, each with the console path, the fields that carry the decision, and what the answer does not establish.

Show 10 lessonsHide lessons
  1. 1Query Patterns
  2. 2Log Sources and Coverage
  3. 3Identity and Principals
  4. 4Credential Compromise
  5. 5Privilege Escalation and Persistence
  6. 6S3 and Data Exfiltration
  7. 7Compute Compromise
  8. 8Defense Evasion
  9. 9Response and Containment
  10. 10Events, Findings and Fields
ResourcesCookbooks

Seven procedures an AWS responder repeats: triaging a finding, scoping a leaked credential, following an identity chain, establishing what data left, and preserving evidence before eradication.

Show 7 lessonsHide lessons
  1. 1Triaging a GuardDuty Finding
  2. 2Scoping a Leaked Credential
  3. 3Establishing What Data Left
  4. 4Confirming or Refuting Log Tampering
  5. 5Preserving Cloud Evidence
  6. 6Investigating Across an Account Boundary
  7. 7Reconstructing the Incident Timeline
ResourcesLab Setup

Building an AWS account that produces the evidence this course investigates, with the cost guardrails in place before anything is switched on.

Show 6 lessonsHide lessons
  1. 1The Account, and the Guardrails That Go First
  2. 2Turning On the Evidence
  3. 3Making It Queryable
  4. 4Adding the Detection Layer
  5. 5Generating Evidence Worth Investigating
  6. 6Verify It Works, Then Turn It Off
ResourcesWalkthroughs

Six queries from the course that ran cleanly and answered wrongly, each taken step by step to the right answer: a Region filter, a writes-only timeline, a role's empty user name, a sign-in's missing error, an anonymous reader and an alert's time.

Show 6 lessonsHide lessons
  1. 1The Key Seen in One Region
  2. 2The Escalation That Began With Reads
  3. 3The Role That Made No Calls
  4. 4The Sign-Ins That Never Failed
  5. 5The Reader With No Name
  6. 6The Finding That Started Late
ResourcesPlaybooks

Seven response playbooks keyed to what actually fires in AWS, each with a pre-flight, a sequence, escalation tiers and the false positives that live in that domain.

Show 7 lessonsHide lessons
  1. 1Instance Credentials Used Outside AWS
  2. 2Logging Stopped or a Trail Deleted
  3. 3Administrative Permissions Granted
  4. 4Anomalous Object Read Volume
  5. 5Objects Deleted at Volume
  6. 6An Instance Talking to Somewhere It Should Not
  7. 7API Calls From an Anonymizing Network
ResourcesPlayground

Where to practice AWS investigation and use it at work: query drills against the course corpus, your own account, the detection library, and the reference pages worth keeping open.

ResourcesOperational Reference

Every query, field and command from AWS Threat Detection and Incident Response in one place, organized by the task in front of you and linked back to the lesson that explains it.

Show 1 lessonHide lessons
  1. 1Operational Reference
ResourcesReferences & Further Reading

AWS service documentation, security guidance, frameworks, and threat-intelligence sources used throughout the AWS Threat Detection and Incident Response course.

Project

ResourcesProject: Readiness, Detections and an Investigation

The AWS Threat Detection and Incident Response project: a readiness assessment of an AWS account, five detections tested and specified to Module 9's standard, and an investigation report on a prepared case none of the modules teaches, written to Module 10's standard. No submission, no grading.

Show 1 lessonHide lessons
  1. 1The Brief

Course Completion

CompletionCourse Exam

AWS Threat Detection and Incident Response practical exam: twenty tasks, two per teaching module, each answered by writing Athena SQL against Northgate's record and checked on the server.

Show 1 lessonHide lessons
  1. 1Course Completion. AWS Threat Detection and Incident Response

Course overview

In AWS almost everything that matters happens through an API call, and AWS records the calls. This course teaches you to read that record: who made a call, with which credentials, from where, and what it changed, and then to use it to investigate attacks, detect them sooner and decide what to do about them.

It is taught against five weeks of Northgate Engineering's AWS organization, four accounts whose record holds ordinary work and six attacks: a leaked CI key, a password spray, a stolen session, an escalation to administrator, backups stolen and held to ransom, and instance credentials taken through a web application, with an attempt to stop the logging along the way.

How this course works

Every query runs in the page. A SQL engine built into each lesson holds the record in ten tables, from CloudTrail and VPC flow logs to GuardDuty, Security Hub and AWS Config, and behaves as Athena does on them. Change a query, run it, and see what changed.

Predict, then run. Queries ask for your prediction before they show their result, so every query is a small test of your understanding.

Exercises, audits and decisions. Lessons carry graded exercises that complete, fix and write queries. Module 0 has you audit real configurations, and Module 10 has you commit to response decisions in writing before reading where they lead. Each module ends with a knowledge check and a challenge set.

Check every answer. The course treats an empty result, a single Region and an alert's timestamp as things to verify before anyone relies on them, and says plainly what the record cannot show.

What you will learn

✓ Decide what an AWS organization must record before an incident, and assess whether it can be investigated
✓ Query CloudTrail with Athena SQL: the identity block, JSON fields, arrays, aggregation, timelines and window functions
✓ Follow sessions, roles and federated sign-ins back to the keys and people that started them
✓ Investigate leaked keys, password sprays, stolen sessions, escalation and persistence in IAM
✓ Measure what left an S3 bucket, and investigate ransom with SSE-C and compromised instances and functions
✓ Prove the record was intact when an attacker tried to stop it
✓ Triage GuardDuty and Security Hub findings, and build, test, tune and specify detections of your own
✓ Contain, preserve, eradicate and recover, and close the gaps an incident exposed

Who this course is for

Anyone who needs to investigate or detect attacks in AWS: SOC analysts, incident responders, detection engineers and cloud engineers, and people moving into those roles. No experience with AWS or SQL is assumed; every service, field and clause is explained where it is first used.

Readers who already work in AWS will find the later modules go well past the basics, and the Course Fit Check in the free Module 0 shows where you sit.

What you will build

✓ A readiness assessment of an AWS account, every line backed by a configuration you read or a query you ran
✓ Five detections, each tested against known incidents and ordinary weeks and written up as a specification
✓ An investigation report on a prepared case no module investigates, saying what the record shows and what it cannot

What this course does not cover

Disk and memory forensics of a compromised instance, Kubernetes and container investigation, and AWS security architecture each sit outside this course; the platform's forensics and architecture courses cover them. This course is about the AWS layer: every identity and API call, and the evidence AWS keeps of them.

Things you need to know

What are the prerequisites?

None. The course explains AWS and SQL from first principles, and the free Module 0 sets out how AWS evidence works and what an organization must record before the first query.

What do I need to run the queries?

A device with a modern browser. Every query in the course runs in the SQL engine built into the page. For the Project you can work in an AWS account of your own; the lab setup pages explain how to turn on the evidence safely and what it costs.

How is the course assessed?

By a practical exam: twenty tasks, two per teaching module, each answered by writing SQL against Northgate's record and checked on the server. Passing at 70 earns the AWS Threat Detection and Incident Response certificate with CPE credit.

Usage rights and disclaimer

Course materials: Licensed for individual professional development. You may use the queries you write in your own environment. You may not redistribute course content or share account credentials.

Fictional environment: All scenarios use Northgate Engineering. Any resemblance to real organizations is coincidental.

COURSE ASSESSMENT

End of Course Exam

Complete the course, then write the queries: twenty tasks answered against Northgate's record, no time limit. Pass mark: 70. Earn your certificate with CPE credits.

20tasks
10modules
100points
Take End of Course Exam

Answers are checked on the server. Certificate issued on pass.