Prendre le contrôle d'un fournisseur OIDC pour assumer les rôles qui l'approuvent
Peut rediriger le fournisseur OIDC auquel un rôle fait confiance, forgeant des connexions fédérées sous ce rôle.
Accorde l'escalade à lui seul.
iam:UpdateOpenIDConnectProviderThumbprintÀ lui seul, iam:UpdateOpenIDConnectProviderThumbprint peut rediriger le fournisseur OIDC auquel un rôle fait confiance, forgeant des connexions fédérées en son nom. Sur un périmètre de ressources large, cela atteint à lui seul un moyen de ré-accès permanent.
Pourquoi c'est dangereux
Un principal peut appeler iam:UpdateOpenIDConnectProviderThumbprint pour changer l'empreinte de confiance du fournisseur OIDC auquel il fait confiance (ou ajouter un ID client), rendant valides les tokens d'un IdP contrôlé par l'attaquant. Il appelle ensuite sts:AssumeRoleWithWebIdentity pour assumer directement le rôle cible, autorisé par la politique de confiance du rôle cible, non par une permission d'identité. Si le rôle cible est privilégié, il s'agit d'une prise de contrôle complète de la fédération.
En termes MITRE ATT&CK, cela correspond à T1556, Modification du processus d'authentification, dans la tactique persistance. AWS l'enregistre dans CloudTrail sous UpdateOpenIDConnectProviderThumbprint, AddClientIDToOpenIDConnectProvider. L'appel apparaît dans CloudTrail mais se fond dans l'administration normale, il lui faut donc une règle pour ressortir. Il donne aussi à un attaquant un moyen de conserver l'accès après la fermeture du premier point d'entrée, il mérite donc une surveillance même lorsqu'il ressemble à de l'administration de routine.
Détection
UpdateOpenIDConnectProviderThumbprintAddClientIDToOpenIDConnectProviderPrérequis
iam:UpdateOpenIDConnectProviderThumbprint sur un fournisseur OIDC qu'au moins un rôle approuve (même compte). Aucune permission d'identité n'est nécessaire pour l'AssumeRoleWithWebIdentity qui suit, l'approbation du rôle l'autorise.
Tactique
Persistance
Un contrôle qui le supprimerait : Restreindre iam:UpdateOpenIDConnectProviderThumbprint / iam:AddClientIDToOpenIDConnectProvider aux administrateurs break-glass ; déclencher une alarme sur ces actions (CloudTrail) ; épingler l'approbation des rôles à des claims sub/aud spécifiques.
La décision de l'appliquer dépend de la façon dont la permission est utilisée dans votre environnement, il s'agit donc d'une décision métier plutôt que d'un correctif automatique. La même permission peut être porteuse dans un compte et pur risque dans un autre.
Pathbreak confirme si ce chemin se résout dans votre compte, le classe par rapport aux autres selon l'ampleur de ce qu'il ouvre, et utilise votre modèle de menace et votre contexte métier pour montrer quels chemins valent la peine d'être coupés.
Questions
Que permet iam:UpdateOpenIDConnectProviderThumbprint ?
Peut rediriger le fournisseur OIDC auquel un rôle fait confiance, forgeant des connexions fédérées sous ce rôle.
iam:UpdateOpenIDConnectProviderThumbprint permet-il à lui seul une escalade de privilèges ?
Oui. Détenue sur une ressource suffisamment large, elle atteint un moyen de revenir en permanence sans aucune autre permission.
Comment détecter la prise de contrôle d'un fournisseur OIDC pour endosser les rôles qui lui font confiance ?
Surveillez UpdateOpenIDConnectProviderThumbprint, AddClientIDToOpenIDConnectProvider dans CloudTrail. Cet appel apparaît dans CloudTrail mais se fond dans l'administration normale, il faut donc une règle pour le faire ressortir.
Comment briser ce chemin ?
Un contrôle qui le supprimerait est : Limitez iam:UpdateOpenIDConnectProviderThumbprint / iam:AddClientIDToOpenIDConnectProvider aux administrateurs d'urgence (break-glass) ; déclenchez une alerte sur ces actions (CloudTrail) ; épinglez la confiance du rôle à des claims sub/aud spécifiques. L'appliquer ou non dépend de la manière dont l'autorisation est utilisée dans votre compte, il s'agit donc d'une décision métier plutôt que d'un correctif automatique.
De quelle technique MITRE ATT&CK s'agit-il ?
T1556, Modification du processus d'authentification, dans la tactique persistance.
Chemins associés
Références
- https://attack.mitre.org/techniques/T1556/
- https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc.html
Trouvez ceci dans votre propre compte
Nous réalisons un scan en lecture seule d'un compte AWS et vous montrons lesquels de ces chemins existent, classés par rayon d'impact, avec le changement qui brise chacun d'eux. Premiers chemins validés en moins d'une heure.