Az - Federation
Last updated
Last updated
Od dokumenata:Federacija je skup domena koji su uspostavili poverenje. Nivo poverenja može varirati, ali obično uključuje autentifikaciju i gotovo uvek uključuje autorizaciju. Tipična federacija može uključivati broj organizacija koje su uspostavile poverenje za deljeni pristup skupu resursa.
Možete federisati vaše on-premises okruženje sa Azure AD i koristiti ovu federaciju za autentifikaciju i autorizaciju. Ovaj način prijave osigurava da se sva autentifikacija korisnika odvija on-premises. Ovaj metod omogućava administratorima da implementiraju rigoroznije nivoe kontrole pristupa. Federacija sa AD FS i PingFederate je dostupna.
U osnovi, u Federaciji, sva autentifikacija se odvija u on-prem okruženju i korisnik doživljava SSO (Single Sign-On) preko svih poverenih okruženja. Stoga, korisnici mogu pristupiti cloud aplikacijama koristeći svoje on-prem kredencijale.
Security Assertion Markup Language (SAML) se koristi za razmenu svih informacija o autentifikaciji i autorizaciji između provajdera.
U svakoj federaciji postoje tri strane:
Korisnik ili Klijent
Provajder identiteta (IdP)
Provajder usluga (SP)
(Slike preuzete sa https://www.cyberark.com/resources/threat-research-blog/golden-saml-newly-discovered-attack-technique-forges-authentication-to-cloud-apps)
Prvo, aplikacija (Provajder usluga ili SP, kao što su AWS konzola ili vSphere web klijent) se pristupa od strane korisnika. Ovaj korak može biti zaobiđen, vodeći klijenta direktno ka IdP (Provajder identiteta) u zavisnosti od specifične implementacije.
Zatim, SP identifikuje odgovarajući IdP (npr. AD FS, Okta) za autentifikaciju korisnika. Zatim kreira SAML (Security Assertion Markup Language) AuthnRequest i preusmerava klijenta ka izabranom IdP.
IdP preuzima kontrolu, autentifikuje korisnika. Nakon autentifikacije, SAMLResponse se formira od strane IdP-a i prosleđuje SP-u preko korisnika.
Na kraju, SP procenjuje SAMLResponse. Ako je uspešno validiran, implicirajući poverenje sa IdP-om, korisniku se odobrava pristup. Ovo označava završetak procesa prijave, omogućavajući korisniku da koristi uslugu.
Ako želite da saznate više o SAML autentifikaciji i uobičajenim napadima idite na:
AD FS je model identiteta zasnovan na tvrdnjama.
"..tvrdnjesuprostoizjave(naprimer,ime,identitet,grupa), napravljene o korisnicima, koje se koriste pretežno za autorizaciju pristupa aplikacijama zasnovanim na tvrdnjama, smeštenim bilo gde na Internetu."
Tvrdnje za korisnika su napisane unutar SAML tokena i zatim potpisane radi obezbeđivanja poverljivosti od strane IdP-a.
Korisnik je identifikovan pomoću ImmutableID. To je globalno jedinstveno i čuva se u Azure AD.
ImmutableID je čuvan na-prem kao ms-DS-ConsistencyGuid za korisnika i/ili se može izvesti iz GUID-a korisnika.
Golden SAML napad:
U ADFS-u, SAML Response je potpisan sertifikatom za potpisivanje tokena.
Ako je sertifikat kompromitovan, moguće je autentifikovati se na Azure AD kao BILO koji korisnik sinhronizovan sa Azure AD!
Kao i kod zloupotrebe PTA, promena lozinke za korisnika ili MFA neće imati nikakav efekat jer lažiramo odgovor za autentifikaciju.
Sertifikat se može izvući sa AD FS servera sa DA privilegijama i zatim se može koristiti sa bilo koje mašine povezane na internet.
Proces gde Provajder identiteta (IdP) proizvodi SAMLResponse za autorizaciju prijave korisnika je ključan. U zavisnosti od specifične implementacije IdP-a, odgovor može biti potpisan ili šifrovan korišćenjem privatnog ključa IdP-a. Ovaj postupak omogućava Provajderu usluga (SP) da potvrdi autentičnost SAMLResponse-a, osiguravajući da je zaista izdat od strane poverenog IdP-a.
Paralela se može povući sa napadom zlatnim tiketom, gde ključ koji autentifikuje korisnikov identitet i dozvole (KRBTGT za zlatne tikete, privatni ključ za potpisivanje tokena za zlatni SAML) može biti manipulisan da falsifikuje autentifikacioni objekat (TGT ili SAMLResponse). Ovo omogućava impersonaciju bilo kog korisnika, dajući neovlašćen pristup SP-u.
Golden SAML-ovi nude određene prednosti:
Mogu se kreirati na daljinu, bez potrebe da budu deo domena ili federacije u pitanju.
Ostaju efikasni čak i sa Dvostrukom Autentifikacijom (2FA) omogućenom.
Privatni ključ za potpisivanje tokena se ne obnavlja automatski.
Promena lozinke korisnika ne poništava već generisan SAML.
Active Directory Federation Services (AD FS) je Microsoft servis koji olakšava sigurnu razmenu informacija o identitetu između poverenih poslovnih partnera (federacija). U osnovi omogućava domenskoj usluzi da deli korisničke identitete sa drugim provajderima usluga unutar federacije.
Sa AWS-om koji veruje kompromitovanom domenu (u federaciji), ovu ranjivost je moguće iskoristiti da se potencijalno dobiju bilo koje dozvole u AWS okruženju. Napad zahteva privatni ključ korišćen za potpisivanje SAML objekata, slično kao što je potrebno KRBTGT-u u napadu zlatnim tiketom. Pristup korisničkom nalogu AD FS-a je dovoljan da se dobije ovaj privatni ključ.
Za izvođenje golden SAML napada potrebno je:
Privatni ključ za potpisivanje tokena
Javni sertifikat IdP-a
Ime IdP-a
Ime uloge (uloga za preuzimanje)
Domain\korisničko ime
Ime sesije uloge u AWS-u
ID Amazon naloga
Samo stavke podebljane su obavezne. Ostale se mogu popuniti po želji.
Za dobijanje privatnog ključa, potreban je pristup korisničkom nalogu AD FS-a. Zatim, privatni ključ se može izvesti iz ličnog skladišta koristeći alate poput mimikatz. Za prikupljanje ostalih potrebnih informacija, možete koristiti Microsoft.Adfs.Powershell snapin na sledeći način, obezbeđujući da ste prijavljeni kao korisnik ADFS-a:
Sa svim informacijama, moguće je zaboraviti validan SAMLResponse kao korisnik kog želite da predstavljate koristeći shimit:
Takođe je moguće kreirati ImmutableID korisnika samo u oblaku i impersonirati ih