Nazaj na blog

Veriga uničenja Active Directory: kako se napadalci premaknejo od začetnega dostopa do Domain Admina

August 15, 2024 5 min branja
Veriga uničenja Active Directory: kako se napadalci premaknejo od začetnega dostopa do Domain Admina
Nazadnje posodobljeno:

Pri kompromitaciji Active Directory se lahko poveže več pomanjkljivosti, od začetnega dostopa in razkritja poverilnic do preširokih pravic. Zaporedje je odvisno od okolja, že razpoložljivega dostopa in cilja napadalca. Prispevek sledi eni ponazoritveni poti ter pri posameznih korakih predstavi možnosti zaznavanja in omejitve napada.

Želim vas popeljati skozi celotno napadalno verigo AD, kot jo doživljam med tipičnim internim penetracijskim testom, in na vsaki stopnji pojasniti, katere obrambne kontrole bi me ustavile ali zaznale.

Tehniki pridobivanja poverilnic Kerberoasting in DCSync sta dokumentirani v MITRE ATT&CK. MITRE ATT&CK: Kerberoasting (T1558.003); MITRE ATT&CK: DCSync (T1003.006).

Stopnja 1: začetni dostop in izvidovanje

Napadalna veriga se začne, ko se povežem v interno omrežje. Moja prva dejanja so pasivna: poslušam oddajni promet z uporabo Responderja v analiznem načinu, identificiram ime domene in IP-naslove krmilnikov domene iz odgovorov DNS in DHCP ter preslikam topologijo omrežja iz prometa ARP. V nekaj minutah imam sliko okolja, ne da bi poslal en sam zlonameren paket.

Z nizko privilegiranim računom domene -- pogosto pridobljenim prek zastrupljanja LLMNR/NBT-NS ali iz kompromitirane delovne postaje -- začnem aktivno izvidovanje. Poizvedujem LDAP za uporabnike, skupine, računalnike, GPO-je, zaupanja in organizacijske enote. Poženem zbiralec SharpHound orodja BloodHound za preslikavo vsake povezave in dovoljenja v domeni. To mi da popoln graf napadnih poti od mojega trenutnega položaja do Domain Admina.

Obrambne kontrole: Onemogočite LLMNR in NBT-NS prek GPO za preprečitev zastrupljanja razreševanja imen. Uvedite nadzor omrežnega dostopa (802.1X) za preprečitev povezovanja nepooblaščenih naprav. Spremljajte neobičajne vzorce poizvedb LDAP -- SharpHound ustvari značilen izbruh poizvedb LDAP, ki ga je mogoče zaznati po obsegu in vzorcu. Uvedite račune-vabe, ki sprožijo alarme, ko jih poizvede BloodHound.

Stopnja 2: pridobivanje poverilnic

Ko je izvidovanje domene zaključeno, ciljam poverilnice. Moje primarne tehnike na tej stopnji so Kerberoasting, NTLM relay in razprševanje gesel. Kerberoasting mi omogoča zahtevanje storitvenih vozovnic in razbijanje brez povezave. NTLM relay mi omogoča zajemanje in posredovanje avtentikacije. Razprševanje gesel mi omogoča ugibanje pogostih gesel na več računih.

Preverim tudi račune, ranljive za AS-REP Roasting, gesla LAPS, berljiva za mojega trenutnega uporabnika, gesla, shranjena v nastavitvah skupinskih politik (starejša težava, ki se še vedno redno pojavlja), in poverilnice v skriptah SYSVOL. Vsaka od teh tehnik izkorišča drugačno napačno konfiguracijo in večina okolij je ranljiva za vsaj dve od njih.

Obrambne kontrole: Uvedite gMSA za omejitev tveganja ugibanja gesel pri Kerberoastingu. Uveljavite SMB in LDAP-podpisovanje za blokado napadov relay. Uvedite politike zaklepanja računov, ki so dovolj stroge za omejitev razprševanja, a ne tako agresivne, da omogočajo zavrnitev storitve. Odstranite gesla iz datotek GPP in skript SYSVOL. Spremljajte dogodek ID 4769 za zahteve vozovnic RC4 in dogodek ID 4625 za porazdeljene neuspehe avtentikacije.

Stopnja 3: lateralno premikanje

Ko imam poverilnice, se premikam med sistemi po okolju. Če imam zgoščene vrednosti lokalnega administratorja, uporabim pass-the-hash za dostop do drugih delovnih postaj in strežnikov. Če imam gesla v čistopisu ali vozovnice Kerberos, uporabim standardna orodja kot PsExec, WMI ali oddaljeni PowerShell. Moj cilj je najti naprave, kjer imajo višje privilegirani uporabniki aktivne seje ali predpomnjene poverilnice.

V okoljih brez LAPS je lateralno premikanje trivialno. Ena zgoščena vrednost lokalnega administratorja mi omogoča dostop do vsake naprave v domeni. Tudi z LAPS, če ni večnivojskega administratorskega modela, iščem naprave, kjer so se Domain Admini nedavno prijavili. Vsak skok me približa sredstvu nivoja 0.

