GCP - Orgpolicy Privesc

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

orgpolicy

orgpolicy.policy.set

Атакуючий, використовуючи orgpolicy.policy.set, може змінювати організаційні політики, що дозволяє йому знімати певні обмеження, які перешкоджають виконанню конкретних операцій. Наприклад, обмеження appengine.disableCodeDownload зазвичай блокує завантаження вихідного коду App Engine. Однак за допомогою orgpolicy.policy.set атакуючий може деактивувати це обмеження і тим самим отримати можливість завантажити вихідний код, навіть якщо він спочатку був захищений.

Отримати інформацію про org policy і вимкнути її примусове застосування ```bash # Get info gcloud resource-manager org-policies describe [--folder | --organization | --project ]

Disable

gcloud resource-manager org-policies disable-enforce [–folder | –organization | –project ]

</details>

Python-скрипт для цього методу можна знайти [тут](https://github.com/RhinoSecurityLabs/GCP-IAM-Privilege-Escalation/blob/master/ExploitScripts/orgpolicy.policy.set.py).

### `orgpolicy.policy.set`, `iam.serviceAccounts.actAs`

Зазвичай неможливо прикріпити service account із іншого проекту до ресурсу, оскільки застосовується обмеження політики під назвою **`iam.disableCrossProjectServiceAccountUsage`**, яке перешкоджає цій дії.

Можна перевірити, чи застосовується це обмеження, виконавши наступну команду:

<details>
<summary>Перевірити обмеження на використання service account із інших проектів</summary>
```bash
gcloud resource-manager org-policies describe \
constraints/iam.disableCrossProjectServiceAccountUsage \
--project=<project-id> \
--effective

booleanPolicy:
enforced: true
constraint: constraints/iam.disableCrossProjectServiceAccountUsage

Це перешкоджає нападникові зловживати дозволом iam.serviceAccounts.actAs для видавання себе за service account з іншого проекту без необхідних додаткових інфраструктурних дозволів, наприклад для запуску нового VM, що могло б призвести до підвищення привілеїв.

Однак нападник з дозволом orgpolicy.policy.set може обійти це обмеження, вимкнувши обмеження iam.disableServiceAccountProjectWideAccess. Це дозволяє нападникові приєднати service account з іншого проекту до ресурсу у своєму проекті, фактично підвищуючи свої привілеї.

Вимкнення обмеження для використання service account між проектами ```bash gcloud resource-manager org-policies disable-enforce \ iam.disableCrossProjectServiceAccountUsage \ --project= ```

Посилання

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