AWS - ECR Enum
Reading time: 6 minutes
AWS - ECR Enum
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のGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
ECR
基本情報
Amazon Elastic Container Registry (Amazon ECR) は 管理されたコンテナイメージレジストリサービス です。これは、顧客がよく知られたインターフェースを使用してコンテナイメージと対話できる環境を提供するように設計されています。具体的には、Docker CLI または任意の好みのクライアントの使用がサポートされており、イメージのプッシュ、プル、および管理などの活動が可能です。
ECRは2種類のオブジェクトで構成されています: レジストリ と リポジトリ。
レジストリ
すべてのAWSアカウントには2つのレジストリがあります: プライベート と パブリック。
- プライベートレジストリ:
- デフォルトでプライベート: Amazon ECRプライベートレジストリに保存されたコンテナイメージは、あなたのAWSアカウント内の認可されたユーザーのみがアクセス可能です。
- プライベートリポジトリのURIは、
<account_id>.dkr.ecr.<region>.amazonaws.com/<repo-name>
の形式に従います。 - アクセス制御: IAMポリシーを使用してプライベートコンテナイメージへのアクセスを制御でき、ユーザーやロールに基づいて細かい権限を設定できます。
- AWSサービスとの統合: Amazon ECRプライベートレジストリは、EKS、ECSなどの他のAWSサービスと簡単に統合できます。
- 他のプライベートレジストリオプション:
- タグ不変性の列はそのステータスを示し、タグ不変性が有効になっている場合、既存のタグを持つイメージのプッシュが上書きされるのを防ぎます。
- 暗号化タイプの列はリポジトリの暗号化プロパティを示し、AES-256などのデフォルトの暗号化タイプやKMSが有効な暗号化を表示します。
- プルスルーキャッシュの列はそのステータスを示し、プルスルーキャッシュのステータスがアクティブであれば、外部パブリックリポジトリのリポジトリをプライベートリポジトリにキャッシュします。
- 特定のIAMポリシーを設定して異なる権限を付与できます。
- スキャン設定により、リポジトリ内に保存されたイメージの脆弱性をスキャンできます。
- パブリックレジストリ:
- パブリックアクセス: ECRパブリックレジストリに保存されたコンテナイメージは、認証なしでインターネット上の誰でもアクセス可能です。
- パブリックリポジトリのURIは
public.ecr.aws/<random>/<name>
のようになります。<random>
部分は管理者によって覚えやすい別の文字列に変更できます。
リポジトリ
これらは プライベートレジストリ または パブリック のイメージです。
note
リポジトリにイメージをアップロードするには、ECRリポジトリがイメージと同じ名前である必要があります。
レジストリ & リポジトリポリシー
レジストリとリポジトリには、他のプリンシパル/アカウントに権限を付与するために使用できるポリシーもあります。たとえば、次のリポジトリポリシーの画像では、組織全体の任意のユーザーがイメージにアクセスできることがわかります。
.png)
列挙
# Get repos
aws ecr describe-repositories
aws ecr describe-registry
# Get image metadata
aws ecr list-images --repository-name <repo_name>
aws ecr describe-images --repository-name <repo_name>
aws ecr describe-image-replication-status --repository-name <repo_name> --image-id <image_id>
aws ecr describe-image-scan-findings --repository-name <repo_name> --image-id <image_id>
aws ecr describe-pull-through-cache-rules --repository-name <repo_name> --image-id <image_id>
# Get public repositories
aws ecr-public describe-repositories
# Get policies
aws ecr get-registry-policy
aws ecr get-repository-policy --repository-name <repo_name>
認証されていない列挙
AWS - ECR Unauthenticated Enum
権限昇格
次のページでは、ECRの権限を悪用して権限を昇格させる方法を確認できます:
ポストエクスプロイト
永続性
参考文献
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のGitHubリポジトリにPRを提出してハッキングトリックを共有してください。