Detection rules › Sigma
CloudTrail Logging Stopped
A user successfully disabled CloudTrail logging. Sample command line: aws cloudtrail stop-logging --name TrailName
MITRE ATT&CK coverage
| Tactic | Techniques |
|---|---|
| Stealth | T1562.008 Impair Defenses: Disable or Modify Cloud Logs |
Event coverage
| Provider | Event |
|---|---|
| AWS-cloudtrail | StopLogging |
Rules detecting the same action
Other rules on this platform that filter on the same API call or operation.
- Attempt To Stop CloudTrail Logging (Sigma)
- AWS CloudTrail Important Change (Sigma)
- AWS CloudTrail Log Suspended (Elastic)
- AWS Defense Evasion Stop Logging Cloudtrail (Splunk)
Rule body yaml
title: CloudTrail Logging Stopped
id: da90c11e-e3d4-411e-aaf7-06d02e0c5c23
status: test
description: |
A user successfully disabled CloudTrail logging.
Sample command line: aws cloudtrail stop-logging --name TrailName
references:
- https://securitylabs.datadoghq.com/cloud-security-atlas/attacks/stopping-cloudtrail-trail/
- https://research.splunk.com/cloud/8a2f3ca2-4eb5-4389-a549-14063882e537/
- https://logrhythm.com/blog/aws-defense-evasion-and-centralized-multi-account-logging/
- https://medium.com/daniel-grzelak/disrupting-aws-logging-a42e437d6594
- https://pages.awscloud.com/rs/112-TZM-766/images/Visibility_detect_respond_AWS_SANS_whitepaper.pdf
- https://traildiscover.cloud/#CloudTrail-StopLogging
author: Zach Mathis (@yamatosecurity)
date: 2025-04-23
modified: 2025-04-23
tags:
- attack.defense-evasion
- attack.t1562.008 # Impair Defenses: Disable or Modify Cloud Logs
logsource:
product: aws
service: cloudtrail
detection:
selection:
eventSource: 'cloudtrail.amazonaws.com'
eventName: 'StopLogging'
filter:
errorCode: 'AccessDenied'
condition: selection and not filter
falsepositives:
- Admins turning off unneeded logging
level: high
Stages and Predicates
Stage 0: condition
selection and not filterStage 1: selection
selection:
eventSource: 'cloudtrail.amazonaws.com'
eventName: 'StopLogging'
Stage 2: not filter
filter:
errorCode: 'AccessDenied'
Exclusions
Top-level NOT(...) conjuncts: predicates this rule actively suppresses.
| Field | Kind | Excluded values |
|---|---|---|
errorCode | eq | AccessDenied |
Indicators
Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.
| Field | Kind | Values |
|---|---|---|
eventName | eq |
|
eventSource | eq |
|