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)
Um Zugriff auf die Github Actions von einem Github-Repo auf ein GCP Dienstkonto zu gewähren, sind die folgenden Schritte erforderlich:
Erstellen Sie das Dienstkonto, um von Github Actions mit den gewünschten Berechtigungen zuzugreifen:
Erstellen Sie einen neuen Workload-Identitätspool:
Erstellen Sie einen neuen Workload Identity Pool OIDC-Anbieter, der github actions vertraut (nach Org/Repo-Namen in diesem Szenario):
Schließlich erlauben Sie dem Principal vom Anbieter, einen Dienst-Principal zu verwenden:
Beachten Sie, dass wir im vorherigen Mitglied den org-name/repo-name
als Bedingungen angeben, um auf das Dienstkonto zugreifen zu können (andere Parameter, die es einschränkender machen, wie der Branch, könnten ebenfalls verwendet werden).
Es ist jedoch auch möglich, allen GitHub-Zugriff auf das Dienstkonto zu gewähren, indem man einen Anbieter wie den folgenden mit einem Platzhalter erstellt:
In diesem Fall könnte jeder auf das Dienstkonto von GitHub Actions zugreifen, daher ist es wichtig, immer zu überprüfen, wie das Mitglied definiert ist. Es sollte immer etwas sein wie:
attribute.{custom_attribute}
:principalSet://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/attribute.{custom_attribute}/{value}
Denken Sie daran, ${providerId}
und ${saId}
durch ihre jeweiligen Werte zu ersetzen:
Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)