Check ID:
Provider: AWS
Service:
Severity: CRITICAL
Categories:
Resource type:
cloudtrail_threat_detection_privilege_escalationProvider: AWS
Service:
cloudtrailSeverity: CRITICAL
Categories:
threat-detectionResource type:
AwsCloudTrailTrailWhat this check verifies
CloudTrail activity is analyzed for identities executing high-risk actions linked to privilege escalation (e.g.,Attach*Policy, PassRole, AssumeRole, CreateAccessKey). Identities exceeding a configurable share of such events within a recent time window are highlighted for investigation.
Risk
Escalation patterns can grant elevated entitlements, enabling:- Confidentiality loss via unauthorized data/secret access
- Integrity compromise by changing IAM policies/roles
- Availability impact by tampering with logging or resources This also facilitates lateral movement and persistence.
Recommendation
Apply least privilege and defense in depth:- Restrict
PassRole,Attach*Policy,UpdateAssumeRolePolicy,CreateAccessKey - Enforce permission boundaries and SCPs
- Require MFA and change approvals
- Use multi-Region CloudTrail, immutable retention, and alerting on anomalous sequences
Remediation
- Terraform
- Native IaC
- Dashboard steps
References
- https://rhinosecuritylabs.com/aws/aws-privilege-escalation-methods-mitigation/
- https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-concepts.html#cloudtrail-concepts-logging-data-events
- https://signmycode.com/blog/what-is-privilege-escalation-in-aws-recommendations-to-prevent-it
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = cloudtrail_threat_detection_privilege_escalation. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks