mirror of
https://github.com/splunk/security_content
synced 2026-06-08 17:32:49 +00:00
78 lines
3.8 KiB
YAML
78 lines
3.8 KiB
YAML
name: Azure AD User ImmutableId Attribute Updated
|
|
id: 0c0badad-4536-4a84-a561-5ff760f3c00e
|
|
version: 1
|
|
date: '2022-09-02'
|
|
author: Mauricio Velazco, Gowthamaraj Rajendran, Splunk
|
|
status: production
|
|
type: TTP
|
|
description: The following analytic identifies the modification of the SourceAnchor
|
|
(also called ImmutableId) attribute for an Azure Active Directory user. Updating
|
|
this attribute is a step required to set up the Azure Active Directory identity
|
|
federation backdoor technique discovered by security researcher Nestori Syynimaa.
|
|
Similar to Active Directory, Azure AD uses the concept of domains to manage directories
|
|
of identities. A new Azure AD tenant will initially contain a single domain that
|
|
is commonly called the `cloud-only` onmicrosoft.com domain. Organizations can also
|
|
add their registered custom domains to Azure AD for email addresses to match the
|
|
organizations domain name. If the organization intends to use a third-party identity
|
|
provider such as ADFS for authentication, the added custom domains can be configured
|
|
as federated. An adversary who has obtained privileged access to an Azure AD tenant
|
|
may leverage this technique to establish persistence and be able to authenticate
|
|
to Azure AD impersonating any user and bypassing the requirement to have a valid
|
|
password and/or perform MFA.
|
|
data_source: []
|
|
search: ' `azure_monitor_aad` operationName="Update user" properties.targetResources{}.modifiedProperties{}.displayName=SourceAnchor
|
|
| rename properties.* as *
|
|
| rename initiatedBy.user.userPrincipalName as initiatedBy
|
|
| rename targetResources{}.modifiedProperties{}.newValue as modifiedProperties
|
|
| stats count min(_time) as firstTime max(_time) as lastTime values(user) as user values(modifiedProperties) as modifiedProperties by initiatedBy, src_ip, result, operationName
|
|
| `security_content_ctime(firstTime)`
|
|
| `security_content_ctime(lastTime)`
|
|
| `azure_ad_user_immutableid_attribute_updated_filter`'
|
|
how_to_implement: You must install the latest version of Splunk Add-on for Microsoft
|
|
Cloud Services from Splunkbase(https://splunkbase.splunk.com/app/3110/#/details).
|
|
You must be ingesting Azure Active Directory events into your Splunk environment.
|
|
This analytic was written to be used with the azure:monitor:aad sourcetype leveraging the AuditLog log category.
|
|
known_false_positives: The SourceAnchor (also called ImmutableId) Azure AD attribute
|
|
has legitimate uses for directory synchronization. Investigate and filter as needed.
|
|
references:
|
|
- https://docs.microsoft.com/en-us/azure/active-directory/hybrid/plan-connect-design-concepts
|
|
- https://www.mandiant.com/resources/remediation-and-hardening-strategies-microsoft-365-defend-against-apt29-v13
|
|
- https://o365blog.com/post/federation-vulnerability/
|
|
- https://www.inversecos.com/2021/11/how-to-detect-azure-active-directory.html
|
|
- https://www.mandiant.com/resources/blog/detecting-microsoft-365-azure-active-directory-backdoors
|
|
- https://attack.mitre.org/techniques/T1098/
|
|
tags:
|
|
analytic_story:
|
|
- Azure Active Directory Persistence
|
|
asset_type: Azure Active Directory
|
|
confidence: 90
|
|
impact: 50
|
|
message: The SourceAnchor or ImmutableID attribute has been modified for user $user$
|
|
by $initiatedBy$
|
|
mitre_attack_id:
|
|
- T1098
|
|
observable:
|
|
- name: user
|
|
type: User
|
|
role:
|
|
- Victim
|
|
- name: initiatedBy
|
|
type: User
|
|
role:
|
|
- Attacker
|
|
product:
|
|
- Splunk Enterprise
|
|
- Splunk Enterprise Security
|
|
- Splunk Cloud
|
|
required_fields:
|
|
- _time
|
|
risk_score: 45
|
|
security_domain: threat
|
|
tests:
|
|
- name: True Positive Test
|
|
attack_data:
|
|
- data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1098/azure_ad_set_immutableid/azure-audit.log
|
|
source: Azure AD
|
|
sourcetype: azure:monitor:aad
|
|
update_timestamp: true
|