AWS - Federation Abuse
SAML
Für Informationen zu SAML siehe:
Um eine Identitätsföderation über SAML zu konfigurieren, müssen Sie lediglich einen Namen und das Metadaten-XML bereitstellen, das alle SAML-Konfigurationen enthält (Endpunkte, Zertifikat mit öffentlichem Schlüssel)
OIDC - Github Actions Missbrauch
Um eine Github-Action als Identitätsanbieter hinzuzufügen:
Wählen Sie für Anbietertyp OpenID Connect aus.
Geben Sie für Anbieter-URL
https://token.actions.githubusercontent.com
ein.Klicken Sie auf Thumbprint abrufen, um den Thumbprint des Anbieters zu erhalten.
Geben Sie für Zielgruppe
sts.amazonaws.com
ein.Erstellen Sie eine neue Rolle mit den Berechtigungen, die die Github-Action benötigt, und einer Vertrauensrichtlinie, die dem Anbieter vertraut, z. B.:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws:iam::0123456789:oidc-provider/token.actions.githubusercontent.com" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "token.actions.githubusercontent.com:sub": [ "repo:ORG_OR_USER_NAME/REPOSITORY:pull_request", "repo:ORG_OR_USER_NAME/REPOSITORY:ref:refs/heads/main" ], "token.actions.githubusercontent.com:aud": "sts.amazonaws.com" } } } ] }
OIDC - EKS Missbrauch
Es ist möglich, OIDC-Anbieter in einem EKS-Cluster zu generieren, indem einfach die OIDC-URL des Clusters als neuen OpenID-Identitätsanbieter festgelegt wird. Dies ist eine häufige Standardrichtlinie:
Diese Richtlinie gibt korrekt an, dass nur der EKS-Cluster mit der ID 20C159CDF6F2349B68846BEC03BE031B
die Rolle übernehmen kann. Es wird jedoch nicht angegeben, welcher Dienstkontoname dies übernehmen kann, was bedeutet, dass JEDES Dienstkonto mit einem Web-Identitätstoken die Rolle übernehmen kann.
Um anzugeben, welches Dienstkonto die Rolle übernehmen darf, muss eine Bedingung angegeben werden, in der der Dienstkontoname angegeben ist, wie zum Beispiel:
Referenzen
Last updated