Skip to content

Commit 5bf406d

Browse files
Merge pull request #2773 from MicrosoftDocs/main
Publish main to live, 02/14, 11:00 AM IST
2 parents 174044b + 400d588 commit 5bf406d

File tree

3 files changed

+20
-20
lines changed

3 files changed

+20
-20
lines changed

defender-office-365/detect-and-remediate-illicit-consent-grants.md

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,14 @@ ms.topic: conceptual
1010
ms.collection:
1111
- tier2
1212
- m365-security
13-
ms.date: 6/14/2023
13+
ms.date: 02/13/2025
1414
ms.localizationpriority: medium
1515
search.appverid:
1616
- MET150
1717
description: Learn how to recognize and remediate the illicit consent grants attack in Microsoft 365.
1818
ms.custom:
1919
- seo-marvel-apr2020
20-
- has-azure-ad-ps-ref
21-
- azure-ad-ref-level-one-done
20+
- no-azure-ad-ps-ref
2221
ms.service: defender-office-365
2322
appliesto:
2423
- ✅ <a href="https://learn.microsoft.com/defender-office-365/mdo-about#defender-for-office-365-plan-1-vs-plan-2-cheat-sheet" target="_blank">Microsoft Defender for Office 365 Plan 1 and Plan 2</a>
@@ -33,7 +32,7 @@ appliesto:
3332

3433
## What is the illicit consent grant attack in Microsoft 365?
3534

36-
In an illicit consent grant attack, the attacker creates an Azure-registered application that requests access to data such as contact information, email, or documents. The attacker then tricks an end user into granting that application consent to access their data either through a phishing attack, or by injecting illicit code into a trusted website. After the illicit application is granted consent, it has account-level access to data without the need for an organizational account. Normal remediation steps (for example, resetting passwords or requiring multi-factor authentication (MFA)) aren't effective against this type of attack, because these apps are external to the organization.
35+
In an illicit consent grant attack, the attacker creates a registered application in Microsoft Entra ID that requests access to data such as contact information, email, or documents. The attacker then tricks an end user into granting that application consent to access their data either through a phishing attack, or by injecting illicit code into a trusted website. After the illicit application is granted consent, it has account-level access to data without the need for an organizational account. Normal remediation steps (for example, resetting passwords or requiring multifactor authentication (MFA)) aren't effective against this type of attack, because these apps are external to the organization.
3736

3837
These attacks use an interaction model that presumes the entity calling the information is automation and not a human.
3938

@@ -42,11 +41,11 @@ These attacks use an interaction model that presumes the entity calling the info
4241
4342
## What does an illicit consent grant attack look like in Microsoft 365?
4443

45-
You need to search the **audit log** to find signs, also called Indicators of Compromise (IOC) of this attack. For organizations with many Azure-registered applications and a large user base, the best practice is to review your organizations consent grants on a weekly basis.
44+
You need to search the **audit log** to find signs, also called Indicators of Compromise (IOC) of this attack. For organizations with many applications registered in Microsoft Entra ID and a large user base, you should review your organizations consent grants every week.
4645

4746
### Steps for finding signs of this attack
4847

49-
1. Open the Microsoft Defender portal at <https://security.microsoft.com> and then select **Audit**. Or, to go directly to the **Audit** page, use <https://security.microsoft.com/auditlogsearch>.
48+
1. In the Microsoft Defender portal at <https://security.microsoft.com>, select **Audit**. Or, to go directly to the **Audit** page, use <https://security.microsoft.com/auditlogsearch>.
5049

