GCP - Federation Abuse
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Щоб надати доступ до Github Actions з репозиторію Github до облікового запису сервісу GCP, необхідні наступні кроки:
Створіть обліковий запис сервісу для доступу з github actions з бажаними правами:
Створити новий пул ідентичності робочого навантаження:
Створіть новий пул ідентичності робочого навантаження OIDC постачальника, який довіряє github actions (за назвою org/repo в цьому сценарії):
Нарешті, дозвольте принципалу з постачальника використовувати сервісний принципал:
Зверніть увагу, що в попередньому члені ми вказуємо org-name/repo-name
як умови для доступу до облікового запису служби (інші параметри, які роблять його більш обмеженим, такі як гілка, також можуть бути використані).
Однак також можливо дозволити всім github доступ до облікового запису служби, створивши провайдера, як показано нижче, використовуючи підстановочний знак:
У цьому випадку будь-хто міг би отримати доступ до облікового запису служби з github actions, тому важливо завжди перевіряти, як визначено учасника. Це завжди має бути щось на зразок:
attribute.{custom_attribute}
:principalSet://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/attribute.{custom_attribute}/{value}
Не забудьте змінити ${providerId}
та ${saId}
на їх відповідні значення:
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)