Az - Dynamic Groups Privesc

Support HackTricks

Grundlegende Informationen

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 Benutzer- oder Geräte-Attribut 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 können Azure RBAC-Rollen zugewiesen bekommen, aber es ist nicht möglich, AzureAD-Rollen zu dynamischen Gruppen hinzuzufügen.

Diese Funktion erfordert eine Azure AD Premium P1-Lizenz.

Privesc

Beachten Sie, dass standardmäßig jeder Benutzer Gäste in Azure AD einladen kann. Wenn eine dynamische Gruppen-Regel Berechtigungen an Benutzer basierend auf Attributen vergibt, die in einem neuen Gast gesetzt werden können, ist es möglich, einen Gast mit diesen Attributen zu erstellen und Privilegien zu eskalieren. Es ist auch möglich, dass ein Gast sein eigenes Profil verwaltet und diese Attribute ändert.

Gruppen abrufen, die dynamische Mitgliedschaft erlauben: Get-AzureADMSGroup | ?{$_.GroupTypes -eq 'DynamicMembership'}

Beispiel

  • Regelbeispiel: (user.otherMails -any (_ -contains "tester")) -and (user.userType -eq "guest")

  • Regelbeschreibung: Jeder Gastbenutzer mit einer sekundären E-Mail mit dem String 'tester' wird der Gruppe hinzugefügt

  1. Gehen Sie zu Azure Active Directory -> Benutzer und klicken Sie auf Möchten Sie zur alten Benutzerlisten-Erfahrung zurückkehren? Klicken Sie hier, um die Vorschau zu verlassen

  2. Klicken Sie auf Neuer Gastbenutzer und laden Sie eine E-Mail ein

  3. Das Profil des Benutzers wird dem Azure AD hinzugefügt, sobald die Einladung gesendet wird. Öffnen Sie das Profil des Benutzers und klicken Sie auf (verwalten) unter Einladung akzeptiert.

  1. Ändern Sie Einladung erneut senden? auf Ja und Sie erhalten eine Einladungs-URL:

  1. Kopieren Sie die URL und öffnen Sie sie, melden Sie sich als eingeladener Benutzer an und akzeptieren Sie die Einladung

  2. Melden Sie sich in der CLI als Benutzer an und setzen Sie die sekundäre E-Mail

# Login
$password = ConvertTo-SecureString 'password' -AsPlainText -Force
$creds = New-Object
System.Management.Automation.PSCredential('externaltester@somedomain.onmicrosoft.com', $Password)
Connect-AzureAD -Credential $creds -TenantId <tenant_id_of_attacked_domain>

# Ändern der OtherMails-Einstellung
Set-AzureADUser -ObjectId <OBJECT-ID> -OtherMails <Username>@<TENANT_NAME>.onmicrosoft.com -Verbose

Referenzen

Support HackTricks

Last updated