GCP - Compute Instances

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

Basic Information

Google Cloud Compute Instances is pasgemaakte virtuele masjiene op Google se wolkinfrastruktuur, wat skaalbare en op aanvraag rekenkrag bied vir ’n wye verskeidenheid toepassings. Hulle bied funksies soos globale ontplooiing, volhoubare berging, buigsame OS-keuses, en sterk netwerk- en sekuriteitsintegrasies, wat hulle ’n veelsydige keuse maak vir die gasheer van webwerwe, verwerking van data, en doeltreffende uitvoering van toepassings in die wolk.

Confidential VM

Confidential VMs gebruik hardeware-gebaseerde sekuriteitskenmerke wat aangebied word deur die nuutste generasie van AMD EPYC verwerkers, wat geheue-enkripsie en veilige geënkripteerde virtualisering insluit. Hierdie kenmerke stel die VM in staat om die data wat verwerk en gestoor word binne-in dit te beskerm teen selfs die gasheerbedryfstelsel en hypervisor.

Om ’n Confidential VM te laat loop, mag dit nodig wees om dinge soos die tipe van die masjien, netwerk koppelvlak, opstartskyfbeeld te verander.

Disk & Disk Encryption

Dit is moontlik om die skyf te kies om te gebruik of ’n nuwe een te skep. As jy ’n nuwe een kies, kan jy:

  • Die grootte van die skyf kies
  • Die OS kies
  • Aangee of jy die skyf wil verwyder wanneer die instansie verwyder word
  • Enkripsie: Deur verstek sal ’n Google bestuurde sleutel gebruik word, maar jy kan ook ’n sleutel van KMS kies of ’n rauwe sleutel om te gebruik aandui.

Deploy Container

Dit is moontlik om ’n houer binne die virtuele masjien te ontplooi.
Dit is moontlik om die beeld te konfigureer om te gebruik, die opdrag in te stel om binne-in te loop, argumente, ’n volume te monteer, en omgewingsveranderlikes (sensitiewe inligting?) en verskeie opsies vir hierdie houer te konfigureer soos om as privilegied uit te voer, stdin en pseudo TTY.

Service Account

Deur verstek sal die Compute Engine standaard diensrekening gebruik word. Die e-pos van hierdie SA is soos: <proj-num>-compute@developer.gserviceaccount.com
Hierdie diensrekening het Redigeerder rol oor die hele projek (hoë voorregte).

En die standaard toegangskope is die volgende:

Dit is egter moontlik om dit cloud-platform met ’n klik toe te ken of aangepaste te spesifiseer.

Firewall

Dit is moontlik om HTTP en HTTPS verkeer toe te laat.

Networking

  • IP Forwarding: Dit is moontlik om IP forwarding in te skakel vanaf die skepping van die instansie.
  • Hostname: Dit is moontlik om die instansie ’n permanente hostname te gee.
  • Interface: Dit is moontlik om ’n netwerk koppelvlak by te voeg.

Extra Security

Hierdie opsies sal die sekuriteit van die VM verhoog en word aanbeveel:

  • Secure boot: Secure boot help om jou VM instansies teen opstart- en kernvlak malware en rootkits te beskerm.
  • Enable vTPM: Virtual Trusted Platform Module (vTPM) valideer jou gas VM se pre-boot en boot integriteit, en bied sleutelgenerasie en beskerming.
  • Integrity supervision: Integriteitsmonitering laat jou toe om die tydelike opstartintegriteit van jou beskermde VM instansies te monitor en te verifieer met behulp van Stackdriver-verslae. Vereis dat vTPM geaktiveer moet wees.

VM Access

Die algemene manier om toegang tot die VM te verkry, is deur sekere SSH publieke sleutels toe te laat om toegang tot die VM te verkry.
Dit is egter ook moontlik om die toegang tot die VM via os-config diens met IAM in te skakel. Boonop is dit moontlik om 2FA in te skakel om toegang tot die VM te verkry met behulp van hierdie diens.
Wanneer hierdie diens geaktiveer is, is die toegang via SSH sleutels gedeaktiveer.

Metadata

Dit is moontlik om outomatisering (userdata in AWS) te definieer wat shell-opdragte is wat elke keer uitgevoer sal word wanneer die masjien aanskakel of herbegin.

Dit is ook moontlik om bykomende metadata sleutel-waarde waardes toe te voeg wat vanaf die metadata eindpunt toeganklik gaan wees. Hierdie inligting word algemeen gebruik vir omgewingsveranderlikes en opstart/afskakel skripte. Dit kan verkry word met behulp van die describe metode van ’n opdrag in die enumerasie afdeling, maar dit kan ook van binne die instansie verkry word deur die metadata eindpunt te benader.

# view project metadata
curl "http://metadata.google.internal/computeMetadata/v1/project/attributes/?recursive=true&alt=text" \
-H "Metadata-Flavor: Google"

# view instance metadata
curl "http://metadata.google.internal/computeMetadata/v1/instance/attributes/?recursive=true&alt=text" \
-H "Metadata-Flavor: Google"

Boonop is die auth token vir die aangehegte diensrekening en algemene inligting oor die instansie, netwerk en projek ook beskikbaar vanaf die metadata-eindpunt. Vir meer inligting, kyk:

Cloud SSRF - HackTricks

Enkripsie

’n Google-beheerde enkripsiesleutel word standaard gebruik, maar ’n Klant-beheerde enkripsiesleutel (CMEK) kan gekonfigureer word. Jy kan ook konfigureer wat om te doen wanneer die gebruikte CMEK herroep word: Noting of die VM afsluit.

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