Skip to content

Commit 72306de

Browse files
authored
Rename BulkMultiPermExploitability script and update README
Updated the script name from BulkMultiPermExploitability2.ps1 to BulkMultiPermExploitability.ps1 and revised its description. Adjusted usage examples in the README to reflect the new script name.
1 parent 4736f5a commit 72306de

1 file changed

Lines changed: 20 additions & 7 deletions

File tree

README.md

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ PowerShell-Scripts/
3939
│ └── Test-AzureBlobAnonymousEndpoints.ps1
4040
│ └── 👉** Azure AD application auditing tools **
4141
list_all_applications.ps1
42-
BulkMultiPermExploitability2.ps1
42+
BulkMultiPermExploitability.ps1
4343
Profile-App.ps1
4444
Audit-AppDelegationRisks.ps1
4545
│ └── 👉** automate creation of malicious-looking OAuth authorization flows (device‑code and consent URLs) used in consent‑phishing simulations **
@@ -289,10 +289,23 @@ Connect-MgGraph -Scopes "User.Read.All", "Organization.Read.All", "LicenseAssign
289289
### `list_all_applications.ps1`
290290
Enumerates all Microsoft Entra application registrations and enterprise application service principals visible to the current Microsoft Graph session. Exports separate application and service-principal reports, plus a normalized combined CSV inventory. Reuses an existing Graph session by default and supports optional interactive connection using Application.Read.All.
291291

292-
### `BulkMultiPermExploitability2.ps1`
293-
- **Purpose:** Bulk‑checks each app for exploitable Microsoft Graph permissions against a defined high‑risk list.
294-
- **Use Case:** Ideal for **tenant‑wide risk sweeps** and permission audits.
295-
- **Frequency:** Run **monthly or quarterly** alongside inventory scans.
292+
### `BulkMultiPermExploitability.ps1`
293+
BulkMultiPermExploitability.ps1 reviews Microsoft Entra applications for granted Microsoft Graph permissions that match a configurable high-risk permission catalog.
294+
The script evaluates both:
295+
296+
Application permissions, represented by app-role assignments
297+
Delegated permissions, represented by OAuth2 permission grants
298+
299+
It accepts an application inventory CSV produced by list_all_applications.ps1, using the ApplicationClientId column to correlate application registrations with their tenant service principals.
300+
The script is read-only. It reuses the current Microsoft Graph PowerShell session, does not request consent, does not modify application permissions, and does not disconnect the existing session.
301+
302+
The recommended input is generated by: list_all_applications.ps1
303+
The recommended input for this permission review is: entra-application-registrations-YYYYMMDD-HHMMSS.csv
304+
```powershell
305+
.\BulkMultiPermExploitability.ps1
306+
-InputCsvPath ".\entra-application-registrations-20260730-175924.csv"
307+
```
308+
296309

297310
### `Profile-App.ps1`
298311
- **Purpose:** Profiles a single AppId in detail.
@@ -308,9 +321,9 @@ Enumerates all Microsoft Entra application registrations and enterprise applicat
308321
All scripts rely on the **[Microsoft.Graph PowerShell SDK](https://learn.microsoft.com/powershell/microsoftgraph/overview)**
309322
Before running the scripts, establish a Graph session with sufficient rights:
310323
```powershell
311-
.\list_all_applications2.ps1 //Generates CSV files
324+
.\list_all_applications.ps1 //Generates CSV files
312325
313-
.\BulkMultiPermExploitability2.ps1 -ScopeCsvPath ScopeBreakdown.csv //This parses previously generated CSV file
326+
.\BulkMultiPermExploitability.ps1 -ScopeCsvPath ScopeBreakdown.csv //This parses previously generated CSV file
314327
```
315328

316329
When you see "Problem!" this is how you dig deeper into the app details

0 commit comments

Comments
 (0)