Transmettre un rôle à Bedrock AgentCore
Peut créer un interpréteur Bedrock AgentCore avec un rôle et exécuter du Python en tant que ce rôle.
N'accorde l'escalade qu'en combinaison. Tous ces éléments sont nécessaires ensemble :
iam:PassRolebedrock-agentcore:CreateCodeInterpreterbedrock-agentcore:StartCodeInterpreterSessionbedrock-agentcore:InvokeCodeInterpreteriam:PassRole peut créer un interpréteur Bedrock AgentCore avec un rôle et exécuter du code Python en son nom, mais uniquement lorsqu'elle est détenue conjointement avec bedrock-agentcore:CreateCodeInterpreter, bedrock-agentcore:StartCodeInterpreterSession, bedrock-agentcore:InvokeCodeInterpreter. Détenues ensemble, elles atteignent l'accès administrateur.
Pourquoi c'est dangereux
Un principal détient iam:PassRole sur le rôle cible plus bedrock-agentcore:CreateCodeInterpreter, StartCodeInterpreterSession et InvokeCodeInterpreter, il peut donc créer un interpréteur de code Bedrock AgentCore avec le rôle cible attaché, ouvrir une session et invoquer du Python fourni par l'attaquant, ce Python s'exécute dans le bac à sable AgentCore avec les permissions du rôle cible et lit les identifiants actifs du rôle cible depuis le service de métadonnées de la MicroVM. Comme le rôle cible fait confiance à bedrock-agentcore.amazonaws.com, la transmission est acceptée ; si le rôle cible est privilégié, il s'agit d'une escalade de privilèges complète via un nouveau point d'arrivée d'exécution IA de 2025, c'est pourquoi il est marqué à vérifier.
En termes MITRE ATT&CK, cela correspond à T1648, Exécution serverless, dans la tactique escalade de privilèges. AWS l'enregistre dans CloudTrail sous CreateCodeInterpreter, StartCodeInterpreterSession, InvokeCodeInterpreter. L'appel apparaît dans CloudTrail mais se fond dans l'administration normale, il lui faut donc une règle pour ressortir.
Détection
CreateCodeInterpreterStartCodeInterpreterSessionInvokeCodeInterpreterPrérequis
La politique d'approbation du rôle cible doit autoriser bedrock-agentcore.amazonaws.com. Les trois actions bedrock-agentcore (create, start-session, invoke) ainsi que iam:PassRole sont requises ; l'interpréteur de code exécute le code Python de l'attaquant en tant que rôle de l'agent, aucune étape distincte de vol d'identifiants n'est donc nécessaire.
MITRE ATT&CK
T1648 · Exécution serverlessTactique
Escalade de privilèges
Un contrôle qui le supprimerait : Retirer iam:PassRole pour ce rôle ou le restreindre avec iam:PassedToService.
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:PassRole ?
Peut créer un interpréteur Bedrock AgentCore avec un rôle et exécuter du Python en tant que ce rôle.
Que faut-il d'autre pour que iam:PassRole soit dangereux ?
Cela ne devient une escalade que lorsqu'il est détenu conjointement avec bedrock-agentcore:CreateCodeInterpreter, bedrock-agentcore:StartCodeInterpreterSession, bedrock-agentcore:InvokeCodeInterpreter. À lui seul, il ne suffit pas, ce qui rend la combinaison facile à manquer.
Comment détecter la transmission d'un rôle à Bedrock AgentCore ?
Surveillez CreateCodeInterpreter, StartCodeInterpreterSession, InvokeCodeInterpreter 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:PassRole pour ce rôle ou restreignez-le avec iam:PassedToService. 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 ?
T1648, Exécution serverless, dans la tactique escalade de privilèges.
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.