AWS Successful Single-Factor Authentication
Description
The following analytic identifies a successful Console Login authentication event against an AWS IAM user for an account without Multi-Factor Authentication enabled. This could be evidence of a misconfiguration, a policy violation or an account take over attempt that should be investigated
- Type: TTP
- Product: Splunk Enterprise, Splunk Enterprise Security, Splunk Cloud
- Datamodel: Endpoint
- Last Updated: 2022-10-04
- Author: Bhavin Patel, Splunk
- ID: a520b1fe-cc9e-4f56-b762-18354594c52f
Annotations
ATT&CK
Kill Chain Phase
- Exploitation
NIST
- DE.CM
CIS20
- CIS 3
- CIS 5
- CIS 16
CVE
Search
1
2
3
4
5
`cloudtrail` eventName= ConsoleLogin errorCode=success "additionalEventData.MFAUsed"=No
| stats count min(_time) as firstTime max(_time) as lastTime by src eventName eventSource aws_account_id errorCode additionalEventData.MFAUsed userAgent eventID awsRegion user_name userIdentity.arn
| `security_content_ctime(firstTime)`
| `security_content_ctime(lastTime)`
| `aws_successful_single_factor_authentication_filter`
Macros
The SPL above uses the following Macros:
aws_successful_single-factor_authentication_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.
- src
- eventName
- eventSource
- aws_account_id
- errorCode
- additionalEventData.MFAUsed
- userAgent
- eventID
- awsRegion
- user_name
- userIdentity.arn
How To Implement
The Splunk AWS Add-on is required to utilize this data. The search requires AWS Cloudtrail logs.
Known False Positives
It is possible that some accounts do not have MFA enabled for the AWS account however its agaisnt the best practices of securing AWS.
Associated Analytic Story
RBA
Risk Score | Impact | Confidence | Message |
---|---|---|---|
64.0 | 80 | 80 | User $user_name$ has successfully logged into an AWS Console without Multi-Factor Authentication from $src$ |
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
- https://attack.mitre.org/techniques/T1621/
- https://attack.mitre.org/techniques/T1078/004/
- https://aws.amazon.com/what-is/mfa/
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: 1