Obrambne kontrole: Uvedite LAPS, da naredite vsako lokalno administratorsko geslo edinstveno. Uvedite večnivojsko administracijo, da preprečite pojavljanje visoko privilegiranih poverilnic na sistemih nižjega nivoja. Omogočite Windows Credential Guard za zaščito zgoščenih vrednosti NTLM in vozovnic Kerberos v pomnilniku. Dodajte privilegirane račune v skupino Protected Users za preprečitev predpomnjenja zgoščenih vrednosti NTLM. Spremljajte vzorce lateralnega premikanja: dogodek ID 4624 tip prijave 3 iz neobičajnih izvornih IP-naslovov, namestitve storitev PsExec (dogodek ID 7045) in dogodke ustvarjanja procesov WMI.

Stopnja 4: stopnjevanje pravic

Stopnjevanje pravic v AD običajno pomeni prehod od navadnega uporabnika domene do Domain Admina. Poti, ki jih najpogosteje uporabljam, vključujejo kompromitacijo preveč privilegiranega storitvenega računa prek Kerberoastinga, iskanje predpomnjenih poverilnic Domain Admin na kompromitiranem strežniku, izkoriščanje napačnih konfiguracij ACL, ki mi dajejo pisalni dostop do privilegiranih objektov, in zlorabo delegacije Kerberos za predstavljanje kot privilegirani uporabniki.

BloodHound je tukaj neprecenljiv. Razkrije poti stopnjevanja pravic, ki jih nobena ročna analiza ne bi našla: vgnezdena članstva v skupinah, ki se verižijo skupaj, dovoljenja GenericAll na objektih uporabnikov, ki mi omogočajo ponastavitev gesel, WriteDacl na skupinah, ki mi omogočajo dodajanje sebe, in lastništvo nad GPO-ji, ki mi omogočajo potiskanje zlonamernih politik.

Obrambne kontrole: Proaktivno poganjajte BloodHound za obrambo, da najdete in odpravite poti stopnjevanja pravic, preden to storijo napadalci. Revidirajte ACL-je na vseh privilegiranih objektih (skupina Domain Admins, krmilniki domene, vsebnik AdminSDHolder). Odstranite nepotrebne konfiguracije delegacije. Dosledno uveljavljajte načelo najmanjših privilegijev -- storitveni računi bi morali imeti samo specifična dovoljenja, ki jih potrebujejo, ne pravic Domain Admin.

Stopnja 5: prevlada nad domeno

Ko imam dostop Domain Admin, vzpostavim trajni dostop in prikažem celoten vpliv. Izvedem napad DCSync za replikacijo vseh zgoščenih vrednosti gesel iz domene. Lahko ustvarim zlate vozovnice za trajni dostop. Dostopam do podatkovne baze NTDS.dit na krmilnikih domene. Na tej točki je vsak račun v domeni kompromitiran in obnova zahteva predpostavko, da so bile vse poverilnice ukradene.

Obrambne kontrole: Spremljajte napade DCSync z opazovanjem dogodka ID 4662 za zahteve replikacije iz ne-DC virov. Nastavite opozorila na nove člane, dodane v skupino Domain Admins in druge skupine nivoja 0 (dogodek ID 4728, 4732, 4756). Rotirajte geslo KRBTGT vsakih 180 dni za omejitev življenjske dobe zlatih vozovnic. Vzdržujte varnostne kopije Active Directory brez povezave, ki jih kompromitiran Domain Admin ne more spreminjati.

Prekinjanje verige

Napadalna veriga je močna le toliko kot njen najšibkejši člen, a z obrambne perspektive bi morali ciljati na njeno prekinitev na vsaki stopnji. Obramba v globino pomeni, da tudi če ena kontrola odpove, naslednja ujame napadalca. Nobena posamezna kontrola ne ustavi vsega, a kombinacija pravilnega uveljavljanja podpisovanja, gMSA, LAPS, večnivojske administracije in aktivnega spremljanja naredi vsak korak dramatično težji.

Vsako organizacijo spodbujam, da preslika svojo lastno napadalno verigo. Začnite s predpostavljeno kompromitacijo ene delovne postaje in sledite potem, ki bi jih napadalec lahko ubral do Domain Admina. Uporabite BloodHound za identifikacijo teh poti, nato jih sistematično zaprite. Cilj ni narediti kompromitacijo nemogoče, ampak narediti jo dovolj počasno in dovolj glasno, da jo vaši sistemi za zaznavanje ujamejo, preden doseže prevlado nad domeno.

Povezano branje: Zloraba Kerberosa in ukrepi za zaščito; Obnovitev Active Directory po izsiljevalskem napadu: preverjanje načrta.

Vid Grosek

Vid Grosek

Etični heker & Penetracijski tester

Pomagam slovenskim podjetjem odkriti varnostne ranljivosti, preden jih odkrijejo napadalci. Z več kot 18 leti izkušenj v kibernetski varnosti.

Vse objave

Komentarji

Ni še komentarjev. Bodite prvi!

Dodaj komentar

Vam je bil članek všeč?

Prijavite se na newsletter za mesečne varnostne vpoglede.

Prijavite se