Injecter du user-data dans un modèle de lancement EC2
Peut injecter des user-data dans un modèle de lancement, s'exécuter sous son rôle au prochain lancement.
N'accorde l'escalade qu'en combinaison. Tous ces éléments sont nécessaires ensemble :
ec2:CreateLaunchTemplateVersionec2:ModifyLaunchTemplateec2:CreateLaunchTemplateVersion peut injecter des user-data dans un launch template, exécutées en tant que son rôle au prochain lancement, mais uniquement lorsqu'elle est détenue conjointement avec ec2:ModifyLaunchTemplate. Détenues ensemble, elles atteignent l'accès administrateur.
Pourquoi c'est dangereux
Un principal peut appeler ec2:CreateLaunchTemplateVersion pour publier une nouvelle version d'un modèle de lancement existant portant des user-data contrôlées par l'attaquant, puis ec2:ModifyLaunchTemplate pour définir cette version comme version par défaut, sans iam:PassRole. Le modèle référence déjà le rôle de profil d'instance, de sorte que toute instance lancée ultérieurement à partir de celui-ci (un groupe Auto Scaling qui monte en charge, un rafraîchissement de flotte ou un RunInstances manuel) démarre les user-data de l'attaquant et les exécute en tant que rôle cible, exposant les identifiants du rôle cible via IMDS. Si le rôle cible est privilégié, il s'agit d'une escalade de privilèges complète contre un modèle qui était déjà de confiance. REMARQUE : l'exécution est DIFFÉRÉE à un futur lancement à partir du modèle.
En termes MITRE ATT&CK, cela correspond à T1578, Modification de l'infrastructure de calcul cloud, dans la tactique escalade de privilèges. AWS l'enregistre dans CloudTrail sous CreateLaunchTemplateVersion, ModifyLaunchTemplate. L'appel est bruyant dans CloudTrail et se démarque de l'activité normale.
Détection
CreateLaunchTemplateVersionModifyLaunchTemplatePrérequis
Un modèle de lancement existant qui référence un rôle de profil d'instance ; la permission de créer une nouvelle version du modèle et de modifier la version par défaut du modèle. L'exécution est DIFFÉRÉE : le rôle n'est contrôlé qu'une fois qu'une instance est lancée à partir du modèle (p. ex. par un groupe Auto Scaling).
Tactique
Escalade de privilèges
Un contrôle qui le supprimerait : Restreindre ec2:CreateLaunchTemplateVersion et ec2:ModifyLaunchTemplate sur les launch templates qui référencent un rôle de profil d'instance privilégié ; préférer des templates immuables/gérés en contrôle de source.
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 ec2:CreateLaunchTemplateVersion ?
Peut injecter des user-data dans un modèle de lancement, s'exécuter sous son rôle au prochain lancement.
Que faut-il d'autre pour que ec2:CreateLaunchTemplateVersion soit dangereux ?
Cela ne devient une escalade que lorsqu'il est détenu conjointement avec ec2:ModifyLaunchTemplate. À lui seul, il ne suffit pas, ce qui rend la combinaison facile à manquer.
Comment détecter l'injection de user-data dans un modèle de lancement EC2 ?
Surveillez CreateLaunchTemplateVersion, ModifyLaunchTemplate 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 : Limitez ec2:CreateLaunchTemplateVersion et ec2:ModifyLaunchTemplate sur les modèles de lancement qui référencent un rôle de profil d'instance privilégié ; privilégiez des modèles immuables/gérés en contrôle de source. 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, Modification de l'infrastructure de calcul 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.