Try in Splunk Security Cloud

Description

The following analytic detects the successful deletion of a group within AWS IAM, leveraging CloudTrail IAM events. This action, while not inherently malicious, can serve as a precursor to more sinister activities, such as unauthorized access or privilege escalation attempts. By monitoring for such deletions, the analytic aids in identifying potential preparatory steps towards an attack, allowing for early detection and mitigation. The identification of this behavior is crucial for a SOC to prevent the potential impact of an attack, which could include unauthorized access to sensitive resources or disruption of AWS environment operations.

  • Type: Hunting
  • Product: Splunk Enterprise, Splunk Enterprise Security, Splunk Cloud

  • Last Updated: 2024-02-14
  • Author: Patrick Bareiss, Splunk
  • ID: 1bbe54f1-93d7-4764-8a01-ddaa12ece7ac

Annotations

ATT&CK

ATT&CK

ID Technique Tactic
T1069.003 Cloud Groups Discovery
T1098 Account Manipulation Persistence, Privilege Escalation
T1069 Permission Groups Discovery Discovery
Kill Chain Phase
  • Exploitation
  • Installation
NIST
  • DE.AE
CIS20
  • CIS 10
CVE
1
2
3
4
5
6
7
`amazon_security_lake` api.operation=DeleteGroup status=Success 
| fillnull 
| stats count min(_time) as firstTime max(_time) as lastTime by api.operation actor.user.account_uid actor.user.name actor.user.uid http_request.user_agent src_endpoint.ip cloud.region 
| rename actor.user.name as user, src_endpoint.ip as src_ip, cloud.region as region, http_request.user_agent as user_agent, actor.user.account_uid as aws_account_id 
| `security_content_ctime(firstTime)` 
| `security_content_ctime(lastTime)` 
| `asl_aws_iam_successful_group_deletion_filter`

Macros

The SPL above uses the following Macros:

:information_source: asl_aws_iam_successful_group_deletion_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.

  • api.operation
  • actor.user.account_uid
  • actor.user.name
  • actor.user.uid
  • http_request.user_agent
  • src_endpoint.ip
  • cloud.region

How To Implement

You must install the Data Lake Federated Analytics App and ingest the logs into Splunk.

Known False Positives

This detection will require tuning to provide high fidelity detection capabilties. Tune based on src addresses (corporate offices, VPN terminations) or by groups of users. Not every user with AWS access should have permission to delete groups (least privilege).

Associated Analytic Story

RBA

Risk Score Impact Confidence Message
5.0 10 50 User $user$ has sucessfully deleted a user group from $src_ip$

:information_source: 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