AWS - Federation Abuse
SAML
Per informazioni su SAML consulta:
Per configurare una Federazione di Identità tramite SAML è sufficiente fornire un nome e il metadata XML contenente tutta la configurazione SAML (endpoint, certificato con chiave pubblica)
OIDC - Abuso delle Azioni di Github
Per aggiungere un'azione di github come provider di identità:
Per il Tipo di Provider, seleziona OpenID Connect.
Per l'URL del Provider, inserisci
https://token.actions.githubusercontent.com
Clicca su Ottieni impronta per ottenere l'impronta del provider
Per Pubblico destinatario, inserisci
sts.amazonaws.com
Crea un nuovo ruolo con i permessi necessari all'azione di github e una politica di trust che si fidi del provider come:
{ "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" } } } ] }
Abuso di OIDC - EKS
È possibile generare provider OIDC in un cluster EKS semplicemente impostando l'URL OIDC del cluster come un nuovo provider di identità Open ID. Questa è una politica predefinita comune:
Questo policy indica correttamente che solo il cluster EKS con id 20C159CDF6F2349B68846BEC03BE031B
può assumere il ruolo. Tuttavia, non specifica quale account di servizio può assumerlo, il che significa che qualsiasi account di servizio con un token di identità web sarà in grado di assumere il ruolo.
Per specificare quale account di servizio dovrebbe essere in grado di assumere il ruolo, è necessario specificare una condizione in cui viene specificato il nome dell'account di servizio, come ad esempio:
Riferimenti
Last updated