GCP - Federation Abuse
OIDC - Github Actions Abuse
GCP
Aby dać dostęp do Github Actions z repozytorium Github do konta usługi GCP, należy wykonać następujące kroki:
Utwórz Konto Usługi do uzyskania dostępu z github actions z pożądanymi uprawnieniami:
Wygeneruj nową pulę tożsamości obciążenia:
Wygeneruj nowego dostawcę OIDC puli tożsamości obciążenia który ufa akcjom github (na podstawie nazwy org/repo w tym scenariuszu):
W końcu, zezwól głównemu z dostawcy na użycie głównego usługi:
Zauważ, że w poprzednim członku określamy org-name/repo-name
jako warunki, aby uzyskać dostęp do konta usługi (inne parametry, które czynią to bardziej restrykcyjnym, takie jak gałąź, mogą być również używane).
Jednak możliwe jest również zezwolenie wszystkim github na dostęp do konta usługi, tworząc dostawcę, takiego jak poniższy, używając symbolu wieloznacznego:
W tym przypadku każdy mógłby uzyskać dostęp do konta usługi z github actions, dlatego ważne jest, aby zawsze sprawdzać, jak zdefiniowany jest członek. Powinno to być zawsze coś takiego:
attribute.{custom_attribute}
:principalSet://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/attribute.{custom_attribute}/{value}
Github
Pamiętaj, aby zmienić ${providerId}
i ${saId}
na ich odpowiednie wartości:
Last updated