S'accorder le pull/push ECR via la politique de référentiel
Peut réécrire la politique d'un dépôt ECR pour s'accorder le pull/push, puis récupérer ou empoisonner des images.
Accorde l'escalade à lui seul.
ecr:SetRepositoryPolicyÀ lui seul, ecr:SetRepositoryPolicy peut réécrire la politique d'un dépôt ECR pour s'accorder l'accès pull/push, puis récupérer ou empoisonner des images. Sur un périmètre de ressources large, cela atteint à lui seul l'accès pour un principal externe ou public.
Pourquoi c'est dangereux
Un principal peut appeler ecr:SetRepositoryPolicy sur le référentiel pour attacher une politique s'octroyant (ou octroyant à un compte externe / au public) le tirage ou le poussage. Le tirage lit les images de conteneurs, qui intègrent fréquemment des identifiants, des tokens et du code source, exfiltration directe de données. Le poussage remplace les tags d'image auxquels un consommateur ECS/EKS/CodeBuild en aval fait confiance, empoisonnant la chaîne d'approvisionnement de sorte que le code de l'attaquant s'exécute plus tard en tant que rôle du consommateur. L'attaquant réécrit le verrou au lieu de détenir une clé.
En termes MITRE ATT&CK, cela correspond à T1098, Manipulation de compte, dans la tactique escalade de privilèges. AWS l'enregistre dans CloudTrail sous SetRepositoryPolicy. L'appel apparaît dans CloudTrail mais se fond dans l'administration normale, il lui faut donc une règle pour ressortir.
Détection
SetRepositoryPolicyPrérequis
ecr:SetRepositoryPolicy sur le référentiel. L'abus suppose en outre qu'aucun garde-fou SCP/limite/PrincipalOrgID ne bloque l'octroi excessif ; la variante push suppose qu'un consommateur privilégié extrait ensuite le tag empoisonné.
MITRE ATT&CK
T1098 · Manipulation de compteTactique
Escalade de privilèges
Un contrôle qui le supprimerait : Restreindre ecr:SetRepositoryPolicy aux administrateurs du registre ; refuser les écritures de politique de référentiel via une SCP ; exiger aws:PrincipalOrgID sur les politiques de référentiel ; activer l'immuabilité des tags et le scan des images afin qu'un push empoisonné soit détecté.
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 ecr:SetRepositoryPolicy ?
Peut réécrire la politique d'un dépôt ECR pour s'accorder le pull/push, puis récupérer ou empoisonner des images.
ecr:SetRepositoryPolicy peut-il permettre une escalade de privilèges à lui seul ?
Oui. Détenue sur une ressource suffisamment large, elle atteint un accès pour un principal externe ou public sans aucune autre permission.
Comment détecter l'auto-octroi de l'accès pull/push ECR via une politique de dépôt ?
Surveillez SetRepositoryPolicy 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 ecr:SetRepositoryPolicy aux administrateurs du registre ; refusez les écritures de politique de dépôt via SCP ; exigez aws:PrincipalOrgID sur les politiques de dépôt ; activez l'immutabilité des tags + l'analyse des images afin qu'un push empoisonné soit détecté. 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, Manipulation de compte, 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.