GCP - Basiese Inligting
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
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
Hulpbron hiërargie
Google Cloud gebruik ’n Hulpbron hiërargie wat konseptueel soortgelyk is aan dié van ’n tradisionele lêerstelsel. Dit bied ’n logiese ouer/kind werksvloei met spesifieke aanhegpunte vir beleide en toestemmings.
Op ’n hoë vlak lyk dit soos volg:
Organization
--> Folders
--> Projects
--> Resources
’n Virtuele masjien (genoem ’n Compute Instance) is ’n hulpbron. ’n Hulpbron woon in ’n projek, waarskynlik langs ander Compute Instances, stoor emmers, ens.
 (1) (1) (1) (1) (1) (1).png)
https://cloud.google.com/static/resource-manager/img/cloud-hierarchy.svg
Projek Migrasie
Dit is moontlik om ’n projek sonder enige organisasie na ’n organisasie met die toestemmings roles/resourcemanager.projectCreator en roles/resourcemanager.projectMover te migreer. As die projek binne ’n ander organisasie is, is dit nodig om GCP-ondersteuning te kontak om eerstens uit die organisasie te beweeg. Vir meer inligting, kyk na hierdie.
Organisasie Beleide
Laat jou toe om sentrale beheer oor jou organisasie se wolkhulpbronne te hê:
- Sentrale beheer om beperkings te konfigureer oor hoe jou organisasie se hulpbronne gebruik kan word.
- Definieer en stel grenslyne vas vir jou ontwikkelingspan om binne nakomingsgrense te bly.
- Help projek eienaars en hul spanne om vinnig te beweeg sonder om bekommerd te wees oor die oortreding van nakomings.
Hierdie beleide kan geskep word om die hele organisasie, vouer(s) of projek(te) te affekteer. Afstammelinge van die geteikende hulpbron hiërargie node erf die organisasie beleid.
Om ’n organisasie beleid te definieer, kies jy ’n beperking, wat ’n spesifieke tipe beperking teenoor ’n Google Cloud diens of ’n groep Google Cloud dienste is. Jy konfigureer daardie beperking met jou gewenste beperkings.
.png)
https://cloud.google.com/resource-manager/img/org-policy-concepts.svg
Algemene gebruiksgevalle
- Beperk hulpbrondeling gebaseer op domein.
- Beperk die gebruik van Identiteit en Toegang Bestuur diens rekeninge.
- Beperk die fisiese ligging van nuut geskepte hulpbronne.
- Deaktiveer diensrekening skepping.
.png)
Daar is baie meer beperkings wat jou fyn beheer oor jou organisasie se hulpbronne gee. Vir meer inligting, sien die lys van alle Organisasie Beleid Diens beperkings.
Standaard Organisasie Beleide
Dit is die beleide wat Google standaard sal byvoeg wanneer jy jou GCP-organisasie opstel:
Toegang Bestuur Beleide
- Domein beperkte kontakte: Voorkom die toevoeging van gebruikers aan Essensiële Kontakte buite jou gespesifiseerde domeine. Dit beperk Essensiële Kontakte om slegs bestuurde gebruikersidentiteite in jou geselekteerde domeine toe te laat om platform kennisgewings te ontvang.
- Domein beperkte deling: Voorkom die toevoeging van gebruikers aan IAM beleide buite jou gespesifiseerde domeine. Dit beperk IAM beleide om slegs bestuurde gebruikersidentiteite in jou geselekteerde domeine toe te laat om hulpbronne binne hierdie organisasie te benader.
- Publieke toegang voorkoming: Voorkom dat Cloud Storage emmers aan die publiek blootgestel word. Dit verseker dat ’n ontwikkelaar nie Cloud Storage emmers kan konfigureer om nie-geverifieerde internet toegang te hê nie.
- Uniform emmer vlak toegang: Voorkom objek-vlak toegang beheer lyste (ACLs) in Cloud Storage emmers. Dit vereenvoudig jou toegang bestuur deur IAM beleide konsekwent oor alle objek in Cloud Storage emmers toe te pas.
- Vereis OS aanmelding: VM’s wat in nuwe projekte geskep word, sal OS Aanmelding geaktiveer hê. Dit laat jou toe om SSH toegang tot jou instansies te bestuur met behulp van IAM sonder om individuele SSH sleutels te moet skep en bestuur.
Addisionele sekuriteitsbeleide vir diensrekeninge
- Deaktiveer outomatiese IAM toekennings: Voorkom dat die standaard App Engine en Compute Engine diensrekeninge outomaties die Redigeerder IAM rol op ’n projek by skepping toegeken word. Dit verseker dat diensrekeninge nie oormatig permissiewe IAM rolle ontvang nie.
- Deaktiveer diensrekening sleutel skepping: Voorkom die skepping van publieke diensrekening sleutels. Dit help om die risiko van blootstelling van volgehoue akrediteer te verminder.
- Deaktiveer diensrekening sleutel opgelaai: Voorkom die opgelaai van publieke diensrekening sleutels. Dit help om die risiko van gelekte of hergebruikte sleutel materiaal te verminder.
Veilige VPC netwerk konfigurasie beleide
- Definieer toegelate eksterne IP’s vir VM instansies: Voorkom die skepping van Compute instansies met ’n publieke IP, wat hulle aan internetverkeer kan blootstel.
- Deaktiveer VM geneste virtualisering: Voorkom die skepping van geneste VM’s op Compute Engine VM’s. Dit verminder die sekuriteitsrisiko van onopgemerkte geneste VM’s.
- Deaktiveer VM seriële poort: Voorkom seriële poort toegang tot Compute Engine VM’s. Dit voorkom invoer na ’n bediener se seriële poort met behulp van die Compute Engine API.
- Beperk geautoriseerde netwerke op Cloud SQL instansies: Voorkom dat publieke of nie-interne netwerkreekse toegang tot jou Cloud SQL databasisse verkry.
- Beperk Protokol Oorgang gebaseer op tipe IP Adres: Voorkom VM protokol oorgang vir eksterne IP adresse.
- Beperk Publieke IP toegang op Cloud SQL instansies: Voorkom die skepping van Cloud SQL instansies met ’n publieke IP, wat hulle aan internetverkeer kan blootstel.
- Beperk gedeelde VPC projek lien verwydering: Voorkom die toevallige verwydering van Gedeelde VPC gasheer projekte.
- Stel die interne DNS instelling vir nuwe projekte op Zonal DNS Slegs: Voorkom die gebruik van ’n erflike DNS instelling wat diens beskikbaarheid verminder het.
- Slaan standaard netwerk skepping oor: Voorkom outomatiese skepping van die standaard VPC netwerk en verwante hulpbronne. Dit vermy oormatig permissiewe standaard vuurmuur reëls.
- Deaktiveer VPC Eksterne IPv6 gebruik: Voorkom die skepping van eksterne IPv6 subnetwerke, wat aan nie-geautoriseerde internet toegang blootgestel kan word.
IAM Rolle
Hierdie is soos IAM beleide in AWS aangesien elke rol ’n stel toestemmings bevat.
Echter, anders as in AWS, is daar geen gesentraliseerde repo van rolle nie. In plaas daarvan, gee hulpbronne X toegang rolle aan Y prinsipes, en die enigste manier om uit te vind wie toegang tot ’n hulpbron het, is om die get-iam-policy metode oor daardie hulpbron te gebruik.
Dit kan ’n probleem wees omdat dit beteken dat die enigste manier om uit te vind watter toestemmings ’n prinsipe het, is om elke hulpbron te vra wie dit toestemming gee, en ’n gebruiker mag nie toestemming hê om toestemming van alle hulpbronne te kry nie.
Daar is drie tipes rolle in IAM:
- Basiese/Primitive rolle, wat die Eienaar, Redigeerder, en Kykers rolle insluit wat voor die bekendstelling van IAM bestaan het.
- Vooraf gedefinieerde rolle, wat fyn toegang bied vir ’n spesifieke diens en deur Google Cloud bestuur word. Daar is baie vooraf gedefinieerde rolle, jy kan almal daarvan met die voorregte wat hulle het hier sien.
- Pasgemaakte rolle, wat fyn toegang bied volgens ’n gebruiker-gespesifiseerde lys van toestemmings.
Daar is duisende toestemmings in GCP. Om te kyk of ’n rol ’n toestemming het, kan jy hier die toestemming soek en sien watter rolle dit het.
Jy kan ook hier vooraf gedefinieerde rolle soek wat deur elke produk aangebied word. Let daarop dat sommige rolle nie aan gebruikers geheg kan word nie en slegs aan SA’s omdat sommige toestemmings wat hulle bevat.
Boonop, let daarop dat toestemmings slegs in werking sal tree as hulle aan die relevante diens geheg is.
Of kyk of ’n pasgemaakte rol ’n spesifieke toestemming hier kan gebruik.
GCP - IAM, Principals & Org Policies Enum
Gebruikers
In GCP-konsol is daar geen Gebruikers of Groepe bestuur nie, dit word in Google Workspace gedoen. Alhoewel jy ’n ander identiteitsverskaffer in Google Workspace kan sinkroniseer.
Jy kan Workspaces gebruikers en groepe in https://admin.google.com benader.
MFA kan gedwonge word vir Workspaces gebruikers, egter, ’n aanvaller kan ’n token gebruik om GCP via cli te benader wat nie deur MFA beskerm sal word nie (dit sal slegs deur MFA beskerm word wanneer die gebruiker aanmeld om dit te genereer: gcloud auth login).
Groepe
Wanneer ’n organisasie geskep word, word verskeie groepe sterk aanbeveel om geskep te word. As jy enige van hulle bestuur, mag jy al die of ’n belangrike deel van die organisasie gecompromitteer het:
| Groep | Funksie |
gcp-organization-admins(groep of individuele rekeninge benodig vir kontrolelys) | Bestuur enige hulpbron wat aan die organisasie behoort. Ken hierdie rol spaarzaam toe; org admins het toegang tot al jou Google Cloud hulpbronne. Alternatiewelik, omdat hierdie funksie hoogs bevoeg is, oorweeg om individuele rekeninge te gebruik eerder as om 'n groep te skep. |
gcp-network-admins(benodig vir kontrolelys) | Skep netwerke, subnetwerke, vuurmuur reëls, en netwerk toestelle soos Cloud Router, Cloud VPN, en wolk laaibalansers. |
gcp-billing-admins(benodig vir kontrolelys) | Stel faktuur rekeninge op en monitor hul gebruik. |
gcp-developers(benodig vir kontrolelys) | Ontwerp, kodeer, en toets toepassings. |
gcp-security-admins | Stel en bestuur sekuriteitsbeleide vir die hele organisasie, insluitend toegang bestuur en organisasie beperking beleide. Sien die Google Cloud sekuriteitsfondasies gids vir meer inligting oor die beplanning van jou Google Cloud sekuriteitsinfrastruktuur. |
gcp-devops | Skep of bestuur end-to-end pyplyne wat deurlopende integrasie en aflewering, monitering, en stelsels voorsiening ondersteun. |
gcp-logging-admins | |
gcp-logging-viewers | |
gcp-monitor-admins | |
gcp-billing-viewer(nie meer standaard nie) | Monitor die besteding op projekte. Tipiese lede is deel van die finansiële span. |
gcp-platform-viewer(nie meer standaard nie) | Herbekend hulpbron inligting oor die Google Cloud organisasie. |
gcp-security-reviewer(nie meer standaard nie) | Herbekend wolk sekuriteit. |
gcp-network-viewer(nie meer standaard nie) | Herbekend netwerk konfigurasies. |
grp-gcp-audit-viewer(nie meer standaard nie) | Bekyk oudit logs. |
gcp-scc-admin(nie meer standaard nie) | Bestuur Sekuriteitsopdrag Sentrum. |
gcp-secrets-admin(nie meer standaard nie) | Bestuur geheime in Secret Manager. |
HackTricks Cloud


.png)
.png)