mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-07-28 22:51:09 -07:00
Translated ['src/pentesting-cloud/azure-security/az-lateral-movement-clo
This commit is contained in:
+10
-10
@@ -15,14 +15,14 @@
|
||||
- Στο Entra ID, ο χρήστης `On-Premises Directory Synchronization Service Account` (`ADToAADSyncServiceAccount@carloshacktricks.onmicrosoft.com`) δημιουργείται με τον ρόλο **`Directory Synchronization Accounts`** (`d29b2b05-8046-44ba-8758-1e26182fcf32`).
|
||||
|
||||
> [!WARNING]
|
||||
> Αυτός ο ρόλος είχε πολλές προνομιακές άδειες και θα μπορούσε να χρησιμοποιηθεί για [**να κλιμακώσει προνόμια ακόμη και σε παγκόσμιο διαχειριστή**](https://medium.com/tenable-techblog/stealthy-persistence-with-directory-synchronization-accounts-role-in-entra-id-63e56ce5871b). Ωστόσο, η Microsoft αποφάσισε να αφαιρέσει όλα τα προνόμια αυτού του ρόλου και να του αναθέσει μόνο ένα νέο **`microsoft.directory/onPremisesSynchronization/standard/read`** που δεν επιτρέπει πραγματικά να εκτελούνται οποιαδήποτε προνομιακή ενέργεια (όπως η τροποποίηση του κωδικού πρόσβασης ή των χαρακτηριστικών ενός χρήστη ή η προσθήκη νέας διαπίστευσης σε ένα SP).
|
||||
> Αυτός ο ρόλος είχε πολλές προνομιακές άδειες και θα μπορούσε να χρησιμοποιηθεί για [**να κλιμακώσει προνόμια ακόμη και σε παγκόσμιο διαχειριστή**](https://medium.com/tenable-techblog/stealthy-persistence-with-directory-synchronization-accounts-role-in-entra-id-63e56ce5871b). Ωστόσο, η Microsoft αποφάσισε να αφαιρέσει όλα τα προνόμια αυτού του ρόλου και να του αναθέσει μόνο ένα νέο **`microsoft.directory/onPremisesSynchronization/standard/read`** που δεν επιτρέπει πραγματικά να εκτελούνται οποιεσδήποτε προνομιακές ενέργειες (όπως η τροποποίηση του κωδικού πρόσβασης ή των χαρακτηριστικών ενός χρήστη ή η προσθήκη νέας διαπίστευσης σε ένα SP).
|
||||
|
||||
- Στο Entra ID δημιουργείται επίσης η ομάδα **`AAD DC Administrators`** χωρίς μέλη ή ιδιοκτήτες. Αυτή η ομάδα είναι χρήσιμη αν χρησιμοποιείται το [`Microsoft Entra Domain Services`](./az-domain-services.md).
|
||||
|
||||
- Στο AD, είτε δημιουργείται ο Λογαριασμός Υπηρεσίας **`provAgentgMSA`** με ένα SamAcountName όπως **`pGMSA_<id>$@domain.com`** (`Get-ADServiceAccount -Filter * | Select Name,SamAccountName`), είτε ένας προσαρμοσμένος με [**αυτές τις άδειες είναι απαραίτητος**](https://learn.microsoft.com/en-us/entra/identity/hybrid/cloud-sync/how-to-prerequisites?tabs=public-cloud#custom-gmsa-account). Συνήθως δημιουργείται ο προεπιλεγμένος.
|
||||
|
||||
> [!WARNING]
|
||||
> Μεταξύ άλλων αδειών, ο Λογαριασμός Υπηρεσίας **`provAgentgMSA`** έχει άδειες DCSync, επιτρέποντας **σε οποιονδήποτε το συμβιβάσει να συμβιβάσει ολόκληρο τον κατάλογο**. Για περισσότερες πληροφορίες σχετικά με [DCSync ελέγξτε αυτό](https://book.hacktricks.wiki/en/windows-hardening/active-directory-methodology/dcsync.html).
|
||||
> Μεταξύ άλλων αδειών, ο Λογαριασμός Υπηρεσίας **`provAgentgMSA`** έχει άδειες DCSync, επιτρέποντας **σε οποιονδήποτε τον παραβιάσει να παραβιάσει ολόκληρο τον κατάλογο**. Για περισσότερες πληροφορίες σχετικά με [DCSync δείτε αυτό](https://book.hacktricks.wiki/en/windows-hardening/active-directory-methodology/dcsync.html).
|
||||
|
||||
> [!NOTE]
|
||||
> Από προεπιλογή, οι χρήστες γνωστών προνομιακών ομάδων όπως οι Domain Admins με το χαρακτηριστικό **`adminCount` σε 1 δεν συγχρονίζονται** με το Entra ID για λόγους ασφαλείας. Ωστόσο, άλλοι χρήστες που είναι μέλη προνομιακών ομάδων χωρίς αυτό το χαρακτηριστικό ή που έχουν ανατεθεί υψηλά προνόμια απευθείας **μπορούν να συγχρονιστούν**.
|
||||
@@ -43,14 +43,14 @@ az-connect-sync.md
|
||||
|
||||
### AD --> Entra ID
|
||||
|
||||
- Εάν οι χρήστες του AD συγχρονίζονται από το AD στο Entra ID, η περιστροφή από το AD στο Entra ID είναι απλή, απλώς **συμβιβάστε τον κωδικό πρόσβασης κάποιου χρήστη ή αλλάξτε τον κωδικό πρόσβασης κάποιου χρήστη ή δημιουργήστε έναν νέο χρήστη και περιμένετε μέχρι να συγχρονιστεί στον κατάλογο Entra ID (συνήθως μόνο μερικά λεπτά)**.
|
||||
- Εάν οι χρήστες του AD συγχρονίζονται από το AD στο Entra ID, η περιστροφή από το AD στο Entra ID είναι απλή, απλώς **παραβιάστε τον κωδικό πρόσβασης κάποιου χρήστη ή αλλάξτε τον κωδικό πρόσβασης κάποιου χρήστη ή δημιουργήστε έναν νέο χρήστη και περιμένετε μέχρι να συγχρονιστεί στον κατάλογο Entra ID (συνήθως μόνο μερικά λεπτά)**.
|
||||
|
||||
Έτσι, θα μπορούσατε για παράδειγμα
|
||||
- Να συμβιβάσετε τον λογαριασμό **`provAgentgMSA`**, να εκτελέσετε μια επίθεση DCSync, να σπάσετε τον κωδικό πρόσβασης κάποιου χρήστη και στη συνέχεια να τον χρησιμοποιήσετε για να συνδεθείτε στο Entra ID.
|
||||
- Να παραβιάσετε τον λογαριασμό **`provAgentgMSA`**, να εκτελέσετε μια επίθεση DCSync, να σπάσετε τον κωδικό πρόσβασης κάποιου χρήστη και στη συνέχεια να τον χρησιμοποιήσετε για να συνδεθείτε στο Entra ID.
|
||||
- Απλώς να δημιουργήσετε έναν νέο χρήστη στο AD, να περιμένετε μέχρι να συγχρονιστεί στο Entra ID και στη συνέχεια να τον χρησιμοποιήσετε για να συνδεθείτε στο Entra ID.
|
||||
- Να τροποποιήσετε τον κωδικό πρόσβασης κάποιου χρήστη στο AD, να περιμένετε μέχρι να συγχρονιστεί στο Entra ID και στη συνέχεια να τον χρησιμοποιήσετε για να συνδεθείτε στο Entra ID.
|
||||
|
||||
Για να συμβιβάσετε τα διαπιστευτήρια του **`provAgentgMSA`**:
|
||||
Για να παραβιάσετε τα διαπιστευτήρια του **`provAgentgMSA`**:
|
||||
```powershell
|
||||
# Enumerate provAgentgMSA account
|
||||
Get-ADServiceAccount -Filter * -Server domain.local
|
||||
@@ -81,10 +81,10 @@ https://book.hacktricks.wiki/en/windows-hardening/active-directory-methodology/i
|
||||
{{#endref}}
|
||||
|
||||
> [!NOTE]
|
||||
> Σημειώστε ότι δεν υπάρχει τρόπος να δοθούν ρόλοι Azure ή EntraID σε συγχρονισμένους χρήστες με βάση τα χαρακτηριστικά τους, για παράδειγμα, στις ρυθμίσεις Cloud Sync. Ωστόσο, προκειμένου να παραχωρηθούν αυτόματα δικαιώματα σε συγχρονισμένους χρήστες, ορισμένες **ομάδες Entra ID από το AD** μπορεί να λάβουν δικαιώματα, έτσι ώστε οι συγχρονισμένοι χρήστες μέσα σε αυτές τις ομάδες να τα λάβουν επίσης ή **μπορεί να χρησιμοποιηθούν δυναμικές ομάδες**, οπότε ελέγξτε πάντα για δυναμικούς κανόνες και πιθανούς τρόπους κατάχρησής τους:
|
||||
> Σημειώστε ότι δεν υπάρχει τρόπος να δοθούν ρόλοι Azure ή EntraID σε συγχρονισμένους χρήστες με βάση τα χαρακτηριστικά τους, για παράδειγμα, στις ρυθμίσεις Cloud Sync. Ωστόσο, προκειμένου να παραχωρηθούν αυτόματα δικαιώματα σε συγχρονισμένους χρήστες, ορισμένες **ομάδες Entra ID από το AD** μπορεί να λάβουν δικαιώματα, έτσι ώστε οι συγχρονισμένοι χρήστες μέσα σε αυτές τις ομάδες να τα λαμβάνουν επίσης ή **μπορεί να χρησιμοποιηθούν δυναμικές ομάδες**, οπότε ελέγξτε πάντα για δυναμικούς κανόνες και πιθανούς τρόπους κατάχρησής τους:
|
||||
|
||||
{{#ref}}
|
||||
../../az-privilege-escalation/az-entraid-privesc/dynamic-groups.md
|
||||
../az-privilege-escalation/az-entraid-privesc/dynamic-groups.md
|
||||
{{#endref}}
|
||||
|
||||
Σχετικά με την επιμονή, [αυτή η ανάρτηση ιστολογίου](https://tierzerosecurity.co.nz/2024/05/21/ms-entra-connect-sync-mothods.html) προτείνει ότι είναι δυνατό να χρησιμοποιηθεί το [**dnSpy**](https://github.com/dnSpy/dnSpy) για να δημιουργηθεί backdoor στο dll **`Microsoft.Online.Passwordsynchronisation.dll`** που βρίσκεται στο **`C:\Program Files\Microsoft Azure AD Sync\Bin`** και χρησιμοποιείται από τον πράκτορα Cloud Sync για να εκτελεί τη συγχρονισμό κωδικών πρόσβασης, κάνοντάς το να εξάγει τα password hashes των χρηστών που συγχρονίζονται σε έναν απομακρυσμένο διακομιστή. Τα hashes παράγονται μέσα στην κλάση **`PasswordHashGenerator`** και η ανάρτηση ιστολογίου προτείνει την προσθήκη κάποιου κώδικα ώστε η κλάση να φαίνεται έτσι (σημειώστε τη χρήση `use System.Net` και τη χρήση `WebClient` για την εξαγωγή των password hashes):
|
||||
@@ -129,12 +129,12 @@ C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\: Package 'System.Security.C
|
||||
|
||||
- Αν **Password Writeback** είναι ενεργοποιημένο, μπορείτε να τροποποιήσετε τον κωδικό πρόσβασης ορισμένων χρηστών από το Entra ID και αν έχετε πρόσβαση στο δίκτυο AD, να συνδεθείτε χρησιμοποιώντας αυτούς. Για περισσότερες πληροφορίες, ελέγξτε την ενότητα [Az Connect Sync section](./az-connect-sync.md) για περισσότερες πληροφορίες καθώς η επαναφορά κωδικού πρόσβασης ρυθμίζεται χρησιμοποιώντας αυτόν τον πράκτορα.
|
||||
|
||||
- Αυτή τη στιγμή, το Cloud Sync επιτρέπει επίσης **"Microsoft Entra ID to AD"**, αλλά μετά από πολύ χρόνο διαπίστωσα ότι ΔΕΝ μπορεί να συγχρονίσει τους χρήστες EntraID με το AD και ότι μπορεί να συγχρονίσει μόνο τους χρήστες από το EntraID που συγχρονίστηκαν με το hash κωδικού πρόσβασης και προέρχονται από έναν τομέα που ανήκει στο ίδιο δάσος τομέα με τον τομέα στον οποίο συγχρονίζουμε, όπως μπορείτε να διαβάσετε στο [https://learn.microsoft.com/en-us/entra/identity/hybrid/group-writeback-cloud-sync#supported-groups-and-scale-limits](https://learn.microsoft.com/en-us/entra/identity/hybrid/group-writeback-cloud-sync#supported-groups-and-scale-limits):
|
||||
- Σε αυτό το σημείο, το Cloud Sync επιτρέπει επίσης **"Microsoft Entra ID to AD"**, αλλά μετά από πολύ χρόνο διαπίστωσα ότι ΔΕΝ μπορεί να συγχρονίσει τους χρήστες EntraID με το AD και ότι μπορεί να συγχρονίσει μόνο τους χρήστες από το EntraID που συγχρονίστηκαν με το hash κωδικού πρόσβασης και προέρχονται από έναν τομέα που ανήκει στην ίδια δασική περιοχή με τον τομέα στον οποίο συγχρονίζουμε, όπως μπορείτε να διαβάσετε στο [https://learn.microsoft.com/en-us/entra/identity/hybrid/group-writeback-cloud-sync#supported-groups-and-scale-limits](https://learn.microsoft.com/en-us/entra/identity/hybrid/group-writeback-cloud-sync#supported-groups-and-scale-limits):
|
||||
|
||||
> - Αυτές οι ομάδες μπορούν να περιέχουν μόνο συγχρονισμένους χρήστες από το on-premises και / ή επιπλέον ομάδες ασφαλείας που δημιουργήθηκαν στο cloud.
|
||||
> - Οι λογαριασμοί χρηστών on-premises που συγχρονίζονται και είναι μέλη αυτής της ομάδας ασφαλείας που δημιουργήθηκε στο cloud, μπορούν να προέρχονται από τον ίδιο τομέα ή από διαφορετικούς τομείς, αλλά όλοι πρέπει να προέρχονται από το ίδιο δάσος.
|
||||
> - Οι λογαριασμοί χρηστών on-premises που συγχρονίζονται και είναι μέλη αυτής της ομάδας ασφαλείας που δημιουργήθηκε στο cloud, μπορούν να προέρχονται από τον ίδιο τομέα ή από διαφορετικούς τομείς, αλλά όλοι πρέπει να προέρχονται από την ίδια δασική περιοχή.
|
||||
|
||||
Έτσι, η επιφάνεια επίθεσης (και η χρησιμότητα) αυτής της υπηρεσίας μειώνεται σημαντικά καθώς ένας επιτιθέμενος θα πρέπει να παραβιάσει το αρχικό AD από το οποίο συγχρονίζονται οι χρήστες προκειμένου να παραβιάσει έναν χρήστη στον άλλο τομέα (και οι δύο πρέπει προφανώς να είναι στο ίδιο δάσος).
|
||||
Έτσι, η επιφάνεια επίθεσης (και η χρησιμότητα) αυτής της υπηρεσίας μειώνεται σημαντικά καθώς ένας επιτιθέμενος θα πρέπει να παραβιάσει το αρχικό AD από το οποίο συγχρονίζονται οι χρήστες προκειμένου να παραβιάσει έναν χρήστη στον άλλο τομέα (και οι δύο πρέπει προφανώς να είναι στην ίδια δασική περιοχή).
|
||||
|
||||
### Enumeration
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user