AWS Excessive Security Scanning
Description
The following analytic identifies excessive security scanning activities in AWS by detecting a high number of Describe, List, or Get API calls from a single user. It leverages AWS CloudTrail logs to count distinct event names and flags users with more than 50 such events. This behavior is significant as it may indicate reconnaissance activities by an attacker attempting to map out your AWS environment. If confirmed malicious, this could lead to unauthorized access, data exfiltration, or further exploitation of your cloud infrastructure.
- Type: TTP
-
Product: Splunk Enterprise, Splunk Enterprise Security, Splunk Cloud
- Last Updated: 2024-05-08
- Author: Patrick Bareiss, Splunk
- ID: 1fdd164a-def8-4762-83a9-9ffe24e74d5a
Annotations
Kill Chain Phase
- Exploitation
NIST
- DE.CM
CIS20
- CIS 13
CVE
Search
1
2
3
4
5
6
`cloudtrail` eventName=Describe* OR eventName=List* OR eventName=Get*
| stats dc(eventName) as dc_events min(_time) as firstTime max(_time) as lastTime values(eventName) as command values(src) as src values(userAgent) as userAgent by user userIdentity.arn
| where dc_events > 50
| `security_content_ctime(firstTime)`
| `security_content_ctime(lastTime)`
|`aws_excessive_security_scanning_filter`
Macros
The SPL above uses the following Macros:
aws_excessive_security_scanning_filter is a empty macro by default. It allows the user to filter out any results (false positives) without editing the SPL.
Required fields
List of fields required to use this analytic.
- _time
- eventName
- src
- userAgent
- user
- userIdentity.arn
How To Implement
You must install splunk AWS add on and Splunk App for AWS. This search works with AWS CloudTrail logs.
Known False Positives
While this search has no known false positives.
Associated Analytic Story
RBA
Risk Score | Impact | Confidence | Message |
---|---|---|---|
18.0 | 30 | 60 | User $user$ has excessive number of api calls $dc_events$ from these IP addresses $src$, violating the threshold of 50, using the following commands $command$. |
The Risk Score is calculated by the following formula: Risk Score = (Impact * Confidence/100). Initial Confidence and Impact is set by the analytic author.
Reference
Test Dataset
Replay any dataset to Splunk Enterprise by using our replay.py
tool or the UI.
Alternatively you can replay a dataset into a Splunk Attack Range
source | version: 2