GCP - Cloudbuild Privesc
cloudbuild
Vir meer inligting oor Cloud Build, kyk:
GCP - Cloud Build Enumcloudbuild.builds.create
cloudbuild.builds.create
Met hierdie toestemming kan jy 'n wolkbou indien. Die cloudbuild-masjien sal standaard 'n token van die cloudbuild-diensrekening in sy lêerstelsel hê: <PROJECT_NUMBER>@cloudbuild.gserviceaccount.com
. Jy kan egter enige diensrekening binne die projek aandui in die cloudbuild-konfigurasie.
Daarom kan jy net die masjien laat eksfiltreer na jou bediener die token of 'n omgekeerde dop binne-in kry en jouself die token kry (die lêer wat die token bevat, kan verander).
Jy kan die oorspronklike uitbuitingskrip hier op GitHub vind (maar die plek waar dit die token vandaan neem, het nie vir my gewerk nie). Kyk dus na 'n krip om die skepping, uitbuiting en skoonmaak van 'n kwesbare omgewing outomaties te maak hier en 'n Python-krip om 'n omgekeerde dop binne die cloudbuild-masjien te kry en steel dit hier (in die kode kan jy sien hoe om ander diensrekeninge te spesifiseer).
Vir 'n meer diepgaande verduideliking, besoek https://rhinosecuritylabs.com/gcp/iam-privilege-escalation-gcp-cloudbuild/
cloudbuild.builds.update
cloudbuild.builds.update
Moontlik met hierdie toestemming sal jy in staat wees om 'n wolkbou te opdateer en net die diensrekening-token te steel soos dit gedoen is met die vorige toestemming (maar ongelukkig kon ek op die tyd van hierdie skrywe nie 'n manier vind om daardie API te roep nie).
TODO
cloudbuild.repositories.accessReadToken
cloudbuild.repositories.accessReadToken
Met hierdie toestemming kan die gebruiker die leestoegangstoken kry wat gebruik word om toegang tot die argief te verkry:
cloudbuild.repositories.accessReadWriteToken
cloudbuild.repositories.accessReadWriteToken
Met hierdie toestemming kan die gebruiker die lees- en skryftoegangstoken kry wat gebruik word om toegang tot die argief te verkry:
Last updated