5150
2. On the **Audit** page, verify that the **Search** tab is selected, and then configure the following settings:
5251
- **Date and time range**
@@ -62,25 +61,25 @@ You need to search the **audit log** to find signs, also called Indicators of Co
6261
>
6362
> It can take from 30 minutes up to 24 hours for the corresponding audit log entry to be displayed in the search results after an event occurs.
6463
>
65-
> The length of time that an audit record is retained and searchable in the audit log depends on your Microsoft 365 subscription, and specifically the type of the license that is assigned to a specific user. For more information, see [Audit log](/purview/audit-log-search).
64+
> The length of time that an audit record is retained and searchable in the audit log depends on your Microsoft 365 subscription. Specifically, the licenses assigned to specific users. For more information, see [Audit log](/purview/audit-log-search).
6665
>
67-
> The value is true indicates that someone with Global Administrator access might have granted broad access to data. If this value is unexpected, take steps to [confirm an attack](#how-to-confirm-an-attack).
66+
> The value True indicates that someone with Global Administrator access might have granted broad access to data. If this value is unexpected, take steps to [confirm an attack](#how-to-confirm-an-attack).
6867
6968
## How to confirm an attack
7069

7170
If you have one or more instances of the IOCs previously listed, you need to do further investigation to positively confirm that the attack occurred. You can use any of these three methods to confirm the attack:
7271

73-
- Inventory applications and their permissions using the Microsoft Entra admin center. This method is thorough, but you can only check one user at a time that can be very time consuming if you have many users to check.
74-
- Inventory applications and their permissions using PowerShell. This is the fastest and most thorough method, with the least amount of overhead.
75-
- Have your users individually check their apps and permissions and report the results back to the administrators for remediation.
72+
- Inventory applications and their permissions using the Microsoft Entra admin center. This method is thorough, but you can only check one user at a time. This method can be very time consuming if you have many users to check.
73+
- Inventory applications and their permissions using PowerShell. This method is the fastest, most method, and has the least amount of overhead.
74+
- Have users individually check their apps and permissions and report the results back to the admins for remediation.
7675

7776
## Inventory apps with access in your organization
7877

7978
You have the following options to inventory apps for your users:
8079

8180
- The Microsoft Entra admin center.
8281
- PowerShell.
83-
- Have your users individually enumerate their own application access.
82+
- Have users individually enumerate their own application access.
8483

8584
### Steps for using the Microsoft Entra admin center
8685

@@ -98,21 +97,19 @@ Have your users go to <https://myapps.microsoft.com> and review their own applic
9897

9998
### Steps in PowerShell
10099

101-
The simplest way to verify the Illicit Consent Grant attack is to run [Get-AzureADPSPermissions.ps1](https://gist.github.com/psignoret/41793f8c6211d2df5051d77ca3728c09), which dumps all the OAuth consent grants and OAuth apps for all users in your tenancy into one .csv file.
100+
The simplest way to verify the Illicit Consent Grant attack is to run [the Get-AzureADPSPermissions.ps1 script](https://gist.github.com/psignoret/41793f8c6211d2df5051d77ca3728c09), which dumps all the OAuth consent grants and OAuth apps for all users in your tenancy into one .csv file.
102101

103102
#### Prerequisites
104103

105-
- The Azure AD PowerShell library installed.
104+
- The [Microsoft Graph PowerShell SDK is installed](/powershell/microsoftgraph/installation).
106105
- Global Administrator permissions in the organization where the script is run.
107106
- Local Administrator permissions on the computer where you run the scripts.
108107

109108
> [!IMPORTANT]
110-
> We ***highly recommend*** that you require multi-factor authentication on your admin account. This script supports MFA authentication.
109+
> We ***highly recommend*** that you require multifactor authentication on your admin account. This script supports MFA authentication.
111110
>
112111
> Microsoft recommends that you use roles with the fewest permissions. Using lower permissioned accounts helps improve security for your organization. Global Administrator is a highly privileged role that should be limited to emergency scenarios when you can't use an existing role.
113112
114-
[!INCLUDE [Azure AD PowerShell deprecation note](../includes/aad-powershell-deprecation-note.md)]
115-
116113
1. Sign in to the computer where you want to run the scripts with local administrator rights.
117114

118115
2. Download or copy the [Get-AzureADPSPermissions.ps1](https://gist.github.com/psignoret/41793f8c6211d2df5051d77ca3728c09) script from GitHub to a folder that's easy to find and remember. This folder is also where you need to write the "permissions.csv" output file is written.
@@ -142,7 +139,7 @@ The script produces one file named Permissions.csv. Follow these steps to look f
142139
After you finished inventorying application access, review the **audit log** to determine the full scope of the breach. Search on the affected users, the time frames that the illicit application had access to your organization, and the permissions the app had. You can search the **audit log** in the [Microsoft Defender portal](audit-log-search-defender-portal.md).
143140

144141
> [!IMPORTANT]
145-
> [Mailbox auditing](/purview/audit-mailboxes) and [Activity auditing for admins and users](/purview/audit-log-enable-disable) must have been enabled prior to the attack for you to get this information.
142+
> Getting this information requires [Mailbox auditing](/purview/audit-mailboxes) and [Activity auditing for admins and users](/purview/audit-log-enable-disable) to be turned on before the attack.
146143
147144
## How to stop and remediate an illicit consent grant attack
148145

defender-office-365/quarantine-policies.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -516,6 +516,9 @@ Even if you don't customize quarantine notifications for different languages, se
516516

517517
- **Use my company logo**: Select this option to replace the default Microsoft logo that's used at the top of quarantine notifications. Before you do this step, you need to follow the instructions in [Customize the Microsoft 365 theme for your organization](/Microsoft-365/admin/setup/customize-your-organization-theme) to upload your custom logo.
518518

519+
> [!TIP]
520+
> PNG or JPEG logos are the most compatible in quarantine notifications in all versions of Outlook. For the best compatibility with SVG logos in quarantine notifications, use a URL link to the SVG logo instead of directly uploading the SVG file when you customize the Microsoft 365 theme.
521+
519522
A custom logo in a quarantine notification is shown in the following screenshot:
520523

521524
:::image type="content" source="media/quarantine-tags-esn-customization-logo.png" alt-text="A custom logo in a quarantine notification" lightbox="media/quarantine-tags-esn-customization-logo.png":::

defender-office-365/reports-email-security.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ description: "Admins can learn how to find and use the email security reports th
1919
ms.custom:
2020
- seo-marvel-apr2020
2121
ms.service: defender-office-365
22-
ms.date: 02/12/2025
22+
ms.date: 02/13/2025
2323
appliesto:
2424
- ✅ <a href="https://learn.microsoft.com/defender-office-365/eop-about" target="_blank">Exchange Online Protection</a>
2525
- ✅ <a href="https://learn.microsoft.com/defender-office-365/mdo-about#defender-for-office-365-plan-1-vs-plan-2-cheat-sheet" target="_blank">Microsoft Defender for Office 365 Plan 1 and Plan 2</a>
@@ -114,7 +114,7 @@ The **Mailflow status report** is a smart report that shows information about in
114114
> [!TIP]
115115
> If a message is sent to five recipients, we count it as five different messages, not one message.
116116
>
117-
> The Mailflow status report shows the **primary threat** responsible for blocking or quarantining messages. [Threat Explorer or Real-time detections](threat-explorer-real-time-detections-about.md) and [Advanced hunting in Defender for Office 365 Plan 2](/defender-xdr/advanced-hunting-overview) show **all threats** responsible for blocking or quarantining messages. The increased message counts in these other reporting features aren't caused by a mismatch or counting the same item multiple times. The increased message counts are the result of showing all detected threats involved at the same time.
117+
> The Mailflow status report shows the **primary threat** responsible for blocking or quarantining messages. [Threat Explorer or Real-time detections](threat-explorer-real-time-detections-about.md) and [Advanced hunting in Defender for Office 365 Plan 2](/defender-xdr/advanced-hunting-overview) show **primary and secondary threats** responsible for blocking or quarantining messages. The increased message counts in these other reporting features aren't caused by a mismatch or counting the same item multiple times. The increased message counts are the result of showing all detected threats involved at the same time.
118118
>
119119
> The aggregate message count in the Mailflow status report could also be more than the message count in Threat Explorer or Real-time detections due to [zero-hour autopurge (ZAP)](zero-hour-auto-purge.md) activity. ZAP removes messages from mailboxes after delivery, so ZAP activity doesn't affect message counts in the Mailflow status report. ZAP activity does affect message counts in Threat Explorer or Real-time detections. In Defender for Office 365, use the [Post-delivery activities report](reports-defender-for-office-365.md#post-delivery-activities-report) to understand the lifecycle of ZAP on messages in the organization.
120120

0 commit comments

Comments
 (0)