Translated ['', 'src/pentesting-cloud/azure-security/az-privilege-escala

This commit is contained in:
Translator
2025-11-19 17:18:24 +00:00
parent e9c174fef7
commit ed652af180

View File

@@ -1,27 +1,59 @@
# Az - Dynamische Gruppen Privesc
# Az - Dynamic Groups Privesc
{{#include ../../../../banners/hacktricks-training.md}}
## Grundinformationen
## Basic Information
**Dynamische Gruppen** sind Gruppen, die eine Reihe von **Regeln** konfiguriert haben, und alle **Benutzer oder Geräte**, die den Regeln entsprechen, werden der Gruppe hinzugefügt. Jedes Mal, wenn ein **Attribut** eines Benutzers oder Geräts **geändert** wird, werden die dynamischen Regeln **erneut überprüft**. Und wenn eine **neue Regel** **erstellt** wird, werden alle Geräte und Benutzer **überprüft**.
**Dynamische Gruppen** sind Gruppen, die eine Menge von **Regeln** konfiguriert haben und alle **Benutzer oder Geräte**, die den Regeln entsprechen, werden der Gruppe hinzugefügt. Jedes Mal, wenn ein Benutzer- oder Geräte-**Attribut** **geändert** wird, werden die dynamischen Regeln **neu überprüft**. Und wenn eine **neue Regel** **erstellt** wird, werden alle Geräte und Benutzer **überprüft**.
Dynamische Gruppen können **Azure RBAC-Rollen** zugewiesen werden, aber es ist **nicht möglich**, **AzureAD-Rollen** zu dynamischen Gruppen hinzuzufügen.
Dynamische Gruppen können **Azure RBAC roles assigned** haben, aber es ist **nicht möglich**, **AzureAD roles** zu dynamischen Gruppen hinzuzufügen.
Diese Funktion erfordert eine Azure AD Premium P1-Lizenz.
Diese Funktion erfordert eine Azure AD premium P1 license.
## Privesc
Beachten Sie, dass standardmäßig jeder Benutzer Gäste in Azure AD einladen kann. Wenn also eine dynamische Gruppen-**regel** **Berechtigungen** für Benutzer basierend auf **Attributen** gewährt, die in einem neuen **Gast** **festgelegt** werden können, ist es möglich, einen Gast mit diesen Attributen zu **erstellen** und die **Berechtigungen zu eskalieren**. Es ist auch möglich, dass ein Gast sein eigenes Profil verwaltet und diese Attribute ändert.
Beachte, dass standardmäßig jeder Benutzer Gäste in Azure AD einladen kann. Wenn also eine dynamische Gruppen-**Regel** **Berechtigungen** für Benutzer basierend auf **Attributen** vergibt, die in einem neuen **Gast** **gesetzt** werden können, ist es möglich, **einen Gast zu erstellen** mit diesen Attributen und **Privilegien zu eskalieren**. Ein Gast kann außerdem sein eigenes Profil verwalten und diese Attribute ändern.
Holen Sie sich Gruppen, die dynamische Mitgliedschaften erlauben: **`az ad group list --query "[?contains(groupTypes, 'DynamicMembership')]" --output table`**
Gruppen abrufen, die dynamische Mitgliedschaft erlauben: **`az ad group list --query "[?contains(groupTypes, 'DynamicMembership')]" --output table`**
### Dynamic Groups Enumeration
Regeln einer dynamischen Gruppe abrufen:
Mit **Azure CLI**:
```bash
az ad group list \
--filter "groupTypes/any(c:c eq 'DynamicMembership')" \
--query "[].{displayName:displayName, rule:membershipRule}" \
-o table
```
Mit **PowerShell** und **Microsoft Graph SDK**:
```bash
Install-Module Microsoft.Graph -Scope CurrentUser -Force
Import-Module Microsoft.Graph
Connect-MgGraph -Scopes "Group.Read.All"
Get-MgGroup -Filter "groupTypes/any(c:c eq 'DynamicMembership')" `
-Property Id, DisplayName, GroupTypes
# Get the rules of a specific group
$g = Get-MgGroup -Filter "displayName eq '<GROUP NAME>'" `
-Property DisplayName, GroupTypes, MembershipRule, MembershipRuleProcessingState
$g | Select-Object DisplayName, GroupTypes, MembershipRule
# Get the rules of all dynamic groups
Get-MgGroup -Filter "groupTypes/any(c:c eq 'DynamicMembership')" `
-Property DisplayName, MembershipRule |
Select-Object DisplayName, MembershipRule
```
### Beispiel
- **Regelbeispiel**: `(user.otherMails -any (_ -contains "security")) -and (user.userType -eq "guest")`
- **Regelbeschreibung**: Jeder Gastbenutzer mit einer sekundären E-Mail, die den String 'security' enthält, wird der Gruppe hinzugefügt.
- **Regelbeschreibung**: Jeder Gastbenutzer mit einer sekundären E-Mail, die die Zeichenfolge 'security' enthält, wird der Gruppe hinzugefügt
Für die E-Mail des Gastbenutzers, akzeptieren Sie die Einladung und überprüfen Sie die aktuellen Einstellungen **dieses Benutzers** in [https://entra.microsoft.com/#view/Microsoft_AAD_IAM/TenantOverview.ReactView](https://entra.microsoft.com/#view/Microsoft_AAD_IAM/TenantOverview.ReactView).\
Für die E-Mail des Gastbenutzers, akzeptiere die Einladung und überprüfe die aktuellen Einstellungen **dieses Benutzers** in [https://entra.microsoft.com/#view/Microsoft_AAD_IAM/TenantOverview.ReactView](https://entra.microsoft.com/#view/Microsoft_AAD_IAM/TenantOverview.ReactView).\
Leider erlaubt die Seite nicht, die Attributwerte zu ändern, daher müssen wir die API verwenden:
```bash
# Login with the gust user