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
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
orgpolicy
orgpolicy.policy.set
Атакуючий, використовуючи orgpolicy.policy.set, може змінювати організаційні політики, що дозволяє йому знімати певні обмеження, які перешкоджають виконанню конкретних операцій. Наприклад, обмеження appengine.disableCodeDownload зазвичай блокує завантаження вихідного коду App Engine. Однак за допомогою orgpolicy.policy.set атакуючий може деактивувати це обмеження і тим самим отримати можливість завантажити вихідний код, навіть якщо він спочатку був захищений.
Отримати інформацію про org policy і вимкнути її примусове застосування
```bash # Get info gcloud resource-manager org-policies describeDisable
gcloud resource-manager org-policies disable-enforce
</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
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
HackTricks Cloud

