Azure AD Service Principal New Client Credentials
Description
The following analytic identifies the creation of credentials for Service Principals and Applications in addition to existing legitimate credentials in Azure AD. These credentials include both x509 certificates and passwords. With sufficient permissions, there are a variety of ways to add credentials including the Azure Portal, Azure command line interface, and Azure or Az PowerShell modules. Adversaries and red teams alike who have obtained privileged access to Azure AD may add credentials to Service Principals to maintain persistent access to victim accounts and other instances within the Azure environment.
- Type: TTP
-
Product: Splunk Enterprise, Splunk Enterprise Security, Splunk Cloud
- Last Updated: 2022-08-17
- Author: Mauricio Velazco, Splunk
- ID: e3adc0d3-9e4b-4b5d-b662-12cec1adff2a
Annotations
ATT&CK
Kill Chain Phase
- Actions on Objectives
- Installation
NIST
- DE.CM
CIS20
- CIS 3
- CIS 5
- CIS 16
CVE
Search
1
2
3
4
5
6
`azuread` body.category=AuditLogs body.operationName="Update application*Certificates and secrets management "
| rename body.* as *
| rename properties.* as *
| rename targetResources{}.* as *
| stats values(displayName) by _time, initiatedBy.user.userPrincipalName, modifiedProperties{}.newValue
| `azure_ad_service_principal_new_client_credentials_filter`
Macros
The SPL above uses the following Macros:
azure_ad_service_principal_new_client_credentials_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
- body.category
- body.operationName
- body.properties.initiatedBy.user.userPrincipalName
- body.properties.targetResources{}.displayName
- body.properties.targetResources{}.modifiedProperties{}.newValue
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. Specifically, this analytic leverages the SignInLogs log category.
Known False Positives
Service Principal client credential modifications may be part of legitimate administrative operations. Filter as needed.
Associated Analytic Story
RBA
Risk Score | Impact | Confidence | Message |
---|---|---|---|
63.0 | 70 | 90 | New credentials added for Service Principal $body.properties.targetResources{}.displayName$ |
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/T1098/001/
- https://microsoft.github.io/Azure-Threat-Research-Matrix/Persistence/AZT501/AZT501-2/
- https://hausec.com/2021/10/26/attacking-azure-azure-ad-part-ii/
- https://www.inversecos.com/2021/10/how-to-backdoor-azure-applications-and.html
- https://www.mandiant.com/resources/blog/apt29-continues-targeting-microsoft
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