GCP - Compute Privesc

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Rekenaar

Vir meer inligting oor Rekenaar en VPC (netwerk) in GCP, kyk:

pageGCP - Compute Enum

compute.projects.setCommonInstanceMetadata

Met daardie toestemming kan jy die metadata-inligting van 'n instansie wysig en die geautoriseerde sleutels van 'n gebruiker verander, of 'n nuwe gebruiker met sudo-regte skep. Daarom sal jy in staat wees om via SSH in te voer na enige VM-instansie en die GCP-diensrekening wat die Instansie gebruik, te steel. Beperkings:

  • Let daarop dat GCP-diensrekeninge wat standaard in VM-instansies loop, 'n baie beperkte omvang het

  • Jy sal in staat moet wees om die SSH-bediener te kontak om in te teken

Vir meer inligting oor hoe om hierdie toestemming te misbruik, kyk:

pageGCP - Add Custom SSH Metadata

compute.instances.setMetadata

Hierdie toestemming gee dieselfde regte as die vorige toestemming, maar oor spesifieke instansies in plaas van 'n hele projek. Dieselfde aanvalle en beperkings as vir die vorige afdeling geld.

compute.instances.setIamPolicy

Hierdie soort toestemming sal jou in staat stel om jouself 'n rol met die vorige regte toe te ken en priviliges te eskaleer deur dit te misbruik.

compute.instances.osLogin

As OSLogin geaktiveer is in die instansie, met hierdie toestemming kan jy net gcloud compute ssh [INSTANSIE] hardloop en aan die instansie koppel. Jy sal nie root-regte binne die instansie hê nie.

compute.instances.osAdminLogin

As OSLogin geaktiveer is in die instansie, met hierdie toestemming kan jy net gcloud compute ssh [INSTANSIE] hardloop en aan die instansie koppel. Jy sal root-regte binne die instansie hê.

compute.instances.create,iam.serviceAccounts.actAs, compute.disks.create, compute.instances.create, compute.instances.setMetadata, compute.instances.setServiceAccount, compute.subnetworks.use, compute.subnetworks.useExternalIp

Dit is moontlik om 'n virtuele masjien te skep met 'n toegewysde Diensrekening en die token van die diensrekening te steel deur toegang tot die metadata te verkry om priviliges daartoe te eskaleer.

Die aanvalskrip vir hierdie metode kan hier gevind word hier.

osconfig.patchDeployments.create | osconfig.patchJobs.exec

As jy die osconfig.patchDeployments.create of osconfig.patchJobs.exec toestemmings het, kan jy 'n patch-job of -implementering skep. Dit sal jou in staat stel om lateraal in die omgewing te beweeg en kode-uitvoering op al die rekenaarinstansies binne 'n projek te verkry.

As jy hierdie handmatig wil misbruik, sal jy een van die volgende moet skep: 'n patch-job of 'n implementering vir 'n patch-job hardloop:

gcloud compute os-config patch-jobs execute --file=patch.json

Om 'n patch-implementering te implementeer:

gcloud compute os-config patch-deployments create my-update --file=patch.json

Geoutomatiseerde gereedskap soos patchy bestaan om lakse toestemmings op te spoor en outomaties lateraal te beweeg.

Jy kan dit ook misbruik vir volharding.

compute.machineImages.setIamPolicy

Ken jouself ekstra regte toe tot rekenaarbeeld.

compute.snapshots.setIamPolicy

Ken jouself ekstra regte toe tot 'n skyf-snapshot.

compute.disks.setIamPolicy

Ken jouself ekstra regte toe tot 'n skyf.

Bypass Toegangsbereik

Deur hierdie skakel te volg, vind jy 'n paar idees om te probeer om toegangsbereike te omseil.

Plaaslike Privilege-escalasie in GCP Rekenaarinstansie

pageGCP - local privilege escalation ssh pivoting

Verwysings

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Last updated