๐ก๏ธ AWS CloudTrail Unauthorized API Calls Monitoring is not enabled๐ขโช
- Contextual name: ๐ก๏ธ Unauthorized API Calls Monitoring is not enabled๐ขโช
- ID:
/ce/ca/aws/cloudtrail/unauthorized-api-calls-monitoring - Tags:
- โช Impossible policy
- ๐ข Policy with categories
- ๐ข Policy with type
- Policy Type:
COMPLIANCE_POLICY - Policy Categories:
SECURITY
Similar Policiesโ
- Cloud Conformity: Authorization Failures Alarm
- Internal:
dec-x-9b3ad9c4
Similar Internal Rulesโ
| Rule | Policies | Flags |
|---|---|---|
| โ๏ธ dec-x-9b3ad9c4 | 1 |
Descriptionโ
Descriptionโ
Real-time monitoring of API calls can be achieved by directing CloudTrail Logs to CloudWatch Logs, or an external Security information and event management (SIEM) environment, and establishing corresponding metric filters and alarms.
It is recommended that a metric filter and alarm be established for unauthorized API calls.
Rationaleโ
Monitoring unauthorized API calls will help reduce time to detect malicious activity and can alert you to a potential security incident.
CloudWatch is an AWS native service that allows you to observe and monitor resources and applications. CloudTrail Logs can also be sent to an external Security information and event management (SIEM) environment for monitoring and alerting.
Impactโ
This alert may be triggered by normal read-only console activities that attempt to opportunistically gather optional information, but gracefully fail if they don't have permissions.
If an excessive number of alerts are being generated then an organization may wish to consider adding read access to the limited IAM user permissions simply to quiet the alerts.
... see more
Remediationโ
Remediationโ
If you are using CloudTrails and CloudWatch, perform the following to setup the metric filter, alarm, SNS topic, and subscription:
- Create a metric filter based on filter pattern provided which checks for unauthorized API calls and the
<cloudtrail_log_group_name>taken from audit step 1:aws logs put-metric-filter --log-group-name "cloudtrail_log_group_name" --filter-name "<unauthorized_api_calls_metric>" --metric-transformations metricName=unauthorized_api_calls_metric,metricNamespace=CISBenchmark,metricValue=1 --filter-pattern "{ ($.errorCode =\"*UnauthorizedOperation\") || ($.errorCode =\"AccessDenied*\") && ($.sourceIPAddress!=\"delivery.logs.amazonaws.com\") && ($.eventName!=\"HeadBucket\") }"Note: You can choose your own
metricNameandmetricNamespacestrings. Using the samemetricNamespacefor all Foundations Benchmark metrics will group them together.
- Create an SNS topic that the alarm will notify:
aws sns create-topic --name <sns_topic_name>Note: you can execute this command once and then re-use the same topic for all monitoring alarms.
... see more