GCP - IAM, Principals & Org Policies Enum
Service Accounts
Za uvod o tome šta je servisni nalog proverite:
GCP - Basic InformationEnumeracija
Servisni nalog uvek pripada projektu:
Korisnici i grupe
Za uvod o tome kako korisnici i grupe funkcionišu u GCP proverite:
GCP - Basic InformationEnumeracija
Sa dozvolama serviceusage.services.enable
i serviceusage.services.use
moguće je omogućiti usluge u projektu i koristiti ih.
Imajte na umu da su korisnicima Workspace-a podrazumevano dodeljene uloge Kreator projekta, što im omogućava pristup kreiranju novih projekata. Kada korisnik kreira projekat, dodeljena mu je uloga owner
nad njim. Dakle, može omogućiti ove usluge nad projektom kako bi mogao da enumeriše Workspace.
Međutim, imajte na umu da je takođe potrebno imati dovoljno dozvola u Workspace-u kako biste mogli da pozovete ove API-je.
Ako možete omogućiti uslugu admin
i ako vaš korisnik ima dovoljno privilegija u Workspace-u, možete enumerisati sve grupe i korisnike sa sledećim linijama.
Čak i ako kaže identity groups
, takođe vraća korisnike bez ikakvih grupa:
U prethodnim primerima parametar --labels
je obavezan, pa se koristi generička vrednost (nije potreban ako koristite API direktno kao što PurplePanda radi ovde.
Čak i sa omogućenom admin uslugom, moguće je da dobijete grešku prilikom numerisanja jer vaš kompromitovani korisnik workspace-a nema dovoljno dozvola:
IAM
Proverite ovde osnovne informacije o IAM-u.
Podrazumevane Dozvole
Iz dokumenata: Kada se kreira resurs organizacije, svi korisnici u vašem domenu automatski dobijaju uloge Kreator računa za naplatu i Kreator projekta. Ove podrazumevane uloge omogućavaju vašim korisnicima da odmah počnu da koriste Google Cloud, ali nisu namenjene za redovno korišćenje resursa organizacije.
Ove uloge dodeljuju dozvole:
billing.accounts.create
iresourcemanager.organizations.get
resourcemanager.organizations.get
iresourcemanager.projects.create
Pored toga, kada korisnik kreira projekat, automatski postaje vlasnik tog projekta prema dokumentima. Dakle, podrazumevano, korisnik će moći da kreira projekat i pokrene bilo koju uslugu na njemu (rudari? Enumeracija Workspace-a? ...)
Najveći privilegija u GCP organizaciji je uloga Administratora organizacije.
set-iam-policy vs add-iam-policy-binding
U većini usluga moći ćete da promenite dozvole nad resursom koristeći metodu add-iam-policy-binding
ili set-iam-policy
. Glavna razlika je u tome što add-iam-policy-binding
dodaje novu ulogu postojećoj IAM politici dok će set-iam-policy
obrisati prethodno dodeljene dozvole i postaviti samo one navedene u komandi.
Enumeracija
cloudasset IAM Enumeracija
Postoje različiti načini da se provere sve dozvole korisnika u različitim resursima (kao što su organizacije, fascikle, projekti...) koristeći ovu uslugu.
Dozvola
cloudasset.assets.searchAllIamPolicies
može zahtevati sve iam politike unutar resursa.
Dozvola
cloudasset.assets.analyzeIamPolicy
može zatražiti sve iam politike glavnog subjekta unutar resursa.
Dozvola
cloudasset.assets.searchAllResources
omogućava listanje svih resursa organizacije, fascikle ili projekta. Uključeni su resursi povezani sa IAM-om (kao što su uloge).
Dozvola
cloudasset.assets.analyzeMove
može biti korisna i za dobijanje politika koje utiču na resurs poput projekta
Pretpostavljam da dozvola
cloudasset.assets.queryIamPolicy
takođe može omogućiti pristup pronalaženju dozvola principala
Testiranje dozvola Iam enumeracija
Ako ne možete pristupiti informacijama o IAM koristeći prethodne metode i ako ste u Crvenom timu, možete koristiti alat https://github.com/carlospolop/bf_my_gcp_perms za grubo testiranje vaših trenutnih dozvola.
Međutim, imajte na umu da je potrebno omogućiti uslugu cloudresourcemanager.googleapis.com
.
Eskalacija privilegija
Na sledećoj stranici možete proveriti kako zloupotrebiti IAM dozvole za eskalaciju privilegija:
GCP - IAM PrivescNeautentifikovana enumeracija
GCP - IAM, Principals & Org Unauthenticated EnumPost eksploatacija
GCP - IAM Post ExploitationUpornost
Ako imate visoke privilegije, možete:
Kreirati nove servisne naloge (ili korisnike ako ste u Workspace-u)
Dati principale koje kontrolišete više dozvola
Dati više privilegija ranjivim servisnim nalozima (SSRF u vm, ranjiva Cloud funkcija...)
...
Org Politike
Za uvod u to šta su Org Politike, pogledajte:
GCP - Basic InformationIAM politike ukazuju na dozvole koje principali imaju nad resursima putem uloga, koje dodeljuju granularne dozvole. Organizacione politike ograničavaju način korišćenja tih usluga ili onemogućavaju određene funkcije. Ovo pomaže u poboljšanju najmanjih privilegija svakog resursa u GCP okruženju.
Eskalacija privilegija
Na sledećoj stranici možete proveriti kako zloupotrebiti dozvole org politika za eskalaciju privilegija:
GCP - Orgpolicy PrivescLast updated