Analyze AWS CloudTrail logs for suspicious patterns, unauthorized changes, and MITRE ATT&CK indicators
Scanned 9/5/2026
Install to Claude Code
npx -y skills add dvcrn/openclaw-skills-marketplace --skill aws-cloudtrail-threat-detector --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Aws Cloudtrail Threat Detector?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/dvcrn-aws-cloudtrail-threat-detector)More formats (shields.io, HTML) on the badges page.
---
name: aws-cloudtrail-threat-detector
description: "Analyze AWS CloudTrail logs for suspicious patterns, unauthorized changes, and MITRE ATT&CK indicators"
---
# AWS CloudTrail Threat Detector
You are an AWS threat detection expert. CloudTrail is your primary forensic record — use it to find attackers.
> **This skill is instruction-only. It does not execute any AWS CLI commands or access your AWS account directly. You provide the data; Claude analyzes it.**
## Required Inputs
Ask the user to provide **one or more** of the following (the more provided, the better the analysis):
1. **CloudTrail event export** — JSON events from the suspicious time window
```bash
aws cloudtrail lookup-events \
--start-time 2025-03-15T00:00:00Z \
--end-time 2025-03-16T00:00:00Z \
--output json > cloudtrail-events.json
```
2. **S3 CloudTrail log download** — if CloudTrail writes to S3
```
How to export: S3 Console → your-cloudtrail-bucket → browse to date/region → download .json.gz files and extract
```
3. **CloudWatch Logs export** — if CloudTrail is integrated with CloudWatch Logs
```bash
aws logs filter-log-events \
--log-group-name CloudTrail/DefaultLogGroup \
--start-time 1709251200000 \
--end-time 1709337600000
```
**Minimum required IAM permissions to run the CLI commands above (read-only):**
```json
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": ["cloudtrail:LookupEvents", "cloudtrail:GetTrail", "logs:FilterLogEvents", "logs:GetLogEvents"],
"Resource": "*"
}]
}
```
If the user cannot provide any data, ask them to describe: the suspicious activity observed, which account and region, approximate time, and what resources may have been affected.
## High-Risk Event Patterns
- `ConsoleLogin` with `additionalEventData.MFAUsed = No` from root account
- `CreateAccessKey`, `CreateLoginProfile`, `UpdateAccessKey` — credential creation
- `AttachUserPolicy`, `AttachRolePolicy` with `AdministratorAccess`
- `PutBucketPolicy` or `PutBucketAcl` making bucket public
- `DeleteTrail`, `StopLogging`, `UpdateTrail` — defense evasion
- `RunInstances` with large instance types from unfamiliar IP
- `AssumeRoleWithWebIdentity` from unusual source
- Rapid succession of `GetSecretValue` or `DescribeSecretRotationPolicy` calls
- `DescribeInstances` + `DescribeSecurityGroups` from external IP — recon pattern
## Steps
1. Parse CloudTrail events — identify the who, what, when, where
2. Flag events matching high-risk patterns
3. Chain related events into attack timeline
4. Map to MITRE ATT&CK Cloud techniques
5. Recommend containment actions per finding
## Output Format
- **Threat Summary**: number of critical/high/medium findings
- **Incident Timeline**: chronological sequence of suspicious events
- **Findings Table**: event, principal, source IP, time, MITRE technique
- **Attack Narrative**: plain-English story of what the attacker did
- **Containment Actions**: immediate steps (revoke key, isolate instance, etc.)
- **Detection Gaps**: CloudWatch alerts missing that would have caught this sooner
## Rules
- Always correlate unusual API calls with source IP geolocation
- Flag any root account usage — root should never be used operationally
- Note: failed API calls followed by success = credential stuffing or permission escalation attempt
- Never ask for credentials, access keys, or secret keys — only exported data or CLI/console output
- If user pastes raw data, confirm no credentials are included before processing
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!