AWS - ECR Enum
Last updated
Last updated
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Amazon Elastic Container Registry (Amazon ECR) é um serviço gerenciado de registro de imagens de contêiner. Ele é projetado para fornecer um ambiente onde os clientes podem interagir com suas imagens de contêiner usando interfaces bem conhecidas. Especificamente, o uso do Docker CLI ou qualquer cliente preferido é suportado, permitindo atividades como enviar, puxar e gerenciar imagens de contêiner.
ECR é composto por 2 tipos de objetos: Registros e Repositórios.
Registros
Cada conta AWS tem 2 registros: Privado e Público.
Registros Privados:
Privado por padrão: As imagens de contêiner armazenadas em um registro privado do Amazon ECR são acessíveis apenas a usuários autorizados dentro da sua conta AWS ou àqueles que receberam permissão.
O URI de um repositório privado segue o formato <account_id>.dkr.ecr.<region>.amazonaws.com/<repo-name>
Controle de acesso: Você pode controlar o acesso às suas imagens de contêiner privadas usando políticas IAM, e pode configurar permissões detalhadas com base em usuários ou funções.
Integração com serviços AWS: Registros privados do Amazon ECR podem ser facilmente integrados com outros serviços AWS, como EKS, ECS...
Outras opções de registro privado:
A coluna de imutabilidade de tags lista seu status, se a imutabilidade de tags estiver habilitada, isso impedirá que envios de imagens com tags pré-existentes sobrescrevam as imagens.
A coluna de Tipo de Criptografia lista as propriedades de criptografia do repositório, mostrando os tipos de criptografia padrão, como AES-256, ou se tem criptografias habilitadas por KMS.
A coluna de Cache de Pull lista seu status, se o status de Cache de Pull estiver Ativo, ele irá armazenar em cache repositórios em um repositório público externo em seu repositório privado.
Políticas IAM específicas podem ser configuradas para conceder diferentes permissões.
A configuração de varredura permite escanear em busca de vulnerabilidades nas imagens armazenadas dentro do repositório.
Registros Públicos:
Acessibilidade pública: As imagens de contêiner armazenadas em um registro Público do ECR são acessíveis a qualquer pessoa na internet sem autenticação.
O URI de um repositório público é como public.ecr.aws/<random>/<name>
. Embora a parte <random>
possa ser alterada pelo administrador para outra string mais fácil de lembrar.
Repositórios
Estas são as imagens que estão no registro privado ou no público.
Observe que, para enviar uma imagem para um repositório, o repositório ECR precisa ter o mesmo nome que a imagem.
Registros e repositórios também têm políticas que podem ser usadas para conceder permissões a outros principais/contas. Por exemplo, na seguinte imagem de política de repositório, você pode ver como qualquer usuário de toda a organização poderá acessar a imagem:
Na página a seguir, você pode verificar como abusar das permissões do ECR para escalar privilégios:
AWS - ECR PrivescAprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)