Translated ['', 'src/pentesting-cloud/azure-security/az-lateral-movement

This commit is contained in:
Translator
2025-08-25 21:25:45 +00:00
parent ff53cdf5f1
commit dead522a02
@@ -2,57 +2,61 @@
{{#include ../../../banners/hacktricks-training.md}}
## Basic Information
## Βασικές Πληροφορίες
[Από τα έγγραφα:](https://learn.microsoft.com/en-us/entra/identity/hybrid/connect/how-to-connect-sync-whatis) Οι υπηρεσίες συγχρονισμού Microsoft Entra Connect (Microsoft Entra Connect Sync) είναι ένα κύριο συστατικό του Microsoft Entra Connect. Φροντίζει για όλες τις λειτουργίες που σχετίζονται με τη συγχρονισμό δεδομένων ταυτότητας μεταξύ του τοπικού σας περιβάλλοντος και του Microsoft Entra ID.
[Από τα 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.
Η υπηρεσία sync αποτελείται από δύο συστατικά, το on-premises **Microsoft Entra Connect Sync** component και το service side στο Microsoft Entra ID που ονομάζεται **Microsoft Entra Connect Sync service**.
Για να τη χρησιμοποιήσετε, χρειάζεται να εγκαταστήσετε τον agent **`Microsoft Entra Connect Sync`** σε έναν server εντός του AD περιβάλλοντός σας. Αυτός ο agent θα είναι υπεύθυνος για το συγχρονισμό από την πλευρά του AD.
Για να το χρησιμοποιήσετε, είναι απαραίτητο να εγκαταστήσετε τον **`Microsoft Entra Connect Sync`** πράκτορα σε έναν διακομιστή μέσα στο περιβάλλον AD σας. Αυτός ο πράκτορας θα είναι υπεύθυνος για τη συγχρονισμό από την πλευρά του AD.
<figure><img src="../../../../images/image (173).png" alt=""><figcaption></figcaption></figure>
Ο **Connect Sync** είναι βασικά ο "παλιός" τρόπος του Azure για **να συγχρονίσει χρήστες από το AD στο Entra ID.** Ο νέος προτεινόμενος τρόπος είναι να χρησιμοποιήσετε το **Entra Cloud Sync**:
Το **Connect Sync** είναι βασικά ο "παλιός" τρόπος του Azure για να **synchronize users from AD into Entra ID.** Ο νέος προτεινόμενος τρόπος είναι να χρησιμοποιήσετε το **Entra Cloud Sync**:
{{#ref}}
az-cloud-sync.md
{{#endref}}
### Principals Generated
### Principals που δημιουργούνται
- Ο λογαριασμός **`MSOL_<installationID>`** δημιουργείται αυτόματα στο τοπικό AD. Αυτός ο λογαριασμός έχει ρόλο **Directory Synchronization Accounts** (βλ. [τεκμηρίωση](https://docs.microsoft.com/en-us/azure/active-directory/users-groups-roles/directory-assign-admin-roles#directory-synchronization-accounts-permissions)) που σημαίνει ότι έχει **δικαιώματα αναπαραγωγής (DCSync) στο τοπικό AD**.
- Αυτό σημαίνει ότι οποιοσδήποτε συμβιβάσει αυτόν τον λογαριασμό θα μπορεί να συμβιβάσει το τοπικό domain.
- Ένας διαχειριζόμενος λογαριασμός υπηρεσίας **`ADSyncMSA<id>`** δημιουργείται στο τοπικό AD χωρίς ειδικά προνόμια από προεπιλογή.
- Στο Entra ID, ο Service Principal **`ConnectSyncProvisioning_ConnectSync_<id>`** δημιουργείται με ένα πιστοποιητικό.
- Ο λογαριασμός **`MSOL_<installationID>`** δημιουργείται αυτόματα στο on-prem 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)) που σημαίνει ότι έχει **replication (DCSync) permissions στο on-prem AD**.
- Αυτό σημαίνει ότι όποιος παραβιάσει αυτόν τον λογαριασμό θα μπορεί να παραβιάσει το on-premise domain.
- Ένας managed service account **`ADSyncMSA<id>`** δημιουργείται στο on-prem AD χωρίς ειδικά προεπιλεγμένα προνόμια.
- Στο Entra ID δημιουργείται το Service Principal **`ConnectSyncProvisioning_ConnectSync_<id>`** με πιστοποιητικό.
## Synchronize Passwords
## Συγχρονισμός Κωδικών
### Password Hash Synchronization
Αυτό το συστατικό μπορεί επίσης να χρησιμοποιηθεί για **να συγχρονίσει τους κωδικούς πρόσβασης από το AD στο Entra ID** ώστε οι χρήστες να μπορούν να χρησιμοποιούν τους κωδικούς πρόσβασης του AD για να συνδεθούν στο Entra ID. Για αυτό, είναι απαραίτητο να επιτραπεί ο συγχρονισμός κωδικών πρόσβασης στο Microsoft Entra Connect Sync agent που είναι εγκατεστημένος σε έναν διακομιστή AD.
Αυτό το component μπορεί επίσης να χρησιμοποιηθεί για να **sychronize passwords from AD into Entra ID** ώστε οι χρήστες να μπορούν να χρησιμοποιούν τους AD κωδικούς τους για να συνδεθούν στο Entra ID. Για αυτό χρειάζεται να επιτρέψετε το password hash synchronization στον Microsoft Entra Connect Sync agent που είναι εγκατεστημένος σε έναν AD server.
[Από τα έγγραφα:](https://learn.microsoft.com/en-us/entra/identity/hybrid/connect/whatis-phs) Ο **συγχρονισμός κωδικών πρόσβασης** είναι μία από τις μεθόδους σύνδεσης που χρησιμοποιούνται για να επιτευχθεί η υβριδική ταυτότητα. Ο **Azure AD Connect** συγχρονίζει ένα hash, του hash, του κωδικού πρόσβασης ενός χρήστη από μια τοπική Active Directory εγκατάσταση σε μια cloud-based Azure AD εγκατάσταση.
[Από τα docs:](https://learn.microsoft.com/en-us/entra/identity/hybrid/connect/whatis-phs) **Password hash synchronization** είναι μία από τις μεθόδους σύνδεσης που χρησιμοποιούνται για την επίτευξη hybrid identity. **Azure AD Connect** συγχρονίζει ένα hash, του hash, του κωδικού ενός χρήστη από μια on-premises Active Directory εγκατάσταση σε μια cloud-based Azure AD εγκατάσταση.
Βασικά, όλοι οι **χρήστες** και ένα **hash των κωδικών πρόσβασης** συγχρονίζονται από το τοπικό στο Azure AD. Ωστόσο, οι **κωδικοί πρόσβασης σε καθαρό κείμενο** ή οι **αρχικοί** **hashes** δεν αποστέλλονται στο Azure AD.
Βασικά, όλοι οι **users** και ένα **hash of the password hashes** συγχρονίζονται από το on-prem προς το Azure AD. Ωστόσο, **clear-text passwords** ή τα **original hashes** δεν αποστέλλονται στο Azure AD.
Ο **συγχρονισμός hashes** συμβαίνει κάθε **2 λεπτά**. Ωστόσο, από προεπιλογή, η **λήξη κωδικού πρόσβασης** και η **λήξη λογαριασμού** **δεν συγχρονίζονται** στο Azure AD. Έτσι, ένας χρήστης του οποίου ο **τοπικός κωδικός πρόσβασης έχει λήξει** (δεν έχει αλλάξει) μπορεί να συνεχίσει να **έχει πρόσβαση σε πόρους Azure** χρησιμοποιώντας τον παλιό κωδικό πρόσβασης.
Ο **συγχρονισμός των hashes** γίνεται κάθε **2 λεπτά**. Παρ' όλα αυτά, από προεπιλογή, το **password expiry** και το **account expiry** **δεν συγχρονίζονται** στο Azure AD. Έτσι, ένας χρήστης του οποίου ο **on-prem κωδικός έχει λήξει** (δεν έχει αλλάξει) μπορεί να συνεχίσει να **έχει πρόσβαση σε Azure resources** χρησιμοποιώντας τον παλιό κωδικό.
Όταν ένας τοπικός χρήστης θέλει να έχει πρόσβαση σε έναν πόρο Azure, η **αυθεντικοποίηση πραγματοποιείται στο Azure AD**.
Όταν ένας on-prem χρήστης θέλει να έχει πρόσβαση σε ένα Azure resource, η **authentication γίνεται στο Azure AD**.
> [!NOTE]
> Από προεπιλογή, οι χρήστες γνωστών προνομιακών ομάδων όπως οι Domain Admins με το χαρακτηριστικό **`adminCount` σε 1 δεν συγχρονίζονται** με το Entra ID για λόγους ασφαλείας. Ωστόσο, άλλοι χρήστες που είναι μέλη προνομιακών ομάδων χωρίς αυτό το χαρακτηριστικό ή που έχουν ανατεθεί υψηλά προνόμια απευθείας **μπορούν να συγχρονιστούν**.
> Από προεπιλογή χρήστες γνωστών privileged groups όπως οι Domain Admins με το attribute **`adminCount` σε 1 δεν συγχρονίζονται** με το Entra ID για λόγους ασφαλείας. Ωστόσο, άλλοι χρήστες που είναι μέλη privileged groups χωρίς αυτό το attribute ή που τους έχουν εκχωρηθεί υψηλά προνόμια απευθείας **μπορούν να συγχρονιστούν**.
### Password Writeback
Αυτή η ρύθμιση επιτρέπει να **συγχρονιστούν οι κωδικοί πρόσβασης από το Entra ID στο AD** όταν ένας χρήστης αλλάζει τον κωδικό πρόσβασής του στο Entra ID. Σημειώστε ότι για να λειτουργήσει η εγγραφή κωδικού πρόσβασης, ο χρήστης `MSOL_<id>` που δημιουργείται αυτόματα στο AD πρέπει να του παραχωρηθούν [περισσότερα προνόμια όπως αναφέρεται στα έγγραφα](https://learn.microsoft.com/en-us/entra/identity/authentication/tutorial-enable-sspr-writeback) ώστε να μπορεί να **τροποποιήσει τους κωδικούς πρόσβασης οποιουδήποτε χρήστη στο AD**.
Αυτή η ρύθμιση επιτρέπει να **sychronize passwords from Entra ID into AD** όταν ένας χρήστης αλλάζει τον κωδικό του στο Entra ID. Σημειώστε ότι για να λειτουργήσει το password writeback, ο χρήστης `MSOL_<id>` που δημιουργείται αυτόματα στο AD πρέπει να του δοθούν [περισσότερα προνόμια όπως υποδεικνύεται στα docs](https://learn.microsoft.com/en-us/entra/identity/authentication/tutorial-enable-sspr-writeback) ώστε να μπορεί να **modify the passwords of any user in the AD**.
Αυτό είναι ιδιαίτερα ενδιαφέρον για να συμβιβάσετε το AD από ένα συμβιβασμένο Entra ID, καθώς θα μπορείτε να τροποποιήσετε τον κωδικό πρόσβασης "σχεδόν" οποιουδήποτε χρήστη.
Αυτό είναι ιδιαίτερα ενδιαφέρον για την παραβίαση του AD από ένα παραβιασμένο Entra ID, καθώς θα μπορείτε να αλλάξετε τον κωδικό "σχεδόν" οποιουδήποτε χρήστη.
Οι διαχειριστές τομέα και άλλοι χρήστες που ανήκουν σε ορισμένες προνομιακές ομάδες δεν αναπαράγονται αν η ομάδα έχει το χαρακτηριστικό **`adminCount` σε 1**. Αλλά άλλοι χρήστες που έχουν ανατεθεί υψηλά προνόμια μέσα στο AD χωρίς να ανήκουν σε καμία από αυτές τις ομάδες θα μπορούσαν να έχουν τον κωδικό πρόσβασής τους αλλάξει. Για παράδειγμα:
Οι Domain admins και άλλοι χρήστες που ανήκουν σε ορισμένες privileged groups δεν αναπαράγονται αν η ομάδα έχει το **`adminCount` attribute σε 1**. Αλλά άλλοι χρήστες που έχουν εκχωρηθεί υψηλά προνόμια μέσα στο AD χωρίς να ανήκουν σε αυτές τις ομάδες μπορούν να έχουν τον κωδικό τους αλλάξει. Για παράδειγμα:
- Χρήστες που έχουν ανατεθεί υψηλά προνόμια απευθείας.
- Χρήστες που τους έχουν εκχωρηθεί υψηλά privileges απευθείας.
- Χρήστες από την ομάδα **`DNSAdmins`**.
- Χρήστες από την ομάδα **`Group Policy Creator Owners`** που έχουν δημιουργήσει GPOs και τους έχουν αναθέσει σε OUs θα μπορούν να τροποποιήσουν τα GPOs που δημιούργησαν.
- Χρήστες από την **`Cert Publishers Group`** που μπορούν να δημοσιεύσουν πιστοποιητικά στο Active Directory.
- Χρήστες οποιασδήποτε άλλης ομάδας με υψηλά προνόμια χωρίς το χαρακτηριστικό **`adminCount` σε 1**.
- Χρήστες από την ομάδα **`Group Policy Creator Owners`** που έχουν δημιουργήσει GPOs και τα έχουν εφαρμόσει σε OUs θα μπορούν να τροποποιούν τα GPOs που δημιούργησαν.
- Χρήστες από την ομάδα **`Cert Publishers Group`** που μπορούν να δημοσιεύουν πιστοποιητικά στο Active Directory.
- Χρήστες οποιασδήποτε άλλης ομάδας με υψηλά προνόμια χωρίς το **`adminCount` attribute σε 1**.
## Pivoting AD --> Entra ID
@@ -76,23 +80,23 @@ $searcher.FindAll()
$searcher.Filter = "(samAccountName=Sync_*)"
$searcher.FindAll()
```
Ελέγξτε για τη **διαμόρφωση Connect Sync** (αν υπάρχει):
Ελέγξτε για την **ρύθμιση του Connect Sync** (αν υπάρχει):
```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...
```
### Εύρεση των κωδικών πρόσβασης
### Εύρεση των passwords
Οι κωδικοί πρόσβασης του **`MSOL_*`** χρήστη (και του **Sync\_\*** χρήστη αν έχει δημιουργηθεί) είναι **αποθηκευμένοι σε έναν SQL server** στον διακομιστή όπου είναι **εγκατεστημένο το Entra ID Connect.** Οι διαχειριστές μπορούν να εξάγουν τους κωδικούς πρόσβασης αυτών των προνομιακών χρηστών σε καθαρό κείμενο.\
Οι passwords του χρήστη **`MSOL_*`** (και του χρήστη **Sync\_\*** εάν δημιουργήθηκε) είναι **αποθηκευμένοι σε έναν SQL server** στον server όπου είναι εγκατεστημένο το **Entra ID Connect.** Οι Admins μπορούν να εξάγουν τους κωδικούς αυτών των privileged χρηστών σε clear-text.\
Η βάση δεδομένων βρίσκεται στο `C:\Program Files\Microsoft Azure AD Sync\Data\ADSync.mdf`.
Είναι δυνατή η εξαγωγή της διαμόρφωσης από έναν από τους πίνακες, με έναν κρυπτογραφημένο:
Είναι δυνατό να εξαχθεί η configuration από έναν από τους πίνακες, με τον έναν να είναι κρυπτογραφημένος:
`SELECT private_configuration_xml, encrypted_configuration FROM mms_management_agent;`
Η **κρυπτογραφημένη διαμόρφωση** είναι κρυπτογραφημένη με **DPAPI** και περιέχει τους **κωδικούς πρόσβασης του `MSOL_*`** χρήστη στο on-prem AD και τον κωδικό πρόσβασης του **Sync\_\*** στο AzureAD. Επομένως, η παραβίαση αυτών επιτρέπει την ανύψωση προνομίων στο AD και στο AzureAD.
Η **encrypted configuration** είναι κρυπτογραφημένη με **DPAPI** και περιέχει τους **passwords του χρήστη `MSOL_*`** στο on-prem AD και τον κωδικό του **Sync\_\*** στο AzureAD. Επομένως, παραβιάζοντάς τες είναι δυνατό να γίνει privesc στο AD και στο AzureAD.
Μπορείτε να βρείτε μια [πλήρη επισκόπηση του πώς αποθηκεύονται και αποκρυπτογραφούνται αυτά τα διαπιστευτήρια σε αυτή την ομιλία](https://www.youtube.com/watch?v=JEIR5oGCwdg).
Μπορείτε να βρείτε μια [πλήρη επισκόπηση του πώς αυτά τα credentials αποθηκεύονται και αποκρυπτογραφούνται σε αυτή την παρουσίαση](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]
> Προηγούμενες επιθέσεις έχουν παραβιάσει τον άλλο κωδικό πρόσβασης για να συνδεθούν στον χρήστη Entra ID που ονομάζεται `Sync_*` και στη συνέχεια να παραβιάσουν το Entra ID. Ωστόσο, αυτός ο χρήστης δεν υπάρχει πλέον.
> Προηγούμενες επιθέσεις υπέκλεψαν το άλλο password για να συνδεθούν στον χρήστη Entra ID με όνομα `Sync_*` και στη συνέχεια να παραβιάσουν το Entra ID. Ωστόσο, αυτός ο χρήστης δεν υπάρχει πλέον.
### Κατάχρηση ConnectSyncProvisioning_ConnectSync\_<id>
Αυτή η εφαρμογή δημιουργείται χωρίς να έχουν ανατεθεί ρόλοι διαχείρισης Entra ID ή Azure. Ωστόσο, έχει τις εξής άδειες API:
Αυτή η εφαρμογή δημιουργείται χωρίς να της έχουν ανατεθεί ρόλοι διαχείρισης Entra ID ή Azure. Ωστόσο, έχει τις ακόλουθες 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 αυτής της εφαρμογής μπορεί να χρησιμοποιηθεί για την εκτέλεση ορισμένων προνομιακών ενεργειών χρησιμοποιώντας μια μη τεκμηριωμένη API, αλλά δεν έχει βρεθεί ακόμη PoC, όσο γνωρίζω.\
Σε κάθε περίπτωση, σκεπτόμενοι ότι αυτό μπορεί να είναι δυνατό, θα ήταν ενδιαφέρον να εξερευνήσουμε περαιτέρω πώς να βρούμε το πιστοποιητικό για να συνδεθούμε ως αυτός ο υπηρεσιακός κύριος και να προσπαθήσουμε να το καταχραστούμε.
Αναφέρεται ότι το SP αυτής της εφαρμογής μπορεί ακόμα να χρησιμοποιηθεί για την εκτέλεση ορισμένων προνομιούχων ενεργειών χρησιμοποιώντας ένα undocumented API, αλλά προς το παρόν δεν έχει βρεθεί PoC όσο γνωρίζω.\
Σε κάθε περίπτωση, θεωρώντας ότι αυτό μπορεί να είναι δυνατό, θα ήταν ενδιαφέρον να διερευνηθεί περαιτέρω πώς να βρεθεί το certificate για να συνδεθεί ως αυτό το service principal και να επιχειρηθεί η κατάχρησή του.
Αυτή η [δημοσίευση στο blog](https://posts.specterops.io/update-dumping-entra-connect-sync-credentials-4a9114734f71) κυκλοφόρησε λίγο πριν την αλλαγή από τη χρήση του χρήστη `Sync_*` σε αυτόν τον υπηρεσιακό κύριο, εξήγησε ότι το πιστοποιητικό αποθηκευόταν μέσα στον διακομιστή και ήταν δυνατό να το βρούμε, να δημιουργήσουμε PoP (Proof of Possession) αυτού και γραφικό token, και με αυτό, να μπορέσουμε να προσθέσουμε ένα νέο πιστοποιητικό στον υπηρεσιακό κύριο (διότι ένας **υπηρεσιακός κύριος** μπορεί πάντα να αναθέτει νέα πιστοποιητικά στον εαυτό του) και στη συνέχεια να το χρησιμοποιήσουμε για να διατηρήσουμε την επιμονή ως SP.
Αυτό το [blog post](https://posts.specterops.io/update-dumping-entra-connect-sync-credentials-4a9114734f71) που κυκλοφόρησε σύντομα μετά την αλλαγή από τη χρήση του χρήστη `Sync_*` σε αυτό το service principal, εξήγησε ότι το certificate ήταν αποθηκευμένο μέσα στον server και ότι ήταν δυνατό να το βρει κανείς, να δημιουργήσει PoP (Proof of Possession) του και graph token, και με αυτά να μπορεί να προσθέσει ένα νέο certificate στο service principal (επειδή ένα **service principal** μπορεί πάντα να του αναθέσει νέα certificates) και στη συνέχεια να το χρησιμοποιήσει για να διατηρήσει persistence ως το SP.
Για να εκτελέσουμε αυτές τις ενέργειες, τα εξής εργαλεία είναι διαθέσιμα: [SharpECUtils](https://github.com/hotnops/ECUtilities/tree/main/SharpECUtils).
Για να εκτελεστούν αυτές οι ενέργειες, έχουν δημοσιευτεί τα ακόλουθα εργαλεία: [SharpECUtils](https://github.com/hotnops/ECUtilities/tree/main/SharpECUtils).
Από την εμπειρία μου, το πιστοποιητικό δεν αποθηκεύεται πλέον στο μέρος όπου το προηγούμενο εργαλείο το αναζητούσε, και επομένως, το εργαλείο δεν λειτουργεί πλέον. Έτσι, μπορεί να χρειαστεί περαιτέρω έρευνα.
Σύμφωνα με [this question](https://github.com/hotnops/ECUtilities/issues/1#issuecomment-3220989919), για να βρείτε το certificate πρέπει να τρέξετε το εργαλείο από μια διεργασία που έχει **κλέψει το token της διεργασίας `miiserver`**.
### Κατάχρηση Sync\_\* [ΑΠΟΚΛΕΙΣΜΕΝΟ]
### Κατάχρηση Sync\_\* [DEPRECATED]
> [!WARNING]
> Προηγουμένως, ένας χρήστης που ονομάζεται `Sync_*` είχε δημιουργηθεί στο Entra ID με πολύ ευαίσθητες άδειες, οι οποίες επέτρεπαν την εκτέλεση προνομιακών ενεργειών όπως η τροποποίηση του κωδικού πρόσβασης οποιουδήποτε χρήστη ή η προσθήκη νέας διαπιστευτηρίου σε έναν υπηρεσιακό κύριο. Ωστόσο, από τον Ιανουάριο του 2025, αυτός ο χρήστης δεν δημιουργείται πλέον από προεπιλογή καθώς τώρα χρησιμοποιείται η Εφαρμογή/SP **`ConnectSyncProvisioning_ConnectSync_<id>`**. Ωστόσο, μπορεί να είναι ακόμη παρών σε ορισμένα περιβάλλοντα, οπότε αξίζει να το ελέγξετε.
> Προηγουμένως δημιουργούνταν ένας χρήστης με όνομα `Sync_*` στο Entra ID με πολύ ευαίσθητες άδειες, που επέτρεπαν την εκτέλεση προνομιούχων ενεργειών όπως η τροποποίηση του password οποιουδήποτε χρήστη ή η προσθήκη νέου credential σε ένα service principal. Ωστόσο, από Jan2025 αυτός ο χρήστης δεν δημιουργείται πλέον από προεπιλογή, καθώς χρησιμοποιείται πλέον η Application/SP **`ConnectSyncProvisioning_ConnectSync_<id>`**. Παρ' όλα αυτά, μπορεί να υπάρχει ακόμα σε ορισμένα περιβάλλοντα, οπότε αξίζει να γίνει έλεγχος.
Η παραβίαση του λογαριασμού **`Sync_*`** είναι δυνατή για **επαναφορά του κωδικού πρόσβασης** οποιουδήποτε χρήστη (συμπεριλαμβανομένων των Παγκόσμιων Διαχειριστών)
Συμβιβάζοντας τον λογαριασμό **`Sync_*`** είναι δυνατό να **reset the password** οποιουδήποτε χρήστη (συμπεριλαμβανομένων των 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** (ακόμα και αν αυτό είναι απροσδόκητο)
Είναι επίσης δυνατό να **τροποποιηθούν οι κωδικοί πρόσβασης μόνο των 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
```
Είναι επίσης δυνατό να εκχυθεί ο κωδικός πρόσβασης αυτού του χρήστη.
Είναι επίσης δυνατό να dump το password αυτού του χρήστη.
> [!CAUTION]
> Μια άλλη επιλογή θα ήταν να **ανατεθούν προνομιακές άδειες σε έναν service principal**, τις οποίες έχει **δικαιώματα** να κάνει ο χρήστης **Sync**, και στη συνέχεια να **προσεγγιστεί αυτός ο service principal** ως τρόπος privesc.
> Μια άλλη επιλογή θα ήταν να **assign privileged permissions to a service principal**, την οποία ο **Sync** user έχει **permissions** να κάνει, και στη συνέχεια να **access that service principal** ως τρόπος privesc.
### Seamless SSO
Είναι δυνατό να χρησιμοποιηθεί το Seamless SSO με PHS, το οποίο είναι ευάλωτο σε άλλες καταχρήσεις. Ελέγξτε το εδώ:
Είναι δυνατό να χρησιμοποιηθεί Seamless SSO με PHS, το οποίο είναι ευάλωτο σε άλλες καταχρήσεις. Ελέγξτε το στο:
{{#ref}}
az-seamless-sso.md
@@ -187,8 +192,8 @@ az-seamless-sso.md
## Pivoting Entra ID --> AD
- Εάν η δυνατότητα επαναφοράς κωδικού πρόσβασης είναι ενεργοποιημένη, μπορείτε να **τροποποιήσετε τον κωδικό πρόσβασης οποιουδήποτε χρήστη στο AD** που συγχρονίζεται με το Entra ID.
- Εάν η δυνατότητα επαναφοράς ομάδων είναι ενεργοποιημένη, μπορείτε να **προσθέσετε χρήστες σε προνομιακές ομάδες** στο Entra ID που συγχρονίζονται με το AD.
- Αν το password writeback είναι ενεργοποιημένο, μπορείτε να **modify the password of any user in the AD** που είναι synchronized με το Entra ID.
- Αν το groups writeback είναι ενεργοποιημένο, μπορείτε να **add users to privileged groups** στο Entra ID που είναι synchronized με το AD.
## Αναφορές