GCP - Compute Privesc
Compute
Kwa maelezo zaidi kuhusu Compute na VPC (mtandao) katika GCP angalia:
GCP - Compute EnumKumbuka kwamba ili kufanya mashambulizi yote ya kupandisha hadhi yanayohitaji kubadilisha metadata ya mfano (kama kuongeza watumiaji wapya na funguo za SSH) ni muhimu kuwa na ruhusa za actAs
juu ya SA iliyoambatanishwa na mfano, hata kama SA tayari imeambatanishwa!
compute.projects.setCommonInstanceMetadata
compute.projects.setCommonInstanceMetadata
Kwa ruhusa hiyo unaweza kubadilisha taarifa za metadata za mfano na kubadilisha funguo zilizoidhinishwa za mtumiaji, au kuunda mtumiaji mpya mwenye ruhusa za sudo. Hivyo, utaweza kuingia kupitia SSH kwenye mfano wowote wa VM na kuiba Akaunti ya Huduma ya GCP ambayo Mfano unatumia. Vikwazo:
Kumbuka kwamba Akaunti za Huduma za GCP zinazotumika katika mifano ya VM kwa kawaida zina mipaka finyu sana
Itabidi uwe na uwezo wa kuwasiliana na seva ya SSH ili kuingia
Kwa maelezo zaidi kuhusu jinsi ya kutumia ruhusa hii angalia:
GCP - Add Custom SSH MetadataUnaweza pia kufanya shambulizi hili kwa kuongeza skripti mpya za kuanzisha na kuanzisha upya mfano:
compute.instances.setMetadata
compute.instances.setMetadata
Ruhusa hii inatoa privilege sawa na ruhusa ya awali lakini juu ya instances maalum badala ya mradi mzima. Mizaha na mipaka sawa na ile ya sehemu ya awali inatumika.
compute.instances.setIamPolicy
compute.instances.setIamPolicy
Aina hii ya ruhusa itakuruhusu kujipa jukumu na ruhusa za awali na kupandisha privileges kwa kuzitumia.
compute.instances.osLogin
compute.instances.osLogin
Ikiwa OSLogin imewezeshwa katika instance, kwa ruhusa hii unaweza tu kukimbia gcloud compute ssh [INSTANCE]
na kuungana na instance. Huta kuwa na root privs ndani ya instance.
Ili kuingia kwa mafanikio na ruhusa hii ndani ya VM instance, unahitaji kuwa na ruhusa ya iam.serviceAccounts.actAs
juu ya SA iliyoambatanishwa na VM.
compute.instances.osAdminLogin
compute.instances.osAdminLogin
Ikiwa OSLogin imewezeshwa katika instance, kwa ruhusa hii unaweza tu kukimbia gcloud compute ssh [INSTANCE]
na kuungana na instance. Utakuwa na root privs ndani ya instance.
Ili kuingia kwa mafanikio na ruhusa hii ndani ya VM instance, unahitaji kuwa na ruhusa ya iam.serviceAccounts.actAs
juu ya SA iliyoambatanishwa na VM.
compute.instances.create
,iam.serviceAccounts.actAs, compute.disks.create
, compute.instances.create
, compute.instances.setMetadata
, compute.instances.setServiceAccount
, compute.subnetworks.use
, compute.subnetworks.useExternalIp
compute.instances.create
,iam.serviceAccounts.actAs, compute.disks.create
, compute.instances.create
, compute.instances.setMetadata
, compute.instances.setServiceAccount
, compute.subnetworks.use
, compute.subnetworks.useExternalIp
Inawezekana kuunda mashine ya virtual na Akaunti ya Huduma iliyotolewa na kuiba tokeni ya akaunti ya huduma kwa kufikia metadata ili kupandisha privileges kwake.
Script ya exploit kwa njia hii inaweza kupatikana hapa.
osconfig.patchDeployments.create
| osconfig.patchJobs.exec
osconfig.patchDeployments.create
| osconfig.patchJobs.exec
Ikiwa una osconfig.patchDeployments.create
au osconfig.patchJobs.exec
ruhusa unaweza kuunda kazi ya patch au usambazaji. Hii itakuruhusu kuhamasisha kwa upande katika mazingira na kupata utekelezaji wa msimbo kwenye instances zote za compute ndani ya mradi.
Kumbuka kwamba kwa sasa huhitaji ruhusa ya actAs
juu ya SA iliyoambatanishwa na instance.
Ikiwa unataka kutumia hii kwa mikono utahitaji kuunda ama kazi ya patch au usambazaji. Ili kukimbia kazi ya patch:
Ili kupeleka usasishaji wa patch:
The tool patchy inaweza kutumika zamani kwa ajili ya kutumia hii misconfiguration (lakini sasa haifanyi kazi).
Mshambuliaji anaweza pia kutumia hii kwa kudumu.
compute.machineImages.setIamPolicy
compute.machineImages.setIamPolicy
Jipatie ruhusa za ziada kwa picha ya kompyuta.
compute.snapshots.setIamPolicy
compute.snapshots.setIamPolicy
Jipatie ruhusa za ziada kwa picha ya diski.
compute.disks.setIamPolicy
compute.disks.setIamPolicy
Jipatie ruhusa za ziada kwa diski.
Bypass Access Scopes
Kwa kufuata kiungo hiki utapata baadhi ya wazo za kujaribu kupita mipaka ya ufikiaji.
Local Privilege Escalation in GCP Compute instance
GCP - local privilege escalation ssh pivotingReferences
Last updated