Az - Dynamic Groups Privesc

Support HackTricks

Основна інформація

Dynamic groups - це групи, які мають набір правил, і всі користувачі або пристрої, що відповідають цим правилам, додаються до групи. Кожного разу, коли атрибут користувача або пристрою змінюється, динамічні правила перевіряються знову. І коли створюється нове правило, всі пристрої та користувачі перевіряються.

Dynamic groups можуть мати Azure RBAC ролі, але неможливо додати AzureAD ролі до динамічних груп.

Ця функція вимагає ліцензії Azure AD premium P1.

Privesc

Зверніть увагу, що за замовчуванням будь-який користувач може запрошувати гостей в Azure AD, тому, якщо правило динамічної групи надає дозволи користувачам на основі атрибутів, які можуть бути встановлені в новому гості, можливо створити гостя з цими атрибутами і підвищити привілеї. Також можливо, що гість може керувати своїм профілем і змінювати ці атрибути.

Отримати групи, які дозволяють Dynamic membership: Get-AzureADMSGroup | ?{$_.GroupTypes -eq 'DynamicMembership'}

Приклад

  • Приклад правила: (user.otherMails -any (_ -contains "tester")) -and (user.userType -eq "guest")

  • Опис правила: Будь-який гість з додатковою електронною поштою, що містить рядок 'tester', буде доданий до групи

  1. Перейдіть до Azure Active Directory -> Users і натисніть на Want to switch back to the legacy users list experience? Click here to leave the preview

  2. Натисніть на New guest user і запросіть електронну пошту

  3. Профіль користувача буде додано до Azure AD, як тільки запрошення буде надіслано. Відкрийте профіль користувача і натисніть на (manage) під Invitation accepted.

  1. Змініть Resend invite? на Yes і ви отримаєте URL запрошення:

  1. Скопіюйте URL і відкрийте його, увійдіть як запрошений користувач і прийміть запрошення

  2. Увійдіть в cli як користувач і встановіть додаткову електронну пошту

# 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>

# Chnage OtherMails setting
Set-AzureADUser -ObjectId <OBJECT-ID> -OtherMails <Username>@<TENANT_NAME>.onmicrosoft.com -Verbose

Посилання

Support HackTricks

Last updated