Az - Cloud Kerberos Trust
Ovaj post je sažetak https://dirkjanm.io/obtaining-domain-admin-from-azure-ad-via-cloud-kerberos-trust/ gde možete pronaći dodatne informacije o napadu. Ova tehnika je takođe objašnjena u https://www.youtube.com/watch?v=AFay_58QubY.
Osnovne informacije
Poverenje
Kada se uspostavi poverenje sa Azure AD, u AD-u se kreira Read Only Domain Controller (RODC). Računara RODC-a se naziva AzureADKerberos$
. Takođe, kreira se sekundarni krbtgt
račun nazvan krbtgt_AzureAD
. Ovaj račun sadrži Kerberos ključeve koji se koriste za tikete koje Azure AD kreira.
Dakle, ako se ovaj račun kompromituje, moguće je preuzeti identitet bilo kog korisnika... iako to nije tačno jer je ovom računu onemogućeno kreiranje tiketa za bilo koju privilegovanu AD grupu kao što su Domain Admins, Enterprise Admins, Administrators...
Međutim, u stvarnom scenariju postojaće privilegovani korisnici koji nisu u tim grupama. Dakle, novi krbtgt račun, ako je kompromitovan, može se koristiti za preuzimanje njihovog identiteta.
Kerberos TGT
Osim toga, kada se korisnik autentifikuje na Windows-u koristeći hibridni identitet Azure AD će izdati delimičan Kerberos tiket zajedno sa PRT-om. TGT je delimičan jer AzureAD ima ograničene informacije o korisniku u lokalnom AD-u (kao što su sigurnosni identifikator (SID) i ime).
Windows može zatim zameniti ovaj delimičan TGT za pun TGT tako što će zatražiti servisni tiket za krbtgt
servis.
NTLM
Pošto mogu postojati servisi koji ne podržavaju Kerberos autentifikaciju već NTLM, moguće je zatražiti delimičan TGT potpisan pomoću sekundarnog krbtgt
ključa uključujući polje KERB-KEY-LIST-REQ
u delu PADATA zahteva, a zatim dobiti pun TGT potpisan primarnim krbtgt
ključem uključujući NT hash u odgovoru.
Zloupotreba Cloud Kerberos poverenja za dobijanje Domain Admin pristupa
Kada AzureAD generiše delimičan TGT, koristiće informacije koje ima o korisniku. Dakle, ako Globalni administrator može da izmeni podatke kao što su sigurnosni identifikator i ime korisnika u AzureAD-u, prilikom zahteva za TGT za tog korisnika, sigurnosni identifikator će biti drugačiji.
To nije moguće uraditi putem Microsoft Graph-a ili Azure AD Graph-a, ali je moguće koristiti API Active Directory Connect koji se koristi za kreiranje i ažuriranje sinhronizovanih korisnika, a koji Globalni administratori mogu koristiti da izmene SAM ime i SID bilo kog hibridnog korisnika, a zatim, ako se autentifikujemo, dobijamo delimičan TGT koji sadrži izmenjeni SID.
Imajte na umu da to možemo uraditi sa AADInternals i ažurirati sinhronizovane korisnike putem Set-AADIntAzureADObject cmdlet-a.
Pretpostavke napada
Uspeh napada i dobijanje Domain Admin privilegija zavisi od ispunjenja određenih pretpostavki:
Ključno je imati mogućnost izmene naloga putem Synchronization API-ja. To se može postići imajući ulogu Globalnog administratora ili posedovanjem AD Connect sync naloga. Alternativno, dovoljna bi bila i uloga Hybrid Identity Administratora, jer omogućava upravljanje AD Connect-om i uspostavljanje novih sync naloga.
Prisustvo hibridnog naloga je neophodno. Ovaj nalog mora biti podložan izmenama sa detaljima žrtvinog naloga i takođe mora biti dostupan za autentifikaciju.
Neophodno je identifikovati ciljni žrtveni nalog u Active Directory-ju. Iako se napad može izvršiti na bilo kom već sinhronizovanom nalogu, Azure AD zakupac ne sme imati replikirane sigurnosne identifikatore sa lokalnog AD-a, što zahteva izmenu nesinhronizovanog naloga radi dobijanja tiketa.
Ovaj nalog takođe treba da ima privilegije ekvivalentne Domain Admin-u, ali ne sme biti član tipičnih AD administratorskih grupa kako bi se izbeglo generisanje nevažećih TGT-ova od strane AzureAD RODC-a.
Najpogodnija meta je Active Directory nalog koji se koristi od strane AD Connect Sync servisa. Ovaj nalog nije sinhronizovan sa Azure AD-om, ostavljajući njegov SID kao moguću metu, a inherentno poseduje privilegije ekvivalentne Domain Admin-u zbog svoje uloge u sinhronizaciji heševa lozinki (pod pretpostavkom da je Password Hash Sync aktivan). Za domene sa ekspres instalacijom, ovaj nalog ima prefiks MSOL_. Za druge instance, nalog se može pronaći enumeracijom svih naloga kojima su dodeljene privilegije replikacije direktorijuma na objektu domene.
Potpuni napad
Pogledajte originalni post: [https://dirkjanm.io/obtaining-domain-admin-from-
Last updated