Générer un identifiant spécifique à un service pour un utilisateur
Peut générer des identifiants spécifiques à un service (CodeCommit/Keyspaces) pour un utilisateur.
Accorde l'escalade à lui seul.
iam:CreateServiceSpecificCredentialÀ lui seul, iam:CreateServiceSpecificCredential peut générer des identifiants spécifiques à un service (CodeCommit/Keyspaces) pour un utilisateur. Sur un périmètre de ressources large, cela atteint à lui seul des identifiants utilisables.
Pourquoi c'est dangereux
Un principal peut appeler iam:CreateServiceSpecificCredential pour forger un nouvel identifiant spécifique à un service à longue durée de vie (Git-over-HTTPS pour CodeCommit, ou Amazon Keyspaces/Cassandra) pour l'utilisateur sans connaître aucun des secrets existants de l'utilisateur cible. Dès lors, le principal peut s'authentifier auprès de ces services en tant qu'utilisateur cible. L'identifiant est indépendant du mot de passe et des clés d'accès de l'utilisateur cible et survit à leur rotation, il s'agit donc à la fois d'une prise de contrôle de l'accès aux services de l'utilisateur cible et d'un point d'ancrage de persistance durable, au rayon d'impact plus étroit qu'une clé d'accès complète.
En termes MITRE ATT&CK, cela correspond à T1098.001, Manipulation de compte : identifiants cloud supplémentaires, dans la tactique persistance. AWS l'enregistre dans CloudTrail sous CreateServiceSpecificCredential. 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
CreateServiceSpecificCredentialPrérequis
L'utilisateur cible existe ; la valeur dépend des services que l'utilisateur peut atteindre (CodeCommit, Amazon Keyspaces).
Tactique
Persistance
Un contrôle qui le supprimerait : Retirer iam:CreateServiceSpecificCredential / iam:ResetServiceSpecificCredential au principal.
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:CreateServiceSpecificCredential ?
Peut générer des identifiants spécifiques à un service (CodeCommit/Keyspaces) pour un utilisateur.
iam:CreateServiceSpecificCredential peut-il permettre une escalade de privilèges à lui seul ?
Oui. Détenue sur une ressource suffisamment large, elle atteint des identifiants utilisables sans aucune autre permission.
Comment détecter la génération d'un identifiant spécifique à un service pour un utilisateur ?
Surveillez CreateServiceSpecificCredential 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 : Retirez iam:CreateServiceSpecificCredential / iam:ResetServiceSpecificCredential du principal. 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 ?
T1098.001, Manipulation de compte : identifiants cloud supplémentaires, dans la tactique persistance.
Chemins associés
Références
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.