Az - Dynamic Groups Privesc

Support HackTricks

Basic Information

Dynamic groups वे समूह होते हैं जिनमें एक सेट नियम कॉन्फ़िगर होते हैं और सभी उपयोगकर्ता या डिवाइस जो नियमों से मेल खाते हैं, समूह में जोड़े जाते हैं। हर बार जब किसी उपयोगकर्ता या डिवाइस का गुण बदलता है, तो डायनामिक नियमों को फिर से जांचा जाता है। और जब एक नया नियम बनाया जाता है, तो सभी डिवाइस और उपयोगकर्ताओं की जांच की जाती है।

डायनामिक समूहों को Azure RBAC roles असाइन किए जा सकते हैं, लेकिन डायनामिक समूहों में AzureAD roles जोड़ना संभव नहीं है।

इस सुविधा के लिए Azure AD प्रीमियम P1 लाइसेंस की आवश्यकता होती है।

Privesc

ध्यान दें कि डिफ़ॉल्ट रूप से कोई भी उपयोगकर्ता Azure AD में अतिथि आमंत्रित कर सकता है, इसलिए, यदि एक डायनामिक समूह नियम गुणों के आधार पर उपयोगकर्ताओं को अनुमतियाँ देता है जो एक नए अतिथि में सेट किए जा सकते हैं, तो इन गुणों के साथ एक अतिथि बनाना और विशेषाधिकार बढ़ाना संभव है। यह भी संभव है कि एक अतिथि अपने प्रोफ़ाइल को प्रबंधित करे और इन गुणों को बदल दे।

डायनामिक सदस्यता की अनुमति देने वाले समूह प्राप्त करें: Get-AzureADMSGroup | ?{$_.GroupTypes -eq 'DynamicMembership'}

Example

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

  • Rule description: कोई भी अतिथि उपयोगकर्ता जिसके पास '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) under 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

References

Support HackTricks

Last updated