GCP - Cloudfunctions Privesc
cloudfunctions
Meer inligting oor Cloud Functions:
GCP - Cloud Functions Enumcloudfunctions.functions.create
, cloudfunctions.functions.sourceCodeSet
, iam.serviceAccounts.actAs
cloudfunctions.functions.create
, cloudfunctions.functions.sourceCodeSet
, iam.serviceAccounts.actAs
'n Aanvaller met hierdie regte kan 'n nuwe Cloud Function skep met willekeurige (skadelike) kode en dit 'n Diensrekening toewys. Vervolgens kan die Diensrekening-token uit die metadata gelek word om voorregte daaraan te verhoog. Sekere regte om die funksie te trigger kan vereis word.
Exploit-skripte vir hierdie metode kan hier gevind word here en here en die voorafgeboude .zip-lêer kan hier gevind word here.
cloudfunctions.functions.update
, cloudfunctions.functions.sourceCodeSet
, iam.serviceAccounts.actAs
cloudfunctions.functions.update
, cloudfunctions.functions.sourceCodeSet
, iam.serviceAccounts.actAs
'n Aanvaller met hierdie regte kan die kode van 'n Funksie wysig en selfs die diensrekening wat daaraan geheg is, wysig met die doel om die token uit te skakel. Sekere regte om die funksie te trigger kan vereis word.
Die exploit-skrip vir hierdie metode kan hier gevind word here.
cloudfunctions.functions.sourceCodeSet
cloudfunctions.functions.sourceCodeSet
Met hierdie toestemming kan jy 'n ondertekende URL kry om 'n lêer na 'n funksie se emmer te kan oplaai (maar die kode van die funksie sal nie verander nie, jy moet dit steeds opdateer)
Nie regtig seker hoe nuttig hierdie toestemming is vanuit 'n aanvaller se perspektief nie, maar goed om te weet.
cloudfunctions.functions.setIamPolicy
, iam.serviceAccounts.actAs
cloudfunctions.functions.setIamPolicy
, iam.serviceAccounts.actAs
Gee jouself enige van die vorige .update
of .create
voorregte om te eskaleer.
cloudfunctions.functions.update
cloudfunctions.functions.update
Om net cloudfunctions
toestemmings te hê, sonder iam.serviceAccounts.actAs
sal jy nie in staat wees om die funksie by te werk NIE DIT IS DUS NIE 'N GELDIGE PRIVILEGE-ESKALASIE NIE.
Emmertoestemmings
'n Aanvaller met skryftoestemmings oor die emmer waar die Cloud Functions-kode gestoor word, sal in staat wees om die kode te verander deur die function_code.zip
te oorskryf en sal in staat wees om willekeurige kode uit te voer sodra dit uitgevoer word.
Verwysings
Last updated