Transmettre un rôle à Elastic Beanstalk
Peut déployer un environnement Elastic Beanstalk avec un rôle et exécuter du code en tant que ce rôle.
N'accorde l'escalade qu'en combinaison. Tous ces éléments sont nécessaires ensemble :
iam:PassRoleelasticbeanstalk:CreateApplicationVersionelasticbeanstalk:CreateEnvironmentiam:PassRole peut déployer un environnement Elastic Beanstalk avec un rôle et exécuter du code en son nom, mais uniquement lorsqu'elle est détenue conjointement avec elasticbeanstalk:CreateApplicationVersion, elasticbeanstalk:CreateEnvironment. 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 elasticbeanstalk:CreateApplicationVersion et elasticbeanstalk:CreateEnvironment, il peut donc déployer une application Elastic Beanstalk vers un environnement qui provisionne une instance EC2 avec le rôle cible comme profil d'instance, le code applicatif de l'attaquant (ou un shell sur la machine) s'exécute en tant que rôle cible et lit les identifiants du rôle cible via IMDS. Comme le rôle cible fait confiance à ec2.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 au niveau du compte, la variante PaaS du lancement d'une instance.
En termes MITRE ATT&CK, cela correspond à T1578.002, Modification de l'infrastructure de calcul cloud : création d'instance cloud, dans la tactique escalade de privilèges. AWS l'enregistre dans CloudTrail sous CreateApplicationVersion, CreateEnvironment. L'appel est bruyant dans CloudTrail et se démarque de l'activité normale.
Détection
CreateApplicationVersionCreateEnvironmentPrérequis
Le rôle cible doit être utilisable comme profil d'instance EC2 (le rôle EC2 Elastic Beanstalk, par ex. aws-elasticbeanstalk-ec2-role) et approuver ec2.amazonaws.com. CreateEnvironment accepte aussi un rôle de service EB qui approuve elasticbeanstalk.amazonaws.com ; le rôle d'exécution que l'attaquant vole est le profil d'instance EC2.
MITRE ATT&CK
T1578.002 · Modification de l'infrastructure de calcul cloud : création d'instance cloudTactique
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 déployer un environnement Elastic Beanstalk avec un rôle et exécuter du code 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 elasticbeanstalk:CreateApplicationVersion, elasticbeanstalk:CreateEnvironment. À lui seul, il ne suffit pas, ce qui rend la combinaison facile à manquer.
Comment détecter la transmission d'un rôle à Elastic Beanstalk ?
Surveillez CreateApplicationVersion, CreateEnvironment dans CloudTrail. Cet appel est bruyant dans CloudTrail et se démarque de l'activité normale.
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 ?
T1578.002, Modification de l'infrastructure de calcul cloud : création d'instance cloud, 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.