GCP - Cloud Build Unauthenticated Enum

Reading time: 3 minutes

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Вивчайте та практикуйте Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Підтримка HackTricks

Cloud Build

Для отримання додаткової інформації про Cloud Build перегляньте:

GCP - Cloud Build Enum

cloudbuild.yml

Якщо ви отримали доступ до запису на репозиторій, що містить файл з назвою cloudbuild.yml, ви могли б внедрити зловмисний код в цей файл, який вказує на команди, що будуть виконані всередині Cloud Build, і ексфільтрувати секрети, скомпрометувати те, що робиться, а також скомпрометувати обліковий запис служби Cloud Build.

note

Зверніть увагу, що GCP має можливість дозволити адміністраторам контролювати виконання системи збірки з зовнішніх PR через "Comment Control". Comment Control - це функція, де співпрацівники/власники проекту повинні прокоментувати “/gcbrun”, щоб запустити збірку проти PR, і використання цієї функції в принципі запобігає будь-кому в Інтернеті запускати ваші системи збірки.

Для деякої пов'язаної інформації ви можете переглянути сторінку про те, як атакувати Github Actions (схоже на це):

Abusing Github Actions

PR Approvals

Коли тригером є PR, оскільки будь-хто може виконувати PR до публічних репозиторіїв, було б дуже небезпечно просто дозволити виконання тригера з будь-яким PR. Тому за замовчуванням виконання буде автоматичним лише для власників і співпрацівників, і для виконання тригера з PR інших користувачів власник або співпрацівник повинен прокоментувати /gcbrun.

caution

Тому, якщо це встановлено на Not required, зловмисник може виконати PR до гілки, що запустить виконання, додавши зловмисний код до файлу cloudbuild.yml і скомпрометувати виконання cloudbuild (зверніть увагу, що cloudbuild завантажить код З PR, тому він виконає зловмисний cloudbuild.yml).

Більше того, легко побачити, чи потрібно виконати деяке виконання cloudbuild, коли ви надсилаєте PR, оскільки це з'являється в Github:

warning

Тоді, навіть якщо cloudbuild не виконується, зловмисник зможе побачити назву проекту GCP, що належить компанії.

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Вивчайте та практикуйте Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Підтримка HackTricks