You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
title: Use Microsoft and Azure security resources to help recover from systemic identity compromise | Microsoft Docs
3
-
description: Learn how to use Microsoft and Azure security resources, such as Microsoft 365 Defender, Microsoft Sentinel, and Azure Active Directory, and Microsoft Defender for Cloud, and Microsoft recommendations to secure your system against systemic-identity compromises similar to the Nobelium attack (Solorigate) of December 2020.
4
-
services: sentinel
4
+
description: Learn how to use Microsoft and Azure security resources, such as Microsoft 365 Defender, Microsoft Sentinel, Azure Active Directory, Microsoft Defender for Cloud, and Microsoft Defender for IoT and Microsoft recommendations to secure your system against systemic-identity compromises.
5
+
services: security
5
6
documentationcenter: na
6
7
author: batamig
7
-
manager: rkarlin
8
+
manager: raynew
8
9
editor: ''
9
10
10
-
ms.service: microsoft-sentinel
11
+
ms.service: security
11
12
ms.topic: how-to
12
13
ms.tgt_pltfrm: na
13
14
ms.workload: na
14
-
ms.date: 06/17/2021
15
+
ms.date: 01/15/2023
15
16
ms.author: bagol
16
17
17
18
---
18
19
19
20
# Recovering from systemic identity compromise
20
21
21
-
This article describes Microsoft resources and recommendations for recovering from a systemic identity compromise attack against your organization, such as the [Nobelium](https://aka.ms/solorigate) attack of December 2020.
22
+
This article describes Microsoft resources and recommendations for recovering from a systemic identity compromise attack against your organization.
22
23
23
24
The content in this article is based on guidance provided by Microsoft's Detection and Response Team (DART), which works to respond to compromises and help customers become cyber-resilient. For more guidance from the DART team, see their [Microsoft security blog series](https://www.microsoft.com/security/blog/microsoft-detection-and-response-team-dart-blog-series/).
24
25
@@ -56,7 +57,6 @@ Responding to systemic identity compromises should include the steps shown in th
56
57
|**Investigate your environment**| After you have secured communications on your core investigation team, you can start looking for initial access points and persistence techniques. [Identify your indications of compromise](#identify-indications-of-compromise), and then look for initial access points and persistence. At the same time, start [establishing continuous monitoring operations](#establish-continuous-monitoring) during your recovery efforts. |
57
58
|**Improve security posture**|[Enable security features and capabilities](#improve-security-posture) following best practice recommendations for improved system security moving forward. <br><br>Make sure to continue your [continuous monitoring](#establish-continuous-monitoring) efforts as time goes on and the security landscape changes. |
58
59
|**Regain / retain control**| You must regain administrative control of your environment from the attacker. After you have control again and have refreshed your system's security posture, make sure to [remediate or block](#remediate-and-retain-administrative-control) all possible persistence techniques and new initial access exploits. |
59
-
|||
60
60
61
61
## Establish secure communications
62
62
@@ -87,6 +87,7 @@ Check for updates in the following Microsoft security products, and implement an
87
87
-[Microsoft 365 security solutions and services](/microsoft-365/security/)
-[Microsoft Defender for Cloud Apps ](/cloud-app-security/)
90
+
-[Microsoft Defender for IoT](/defender-for-iot/organizations)
90
91
91
92
Implementing new updates will help identify any prior campaigns and prevent future campaigns against your system. Keep in mind that lists of IOCs may not be exhaustive, and may expand as investigations continue.
92
93
@@ -96,6 +97,8 @@ Therefore, we recommend also taking the following actions:
96
97
97
98
- Incorporate threat intelligence feeds into your SIEM, such as by configuring Microsoft Purview Data Connectors in [Microsoft Sentinel](../../sentinel/understand-threat-intelligence.md).
98
99
100
+
- Make sure that any extended detection and response tools, such as [Microsoft Defender for IoT](/azure/defender-for-iot/organizations/how-to-work-with-threat-intelligence-packages), are using the most recent threat intelligence data.
101
+
99
102
For more information, see Microsoft's security documentation:
100
103
101
104
-[Microsoft security documentation](/security/)
@@ -154,7 +157,6 @@ Review administrative rights in both your cloud and on-premises environments. Fo
154
157
|**All Enterprise applications**| Review for delegated permissions and consent grants that allow any of the following actions: <br><br> - Modifying privileged users and roles <br>- Reading or accessing all mailboxes <br>- Sending or forwarding email on behalf of other users <br>- Accessing all OneDrive or SharePoint site content <br>- Adding service principals that can read/write to the directory |
155
158
|**Microsoft 365 environments**|Review access and configuration settings for your Microsoft 365 environment, including: <br>- SharePoint Online Sharing <br>- Microsoft Teams <br>- Power Apps <br>- Microsoft OneDrive for Business |
156
159
|**Review user accounts in your environments**|- Review and remove guest user accounts that are no longer needed. <br>- Review email configurations for delegates, mailbox folder permissions, ActiveSync mobile device registrations, Inbox rules, and Outlook on the Web options. <br>- Review ApplicationImpersonation rights and reduce any use of legacy authentication as much as possible. <br>- Validate that MFA is enforced and that both MFA and self-service password reset (SSPR) contact information for all users is correct. |
157
-
|||
158
160
159
161
## Establish continuous monitoring
160
162
@@ -170,10 +172,20 @@ For example, Microsoft security services may have specific resources and guidanc
170
172
171
173
Microsoft Sentinel has many built-in resources to help in your investigation, such as hunting workbooks and analytics rules that can help detect attacks in relevant areas of your environment.
172
174
173
-
For more information, see:
175
+
Use Microsoft Sentinel's content hub to install extended security solutions and data connectors that stream content from other services in your environment. For more information, see:
174
176
175
177
-[Visualize and analyze your environment](../../sentinel/get-visibility.md)
176
-
-[Detect threats out of the box](../../sentinel/detect-threats-built-in.md).
178
+
-[Detect threats out of the box](../../sentinel/detect-threats-built-in.md)
179
+
-[Discover and deploy out-of-the-box solutions](/azure/sentinel/sentinel-solutions-deploy)
180
+
181
+
### Monitoring with Microsoft Defender for IoT
182
+
183
+
If your environment also includes Operational Technology (OT) resources, you may have devices that use specialized protocols, which prioritize operational challenges over security.
184
+
185
+
Deploy Microsoft Defender for IoT to monitor and secure those devices, especially any that aren't protected by traditional security monitoring systems. Install Defender for IoT network sensors at specific points of interest in your environment to detect threats in ongoing network activity using agentless monitoring and dynamic threat intelligence.
186
+
187
+
For more information, see [Get started with OT network security monitoring](/azure/defender-for-iot/organizations/getting-started).
188
+
177
189
178
190
### Monitoring with Microsoft 365 Defender
179
191
@@ -203,7 +215,6 @@ The following table describes more methods for using Azure Active directory logs
203
215
|**Detect credentials for OAuth applications**| Attackers who have gained control of a privileged account may search for an application with the ability to access any user's email in the organization, and then add attacker-controlled credentials to that application. <br><br>For example, you may want to search for any of the following activities, which would be consistent with attacker behavior: <br>- Adding or updating service principal credentials <br>- Updating application certificates and secrets <br>- Adding an app role assignment grant to a user <br>- Adding Oauth2PermissionGrant |
204
216
|**Detect e-mail access by applications**| Search for access to email by applications in your environment. For example, use the [Microsoft Purview Audit (Premium) features](/microsoft-365/compliance/mailitemsaccessed-forensics-investigations) to investigate compromised accounts. |
205
217
|**Detect non-interactive sign-ins to service principals**| The Azure Active Directory sign-in reports provide details about any non-interactive sign-ins that used service principal credentials. For example, you can use the sign-in reports to find valuable data for your investigation, such as an IP address used by the attacker to access email applications. |
206
-
|||
207
218
208
219
209
220
## Improve security posture
@@ -222,7 +233,7 @@ We recommend the following actions to ensure your general security posture:
222
233
223
234
-**Review [Microsoft Secure Score](/microsoft-365/security/mtp/microsoft-secure-score)** for security fundamentals recommendations customized for the Microsoft products and services you consume.
224
235
225
-
-**Ensure that your organization has EDR and SIEM solutions in place**, such as [Microsoft 365 Defender for Endpoint](/microsoft-365/security/defender/microsoft-365-defender) and [Microsoft Sentinel](../../sentinel/overview.md).
236
+
-**Ensure that your organization has extended detection and response (XDR) and security information and event management (SIEM) solutions in place**, such as [Microsoft 365 Defender for Endpoint](/microsoft-365/security/defender/microsoft-365-defender), [Microsoft Sentinel](../../sentinel/overview.md), and [Microsoft Defender for IoT](/azure/defender-for-iot/organizations/).
@@ -236,14 +247,6 @@ We recommend the following actions to ensure identity-related security posture:
236
247
237
248
-**Eliminate your organization’s use of legacy authentication**, if systems or applications still require it. For more information, see [Block legacy authentication to Azure AD with Conditional Access](../../active-directory/conditional-access/block-legacy-authentication.md).
238
249
239
-
> [!NOTE]
240
-
> The Exchange Team is planning to [disable Basic Authentication for the EAS, EWS, POP, IMAP, and RPS protocols](https://developer.microsoft.com/en-us/office/blogs/deferred-end-of-support-date-for-basic-authentication-in-exchange-online/) in the second half of 2021.
241
-
>
242
-
> As a point of clarity, Security Defaults and Authentication Policies are separate but provide complementary features.
243
-
>
244
-
> We recommend that customers use Authentication Policies to turn off Basic Authentication for a subset of Exchange Online protocols or to gradually turn off Basic Authentication across a large organization.
245
-
>
246
-
247
250
-**Treat your ADFS infrastructure and AD Connect infrastructure as a Tier 0 asset**.
248
251
249
252
-**Restrict local administrative access to the system**, including the account that is used to run the ADFS service.
@@ -258,13 +261,7 @@ We recommend the following actions to ensure identity-related security posture:
258
261
259
262
- If you are using a Service Account and your environment supports it, **migrate from a Service Account to a group-Managed Service Account (gMSA)**. If you cannot move to a gMSA, rotate the password on the Service Account to a complex password.
260
263
261
-
-**Ensure Verbose logging is enabled on your ADFS systems**. For example, run the following commands:
-**Ensure Verbose logging is enabled on your ADFS systems**.
268
265
269
266
## Remediate and retain administrative control
270
267
@@ -296,96 +293,17 @@ If your organization decides *not* to [remove trust](#remove-trust-on-your-curre
296
293
297
294
Rotating the token-signing certificate a single time still allows the previous token-signing certificate to work. Continuing to allow previous certificates to work is a built-in functionality for normal certificate rotations, which permits a grace period for organizations to update any relying party trusts before the certificate expires.
298
295
299
-
If there was an attack, you don't want the attacker to retain access at all. Make sure to use the following steps to ensure that the attacker doesn't maintain the ability to forge tokens for your domain.
300
-
301
-
> [!CAUTION]
302
-
> The last step in this procedure logs users out of their phones, current webmail sessions, and any other items that are using the associated tokens and refresh tokens.
303
-
>
304
-
305
-
> [!TIP]
306
-
> Performing these steps in your ADFS environment creates both a primary and secondary certificate, and automatically promotes the secondary certificate to primary after a default period of 5 days.
307
-
>
308
-
> If you have Relying Party Trusts, this may have effects 5 days after the initial ADFS environment change, and should be accounted for in your plan. You can also resolve this by replacing the primary certificate a third time, using the **Urgent** flag again, and removing the secondary certificate or turning off automatic certificate rotation.
309
-
>
310
-
311
-
**To fully rotate the token-signing certificate, and prevent new token forging by an attacker**
312
-
313
-
1. Check to make sure that your **AutoCertificateRollover** parameter is set to **True**:
314
-
315
-
``` powershell
316
-
Get-AdfsProperties | FL AutoCert*, Certificate*
317
-
```
318
-
If **AutoCertificateRollover** isn't set to **True**, set the value as follows:
319
-
320
-
``` powershell
321
-
Set-ADFSProperties -AutoCertificateRollover $true
322
-
```
296
+
If there was an attack, you don't want the attacker to retain access at all. Make sure that the attacker doesn't retain the ability to forge tokens for your domain.
323
297
324
-
1. Connect to the Microsoft Online Service:
325
-
326
-
``` powershell
327
-
Connect-MsolService
328
-
```
329
-
330
-
1. Run the following command and make a note of your on-premises and cloud token signing certificate thumbprint and expiration dates:
331
-
332
-
``` powershell
333
-
Get-MsolFederationProperty -DomainName <domain>
334
-
```
335
-
336
-
For example:
337
-
338
-
```powershell
339
-
...
340
-
[Not Before]
341
-
12/9/2020 7:57:13 PM
342
-
343
-
[Not After]
344
-
12/9/2021 7:57:13 PM
345
-
346
-
[Thumbprint]
347
-
3UD1JG5MEFHSBW7HEPF6D98EI8AHNTY22XPQWJFK6
348
-
```
349
-
350
-
1. Replace the primary token signing certificate using the **Urgent** switch. This command causes ADFS to replace the primary certificate immediately, without making it a secondary certificate:
1. Create a secondary Token Signing certificate, without the **Urgent** switch. This command allows for two on-premises token signing certificates before synching with Azure Cloud.
1. Update the cloud environment with both the primary and secondary certificates on-premises to immediately remove the cloud published token signing certificate.
363
-
364
-
```powershell
365
-
Update-MsolFederatedDomain -DomainName <domain>
366
-
```
367
-
368
-
> [!IMPORTANT]
369
-
> If this step is not performed using this method, the old token signing certificate may still be able to authenticate users.
370
-
371
-
1. To ensure that these steps have been performed correctly, verify that the certificate displayed before in step 3 is now removed:
372
-
373
-
```powershell
374
-
Get-MsolFederationProperty -DomainName <domain>
375
-
```
376
-
377
-
1. Revoke your refresh tokens via PowerShell, to prevent access with the old tokens.
378
-
379
-
For more information, see:
380
-
381
-
- [Revoke user access in Azure Active Directory](../../active-directory/enterprise-users/users-revoke-access.md)
If, instead of [rotating your SAML token-signing certificate](#rotate-your-saml-token-signing-certificate), you decide to replace the ADFS servers with clean systems, you'll need to remove the existing ADFS from your environment, and then build a new one.
306
+
If, instead of rotating your SAML token-signing certificate, you decide to replace the ADFS servers with clean systems, you'll need to remove the existing ADFS from your environment, and then build a new one.
389
307
390
308
For more information, see [Remove a configuration](../../active-directory/cloud-sync/how-to-configure.md#remove-a-configuration).
391
309
@@ -400,7 +318,6 @@ In addition to the recommendations listed earlier in this article, we also recom
400
318
|**Enforce MFA**| Enforce Multi-Factor Authentication (MFA) across all elevated users in the tenant. We recommend enforcing MFA across all users in the tenant. |
401
319
|**Limit administrative access**| Implement [Privileged Identity Management](../../active-directory/privileged-identity-management/pim-configure.md) (PIM) and conditional access to limit administrative access. <br><br>For Microsoft 365 users, implement [Privileged Access Management](https://techcommunity.microsoft.com/t5/microsoft-security-and/privileged-access-management-in-office-365-is-now-generally/ba-p/261751) (PAM) to limit access to sensitive abilities, such as eDiscovery, Global Admin, Account Administration, and more. |
402
320
|**Review / reduce delegated permissions and consent grants**| Review and reduce all Enterprise Applications delegated permissions or [consent grants](/graph/auth-limit-mailbox-access) that allow any of the following functionalities: <br><br>- Modification of privileged users and roles <br>- Reading, sending email, or accessing all mailboxes <br>- Accessing OneDrive, Teams, or SharePoint content <br>- Adding Service Principals that can read/write to the directory <br>- Application Permissions versus Delegated Access |
403
-
| | |
404
321
405
322
### On-premises remediation activities
406
323
@@ -414,7 +331,6 @@ In addition to the recommendations listed earlier in this article, we also recom
414
331
|**Reset the krbtgt account**| Reset the **krbtgt** account twice using the [New-KrbtgtKeys](https://github.com/microsoft/New-KrbtgtKeys.ps1/blob/master/New-KrbtgtKeys.ps1) script. <br><br>**Note**: If you are using Read-Only Domain Controllers, you will need to run the script separately for Read-Write Domain Controllers and for Read-Only Domain Controllers. |
415
332
|**Schedule a system restart**| After you validate that no persistence mechanisms created by the attacker exist or remain on your system, schedule a system restart to assist with removing memory-resident malware. |
416
333
|**Reset the DSRM password**| Reset each domain controller’s DSRM (Directory Services Restore Mode) password to something unique and complex. |
417
-
| | |
418
334
419
335
### Remediate or block persistence discovered during investigation
0 commit comments