GCP - Cloudfunctions Privesc
cloudfunctions
Додаткова інформація про Cloud Functions:
pageGCP - Cloud Functions Enumcloudfunctions.functions.create
, cloudfunctions.functions.sourceCodeSet
, iam.serviceAccounts.actAs
cloudfunctions.functions.create
, cloudfunctions.functions.sourceCodeSet
, iam.serviceAccounts.actAs
Атакувальник з цими привілеями може створити нову Cloud Function з довільним (зловмисним) кодом та призначити їй обліковий запис служби. Потім витікати токен облікового запису служби з метаданих для підвищення привілеїв до нього. Можливо, потрібні деякі привілеї для запуску функції.
Скрипти експлойту для цього методу можна знайти тут та тут, а попередньо побудований файл .zip можна знайти тут.
cloudfunctions.functions.update
, cloudfunctions.functions.sourceCodeSet
, iam.serviceAccounts.actAs
cloudfunctions.functions.update
, cloudfunctions.functions.sourceCodeSet
, iam.serviceAccounts.actAs
Атакувальник з цими привілеями може змінити код функції та навіть змінити прикріплений обліковий запис з метою витікання токена. Можливо, потрібні деякі привілеї для запуску функції.
Скрипт експлойту для цього методу можна знайти тут.
cloudfunctions.functions.sourceCodeSet
cloudfunctions.functions.sourceCodeSet
З цим дозволом ви можете отримати підписаний URL для завантаження файлу в бакет функції (але код функції не буде змінено, вам все ще потрібно оновити його)
Не дуже впевнений, наскільки корисний цей дозвіл з точки зору атакувальника, але добре знати.
cloudfunctions.functions.setIamPolicy
, iam.serviceAccounts.actAs
cloudfunctions.functions.setIamPolicy
, iam.serviceAccounts.actAs
Надайте собі будь-які з попередніх привілеїв .update
або .create
для ескалації.
cloudfunctions.functions.update
cloudfunctions.functions.update
Маючи лише дозволи cloudfunctions
, без iam.serviceAccounts.actAs
, ви не зможете оновити функцію, ТОМУ ЦЕ НЕ Є ДІЙСНОЮ ПІДВИЩЕННЯМ ПРИВІЛЕГІЙ.
Дозволи на запис у кошику
Атакувальник з дозволами на запис у кошику, де зберігається код Cloud Functions, зможе змінювати код, перезаписуючи function_code.zip
і зможе виконувати довільний код після виконання.
Посилання
Last updated