mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2025-12-27 21:23:07 -08:00
Translated ['', 'src/pentesting-cloud/azure-security/az-lateral-movement
This commit is contained in:
@@ -4,13 +4,16 @@
|
||||
|
||||
## Basic Information
|
||||
|
||||
[From the docs:](https://learn.microsoft.com/en-us/entra/identity/hybrid/connect/how-to-connect-sync-whatis) Microsoft Entra Connect synchronization services (Microsoft Entra Connect Sync) Microsoft Entra Connect का एक मुख्य घटक है। यह आपके ऑन-प्रिमाइसेस वातावरण और Microsoft Entra ID के बीच पहचान डेटा को समन्वयित करने से संबंधित सभी संचालन का ध्यान रखता है।
|
||||
[From the docs:](https://learn.microsoft.com/en-us/entra/identity/hybrid/connect/how-to-connect-sync-whatis) Microsoft Entra Connect synchronization services (Microsoft Entra Connect Sync) Microsoft Entra Connect का एक मुख्य घटक है। यह आपके on-premises परिवेश और Microsoft Entra ID के बीच identity data को synchronize करने से संबंधित सभी ऑपरेशनों का ध्यान रखता है।
|
||||
|
||||
Sync सेवा दो घटकों से मिलकर बनती है: on-premises वाला **Microsoft Entra Connect Sync** कंपोनेंट और Microsoft Entra ID में सर्विस साइड जिसे **Microsoft Entra Connect Sync service** कहा जाता है।
|
||||
|
||||
इसे उपयोग करने के लिए, आपके AD वातावरण के अंदर एक सर्वर पर **`Microsoft Entra Connect Sync`** agent इंस्टॉल करना आवश्यक है। यह agent AD साइड से synchronization का ध्यान रखेगा।
|
||||
|
||||
इसे उपयोग करने के लिए, आपके AD वातावरण के अंदर एक सर्वर में **`Microsoft Entra Connect Sync`** एजेंट स्थापित करना आवश्यक है। यह एजेंट AD पक्ष से समन्वय का ध्यान रखेगा।
|
||||
|
||||
<figure><img src="../../../../images/image (173).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
**Connect Sync** मूल रूप से **AD से Entra ID में उपयोगकर्ताओं को समन्वयित करने का "पुराना" Azure तरीका है।** नया अनुशंसित तरीका **Entra Cloud Sync** का उपयोग करना है:
|
||||
**Connect Sync** मूल रूप से AD से Entra ID में उपयोगकर्ताओं को synchronize करने का "पुराना" Azure तरीका है। नया अनुशंसित तरीका **Entra Cloud Sync** का उपयोग करना है:
|
||||
|
||||
{{#ref}}
|
||||
az-cloud-sync.md
|
||||
@@ -18,41 +21,42 @@ az-cloud-sync.md
|
||||
|
||||
### Principals Generated
|
||||
|
||||
- खाता **`MSOL_<installationID>`** स्वचालित रूप से ऑन-प्रिम AD में बनाया जाता है। इस खाते को **Directory Synchronization Accounts** भूमिका दी जाती है (देखें [documentation](https://docs.microsoft.com/en-us/azure/active-directory/users-groups-roles/directory-assign-admin-roles#directory-synchronization-accounts-permissions)) जिसका अर्थ है कि इसके पास **ऑन-प्रिम AD में पुनरुत्पादन (DCSync) अनुमतियाँ** हैं।
|
||||
- इसका मतलब है कि जो कोई भी इस खाते से समझौता करेगा वह ऑन-प्रिमिस डोमेन से समझौता कर सकेगा।
|
||||
- एक प्रबंधित सेवा खाता **`ADSyncMSA<id>`** बिना किसी विशेष डिफ़ॉल्ट विशेषाधिकार के ऑन-प्रिम AD में बनाया जाता है।
|
||||
- Entra ID में सेवा प्रिंसिपल **`ConnectSyncProvisioning_ConnectSync_<id>`** एक प्रमाणपत्र के साथ बनाया जाता है।
|
||||
- खाता **`MSOL_<installationID>`** automatic रूप से on-prem AD में बनाया जाता है। यह खाता **Directory Synchronization Accounts** role दिया जाता है (देखें [documentation](https://docs.microsoft.com/en-us/azure/active-directory/users-groups-roles/directory-assign-admin-roles#directory-synchronization-accounts-permissions)) जिसका मतलब है कि इसे on-prem AD में **replication (DCSync) permissions** मिलती हैं।
|
||||
- इसका अर्थ है कि जो कोई भी इस खाते से समझौता करेगा वह on-premise domain को compromize कर सकेगा।
|
||||
- एक managed service account **`ADSyncMSA<id>`** on-prem AD में बनाया जाता है जिसमें किसी विशेष डिफ़ॉल्ट privileges नहीं होते।
|
||||
- Entra ID में Service Principal **`ConnectSyncProvisioning_ConnectSync_<id>`** एक certificate के साथ बनाया जाता है।
|
||||
|
||||
## Synchronize Passwords
|
||||
|
||||
### Password Hash Synchronization
|
||||
|
||||
यह घटक **AD से Entra ID में पासवर्ड को समन्वयित करने के लिए** भी उपयोग किया जा सकता है ताकि उपयोगकर्ता अपने AD पासवर्ड का उपयोग Entra ID से कनेक्ट करने के लिए कर सकें। इसके लिए, AD सर्वर में स्थापित Microsoft Entra Connect Sync एजेंट में पासवर्ड हैश समन्वय की अनुमति देना आवश्यक है।
|
||||
यह घटक AD से Entra ID में पासवर्ड synchronize करने के लिए भी उपयोग किया जा सकता है ताकि उपयोगकर्ता अपने AD पासवर्ड का उपयोग Entra ID से कनेक्ट करने के लिए कर सकें। इसके लिए, Microsoft Entra Connect Sync agent में password hash synchronization की अनुमति देना आवश्यक है जो AD सर्वर पर इंस्टॉल किया गया है।
|
||||
|
||||
[From the docs:](https://learn.microsoft.com/en-us/entra/identity/hybrid/connect/whatis-phs) **Password hash synchronization** हाइब्रिड पहचान को पूरा करने के लिए उपयोग किए जाने वाले साइन-इन तरीकों में से एक है। **Azure AD Connect** एक ऑन-प्रिमिस Active Directory उदाहरण से एक क्लाउड-आधारित Azure AD उदाहरण में उपयोगकर्ता के पासवर्ड का हैश, हैश का हैश समन्वयित करता है।
|
||||
[From the docs:](https://learn.microsoft.com/en-us/entra/identity/hybrid/connect/whatis-phs) **Password hash synchronization** hybrid identity को पूरा करने के लिए उपयोग की जाने वाली sign-in methods में से एक है। **Azure AD Connect** on-premises Active Directory instance से cloud-based Azure AD instance तक उपयोगकर्ता के पासवर्ड के hash, of the hash, को synchronize करता है।
|
||||
|
||||
मूल रूप से, सभी **उपयोगकर्ता** और **पासवर्ड हैश का हैश** ऑन-प्रिम से Azure AD में समन्वयित होते हैं। हालाँकि, **स्पष्ट-पाठ पासवर्ड** या **मूल** **हैश** Azure AD को नहीं भेजे जाते हैं।
|
||||
मूल रूप से, सभी **users** और पासवर्ड hashes के **hash का hash** on-prem से Azure AD तक synchronize किए जाते हैं। हालांकि, **clear-text passwords** या मूल **hashes** Azure AD को भेजे नहीं जाते।
|
||||
|
||||
**हैश समन्वय** हर **2 मिनट** में होता है। हालाँकि, डिफ़ॉल्ट रूप से, **पासवर्ड समाप्ति** और **खाता** **समाप्ति** Azure AD में **समन्वयित नहीं होते**। इसलिए, एक उपयोगकर्ता जिसका **ऑन-प्रिम पासवर्ड समाप्त हो गया है** (बदला नहीं गया) वह पुराने पासवर्ड का उपयोग करके **Azure संसाधनों** तक पहुँच जारी रख सकता है।
|
||||
**Hashes synchronization** हर **2 minutes** पर होता है। लेकिन, डिफ़ॉल्ट रूप से, **password expiry** और **account expiry** Azure AD में **sync** नहीं होते। इसलिए, यदि किसी उपयोगकर्ता का **on-prem password expired** है (बिना बदले) तो वह पुराने पासवर्ड का उपयोग करके Azure resources तक पहुँचना जारी रख सकता है।
|
||||
|
||||
जब एक ऑन-प्रिम उपयोगकर्ता Azure संसाधन तक पहुँच प्राप्त करना चाहता है, तो **प्रमाणीकरण Azure AD पर होता है**।
|
||||
जब कोई on-prem उपयोगकर्ता किसी Azure resource तक पहुँचने की कोशिश करता है, तो **authentication Azure AD पर होता है**।
|
||||
|
||||
> [!NOTE]
|
||||
> डिफ़ॉल्ट रूप से, ज्ञात विशेषाधिकार समूहों के उपयोगकर्ता जैसे डोमेन प्रशासक जिनका गुण **`adminCount` 1 है,** सुरक्षा कारणों से Entra ID के साथ **समन्वयित नहीं होते**। हालाँकि, अन्य उपयोगकर्ता जो इस गुण के बिना विशेषाधिकार समूहों का हिस्सा हैं या जिन्हें सीधे उच्च विशेषाधिकार सौंपे गए हैं, **समन्वयित किए जा सकते हैं**।
|
||||
> डिफ़ॉल्ट रूप से Domain Admins जैसे ज्ञात privileged groups के उपयोगकर्ता जिनका attribute **`adminCount` to 1** है, सुरक्षा कारणों से Entra ID के साथ synchronize नहीं किए जाते। हालांकि, अन्य उपयोगकर्ता जो privileged groups का हिस्सा नहीं हैं या जिन्हें सीधे उच्च privileges असाइन किए गए हैं वे **synchronized** हो सकते हैं।
|
||||
|
||||
|
||||
### Password Writeback
|
||||
|
||||
यह कॉन्फ़िगरेशन **Entra ID से AD में पासवर्ड को समन्वयित करने** की अनुमति देता है जब एक उपयोगकर्ता Entra ID में अपना पासवर्ड बदलता है। ध्यान दें कि पासवर्ड राइटबैक कार्य करने के लिए AD में स्वचालित रूप से उत्पन्न `MSOL_<id>` उपयोगकर्ता को [दस्तावेज़ में निर्दिष्ट अधिक विशेषाधिकार](https://learn.microsoft.com/en-us/entra/identity/authentication/tutorial-enable-sspr-writeback) दिए जाने की आवश्यकता है ताकि वह **AD में किसी भी उपयोगकर्ता के पासवर्ड को संशोधित कर सके**।
|
||||
यह configuration Entra ID से AD में passwords को synchronize करने की अनुमति देती है जब कोई उपयोगकर्ता Entra ID में अपना पासवर्ड बदलता है। ध्यान दें कि password writeback काम करने के लिए AD में automatic रूप से जनरेट हुआ `MSOL_<id>` user docs में बताए गए [अधिक privileges को प्रदान](https://learn.microsoft.com/en-us/entra/identity/authentication/tutorial-enable-sspr-writeback) करना आवश्यक है ताकि वह AD में किसी भी उपयोगकर्ता के पासवर्ड को **modify** कर सके।
|
||||
|
||||
यह विशेष रूप से एक समझौता किए गए Entra ID से AD को समझौता करने के लिए दिलचस्प है क्योंकि आप "लगभग" किसी भी उपयोगकर्ता का पासवर्ड बदलने में सक्षम होंगे।
|
||||
यह विशेष रूप से महत्वपूर्ण है अगर Entra ID compromet हो जाए — आप AD को compromize करने के लिए "लगभग" किसी भी उपयोगकर्ता का पासवर्ड बदल सकेंगे।
|
||||
|
||||
डोमेन प्रशासक और कुछ विशेषाधिकार समूहों से संबंधित अन्य उपयोगकर्ता पुनरुत्पादित नहीं होते यदि समूह का **`adminCount` गुण 1 है**। लेकिन अन्य उपयोगकर्ता जिन्होंने AD के अंदर उच्च विशेषाधिकार प्राप्त किए हैं बिना किसी ऐसे समूह का हिस्सा बने, उनके पासवर्ड को बदला जा सकता है। उदाहरण के लिए:
|
||||
Domain admins और कुछ privileged groups के अन्य उपयोगकर्ता replicate नहीं होते यदि समूह का **`adminCount` attribute to 1** है। लेकिन अन्य उपयोगकर्ता जिनको AD के अंदर उच्च privileges सीधे असाइन किए गए हैं या जो किसी उन समूहों का हिस्सा नहीं हैं, उनके पासवर्ड बदले जा सकते हैं। उदाहरण के लिए:
|
||||
|
||||
- सीधे उच्च विशेषाधिकार वाले उपयोगकर्ता।
|
||||
- **`DNSAdmins`** समूह के उपयोगकर्ता।
|
||||
- **`Group Policy Creator Owners`** समूह के उपयोगकर्ता जिन्होंने GPO बनाए हैं और उन्हें OUs पर सौंपा है, वे अपने द्वारा बनाए गए GPO को संशोधित करने में सक्षम होंगे।
|
||||
- **`Cert Publishers Group`** के उपयोगकर्ता जो Active Directory में प्रमाणपत्र प्रकाशित कर सकते हैं।
|
||||
- किसी अन्य समूह के उपयोगकर्ता जिनके पास **`adminCount` गुण 1 नहीं है**।
|
||||
- सीधे high privileges असाइन किए गए users।
|
||||
- **`DNSAdmins`** group के users।
|
||||
- **`Group Policy Creator Owners`** group के users जिन्होंने GPOs बनाये और उन्हें OUs पर असाइन किया, वे अपने बनाए GPOs में परिवर्तन कर सकेंगे।
|
||||
- **`Cert Publishers Group`** के users जो Active Directory में certificates publish कर सकते हैं।
|
||||
- किसी भी अन्य group के users जिनके पास high privileges हैं और जिनके पास **`adminCount` attribute to 1** नहीं है।
|
||||
|
||||
## Pivoting AD --> Entra ID
|
||||
|
||||
@@ -76,23 +80,23 @@ $searcher.FindAll()
|
||||
$searcher.Filter = "(samAccountName=Sync_*)"
|
||||
$searcher.FindAll()
|
||||
```
|
||||
**Connect Sync कॉन्फ़िगरेशन** की जाँच करें (यदि कोई हो):
|
||||
**Connect Sync configuration** के लिए जाँच करें (यदि कोई हो):
|
||||
```bash
|
||||
az rest --url "https://graph.microsoft.com/v1.0/directory/onPremisesSynchronization"
|
||||
# Check if password sychronization is enabled, if password and group writeback are enabled...
|
||||
```
|
||||
### पासवर्ड ढूंढना
|
||||
### Finding the passwords
|
||||
|
||||
**`MSOL_*`** उपयोगकर्ता (और यदि बनाया गया हो तो **Sync\_\*** उपयोगकर्ता) के पासवर्ड **SQL सर्वर में संग्रहीत होते हैं** उस सर्वर पर जहां **Entra ID Connect स्थापित है।** व्यवस्थापक उन विशेषाधिकार प्राप्त उपयोगकर्ताओं के पासवर्ड को स्पष्ट पाठ में निकाल सकते हैं।\
|
||||
डेटाबेस `C:\Program Files\Microsoft Azure AD Sync\Data\ADSync.mdf` में स्थित है।
|
||||
`MSOL_*` उपयोगकर्ता (और यदि बनाया गया हो तो `Sync\_\*` उपयोगकर्ता) के पासवर्ड उन सर्वरों पर एक SQL server में संग्रहीत होते हैं जहाँ Entra ID Connect इंस्टॉल है। प्रशासक उन उच्च-प्राधिकृत उपयोगकर्ताओं के पासवर्ड clear-text में निकाल सकते हैं.\
|
||||
डेटाबेस स्थित है: `C:\Program Files\Microsoft Azure AD Sync\Data\ADSync.mdf`.
|
||||
|
||||
एक टेबल से कॉन्फ़िगरेशन निकालना संभव है, जिसमें एक एन्क्रिप्टेड है:
|
||||
तालिकाओं में से एक से कॉन्फ़िगरेशन निकाला जा सकता है, जिसमें से एक एन्क्रिप्टेड है:
|
||||
|
||||
`SELECT private_configuration_xml, encrypted_configuration FROM mms_management_agent;`
|
||||
|
||||
**एन्क्रिप्टेड कॉन्फ़िगरेशन** **DPAPI** के साथ एन्क्रिप्ट किया गया है और इसमें **`MSOL_*`** उपयोगकर्ता के पासवर्ड ऑन-प्रेम AD में और **Sync\_\*** का पासवर्ड AzureAD में शामिल है। इसलिए, इनका समझौता करना AD और AzureAD में प्रिवेस्क करने के लिए संभव है।
|
||||
**encrypted configuration** DPAPI से एन्क्रिप्टेड है और इसमें on-prem AD में `MSOL_*` उपयोगकर्ता के पासवर्ड और AzureAD में `Sync\_\*` का पासवर्ड शामिल है। इसलिए, इन्हें समझौता करने पर AD और AzureAD में privesc संभव है।
|
||||
|
||||
आप [इस वार्ता में इन क्रेडेंशियल्स को कैसे संग्रहीत और डिक्रिप्ट किया जाता है, इसका पूरा अवलोकन पा सकते हैं](https://www.youtube.com/watch?v=JEIR5oGCwdg)。
|
||||
इन क्रेडेंशियल्स के कैसे स्टोर और डिक्रिप्ट किए जाते हैं इसका [पूरा अवलोकन इस टॉक में पाया जा सकता है](https://www.youtube.com/watch?v=JEIR5oGCwdg).
|
||||
|
||||
### MSOL\_\* का दुरुपयोग
|
||||
```bash
|
||||
@@ -112,34 +116,35 @@ runas /netonly /user:defeng.corp\MSOL_123123123123 cmd
|
||||
Invoke-Mimikatz -Command '"lsadump::dcsync /user:domain\krbtgt /domain:domain.local /dc:dc.domain.local"'
|
||||
```
|
||||
> [!WARNING]
|
||||
> पिछले हमलों ने अन्य पासवर्ड को समझौता किया ताकि `Sync_*` नाम के Entra ID उपयोगकर्ता से कनेक्ट किया जा सके और फिर Entra ID को समझौता किया जा सके। हालांकि, यह उपयोगकर्ता अब मौजूद नहीं है।
|
||||
> पिछले हमलों में दूसरे पासवर्ड को समझौता करके `Sync_*` नाम के Entra ID उपयोगकर्ता से कनेक्ट कर के फिर Entra ID को समझौता किया गया था। हालांकि, यह उपयोगकर्ता अब मौजूद नहीं है।
|
||||
|
||||
### Abusing ConnectSyncProvisioning_ConnectSync\_<id>
|
||||
|
||||
यह एप्लिकेशन बिना किसी Entra ID या Azure प्रबंधन भूमिकाओं के असाइन किए बिना बनाया गया है। हालांकि, इसमें निम्नलिखित API अनुमतियाँ हैं:
|
||||
### दुरुपयोग ConnectSyncProvisioning_ConnectSync\_<id>
|
||||
|
||||
यह application बिना किसी Entra ID या Azure management roles नियुक्त किए बनाया गया है। हालांकि, इसके पास निम्नलिखित API permissions हैं:
|
||||
|
||||
- Microsoft Entra AD Synchronization Service
|
||||
- `ADSynchronization.ReadWrite.All`
|
||||
- Microsoft पासवर्ड रीसेट सेवा
|
||||
- Microsoft password reset service
|
||||
- `PasswordWriteback.OffboardClient.All`
|
||||
- `PasswordWriteback.RefreshClient.All`
|
||||
- `PasswordWriteback.RegisterClientVersion.All`
|
||||
|
||||
यह उल्लेख किया गया है कि इस एप्लिकेशन का SP अभी भी एक undocumented API का उपयोग करके कुछ विशेषाधिकार प्राप्त क्रियाएँ करने के लिए उपयोग किया जा सकता है, लेकिन अभी तक कोई PoC नहीं मिला है।\
|
||||
किसी भी मामले में, यह सोचते हुए कि यह संभव हो सकता है, यह और अधिक खोजने में दिलचस्पी होगी कि इस सेवा प्रिंसिपल के रूप में लॉगिन करने के लिए प्रमाणपत्र कैसे खोजें और इसका दुरुपयोग करने का प्रयास करें।
|
||||
बताया गया है कि इस application's SP का उपयोग undocumented API का उपयोग करके अभी भी कुछ privileged actions करने के लिए किया जा सकता है, लेकिन मेरे जानकारी के अनुसार अभी तक कोई PoC नहीं मिला है।\
|
||||
किसी भी स्थिति में, यह संभव हो सकता है इसलिए यह जानना रोचक होगा कि इस service principal के रूप में लॉगिन करने के लिए certificate कैसे खोजें और इसे दुरुपयोग करने की कोशिश करें।
|
||||
|
||||
इस [ब्लॉग पोस्ट](https://posts.specterops.io/update-dumping-entra-connect-sync-credentials-4a9114734f71) ने `Sync_*` उपयोगकर्ता से इस सेवा प्रिंसिपल में परिवर्तन करने से पहले जल्दी ही जारी किया, जिसमें बताया गया कि प्रमाणपत्र सर्वर के अंदर संग्रहीत था और इसे खोजना, इसका PoP (Proof of Possession) उत्पन्न करना और ग्राफ़ टोकन प्राप्त करना संभव था, और इसके साथ, सेवा प्रिंसिपल में एक नया प्रमाणपत्र जोड़ने में सक्षम होना (क्योंकि एक **सेवा प्रिंसिपल** हमेशा अपने लिए नए प्रमाणपत्र असाइन कर सकता है) और फिर इसे SP के रूप में स्थिरता बनाए रखने के लिए उपयोग करना।
|
||||
यह [blog post](https://posts.specterops.io/update-dumping-entra-connect-sync-credentials-4a9114734f71) जो `Sync_*` user से इस service principal में परिवर्तन के तुरंत बाद प्रकाशित हुआ, ने बताया कि certificate सर्वर के अंदर स्टोर था और उसे ढूँढना, उससे PoP (Proof of Possession) और graph token जनरेट करना संभव था, और इसके साथ service principal में नया certificate जोड़ना भी संभव था (क्योंकि एक **service principal** हमेशा अपने आप को नए certificates असाइन कर सकता है) और फिर इसे SP के रूप में persistence बनाए रखने के लिए उपयोग किया जा सकता था।
|
||||
|
||||
इन क्रियाओं को करने के लिए, निम्नलिखित उपकरण प्रकाशित किए गए हैं: [SharpECUtils](https://github.com/hotnops/ECUtilities/tree/main/SharpECUtils)।
|
||||
इन क्रियाओं को करने के लिए, निम्न tools प्रकाशित किए गए हैं: [SharpECUtils](https://github.com/hotnops/ECUtilities/tree/main/SharpECUtils).
|
||||
|
||||
मेरे अनुभव में, प्रमाणपत्र अब उस स्थान पर संग्रहीत नहीं है जहाँ पिछले उपकरण ने इसे खोजने की कोशिश की थी, और इसलिए, उपकरण अब काम नहीं करता है। इसलिए आगे की खोज की आवश्यकता हो सकती है।
|
||||
इस प्रश्न के अनुसार, certificate खोजने के लिए, आपको उस process से tool चलाना होगा जिसने **`miiserver` process का token चोरी कर लिया है**।
|
||||
|
||||
### Abusing Sync\_\* [DEPRECATED]
|
||||
### दुरुपयोग Sync\_\* [DEPRECATED]
|
||||
|
||||
> [!WARNING]
|
||||
> पहले एक उपयोगकर्ता `Sync_*` नाम से Entra ID में बहुत संवेदनशील अनुमतियों के साथ बनाया गया था, जिसने किसी भी उपयोगकर्ता का पासवर्ड संशोधित करने या सेवा प्रिंसिपल में एक नया क्रेडेंशियल जोड़ने जैसी विशेषाधिकार प्राप्त क्रियाएँ करने की अनुमति दी। हालांकि, जनवरी 2025 से यह उपयोगकर्ता अब डिफ़ॉल्ट रूप से नहीं बनाया जाता है क्योंकि अब एप्लिकेशन/SP **`ConnectSyncProvisioning_ConnectSync_<id>`** का उपयोग किया जाता है। हालांकि, यह अभी भी कुछ वातावरण में मौजूद हो सकता है, इसलिए इसकी जांच करना उचित है।
|
||||
> पहले Entra ID में `Sync_*` नाम का एक उपयोगकर्ता बनाया जाता था जिसे बहुत संवेदनशील permissions दिए गए थे, जिससे किसी भी उपयोगकर्ता का पासवर्ड बदलने या किसी service principal में नया credential जोड़ने जैसे privileged actions करना संभव था। हालांकि, Jan2025 से यह उपयोगकर्ता डिफ़ॉल्ट रूप से अब नहीं बनाया जाता क्योंकि अब Application/SP **`ConnectSyncProvisioning_ConnectSync_<id>`** का उपयोग किया जाता है। फिर भी, यह कुछ environments में मौजूद हो सकता है, इसलिए इसकी जाँच करना उपयोगी है।
|
||||
|
||||
**`Sync_*`** खाते को समझौता करना किसी भी उपयोगकर्ता (जिसमें Global Administrators शामिल हैं) का **पासवर्ड रीसेट** करना संभव बनाता है।
|
||||
**`Sync_*`** खाते को समझौता करने पर किसी भी उपयोगकर्ता (including Global Administrators) का **पासवर्ड रीसेट** करना संभव है।
|
||||
```bash
|
||||
Install-Module -Name AADInternals -RequiredVersion 0.9.0 # Uninstall-Module AADInternals if you have a later version
|
||||
Import-Module AADInternals
|
||||
@@ -163,7 +168,7 @@ Set-AADIntUserPassword -SourceAnchor "3Uyg19ej4AHDe0+3Lkc37Y9=" -Password "JustA
|
||||
|
||||
# Now it's possible to access Azure AD with the new password and op-prem with the old one (password changes aren't sync)
|
||||
```
|
||||
यह भी संभव है कि केवल **क्लाउड** उपयोगकर्ताओं के पासवर्ड को संशोधित किया जाए (भले ही यह अप्रत्याशित हो)।
|
||||
यह भी संभव है कि **केवल cloud उपयोगकर्ताओं के पासवर्ड बदल दिए जाएं** (भले ही यह अप्रत्याशित हो)
|
||||
```bash
|
||||
# To reset the password of cloud only user, we need their CloudAnchor that can be calculated from their cloud objectID
|
||||
# The CloudAnchor is of the format USER_ObjectID.
|
||||
@@ -172,14 +177,14 @@ Get-AADIntUsers | ?{$_.DirSyncEnabled -ne "True"} | select UserPrincipalName,Obj
|
||||
# Reset password
|
||||
Set-AADIntUserPassword -CloudAnchor "User_19385ed9-sb37-c398-b362-12c387b36e37" -Password "JustAPass12343.%" -Verbosewers
|
||||
```
|
||||
इस उपयोगकर्ता का पासवर्ड डंप करना भी संभव है।
|
||||
इस user का पासवर्ड dump करना भी संभव है।
|
||||
|
||||
> [!CAUTION]
|
||||
> एक और विकल्प होगा **एक सेवा प्रमुख को विशेषाधिकार प्राप्त अनुमतियाँ सौंपना**, जिसे **Sync** उपयोगकर्ता **अनुमतियाँ** देने के लिए सक्षम है, और फिर **उस सेवा प्रमुख तक पहुँच प्राप्त करना** प्रिवेस्क के एक तरीके के रूप में।
|
||||
> एक और विकल्प होगा **service principal को privileged permissions असाइन करना**, जिसे **Sync** user के पास करने की **permissions** है, और फिर **उस service principal तक access करना** privesc के एक तरीके के रूप में।
|
||||
|
||||
### Seamless SSO
|
||||
|
||||
Seamless SSO को PHS के साथ उपयोग करना संभव है, जो अन्य दुरुपयोगों के प्रति संवेदनशील है। इसे जांचें:
|
||||
Seamless SSO को PHS के साथ उपयोग करना संभव है, जो अन्य दुरुपयोगों के लिए संवेदनशील है। इसे जांचें:
|
||||
|
||||
{{#ref}}
|
||||
az-seamless-sso.md
|
||||
@@ -187,10 +192,10 @@ az-seamless-sso.md
|
||||
|
||||
## Pivoting Entra ID --> AD
|
||||
|
||||
- यदि पासवर्ड राइटबैक सक्षम है, तो आप **AD में किसी भी उपयोगकर्ता का पासवर्ड संशोधित कर सकते हैं** जो Entra ID के साथ समन्वयित है।
|
||||
- यदि समूह राइटबैक सक्षम है, तो आप **Entra ID में विशेषाधिकार प्राप्त समूहों में उपयोगकर्ताओं को जोड़ सकते हैं** जो AD के साथ समन्वयित हैं।
|
||||
- यदि password writeback सक्षम है, तो आप **Entra ID के साथ सिंक्रोनाइज़ किए गए AD में किसी भी user का पासवर्ड बदल सकते हैं।**
|
||||
- यदि groups writeback सक्षम है, तो आप **Entra ID में AD के साथ सिंक्रोनाइज़ किए गए privileged groups में उपयोगकर्ताओं को जोड़ सकते हैं।**
|
||||
|
||||
## References
|
||||
## संदर्भ
|
||||
|
||||
- [https://learn.microsoft.com/en-us/azure/active-directory/hybrid/whatis-phs](https://learn.microsoft.com/en-us/azure/active-directory/hybrid/whatis-phs)
|
||||
- [https://aadinternals.com/post/on-prem_admin/](https://aadinternals.com/post/on-prem_admin/)
|
||||
|
||||
Reference in New Issue
Block a user