AWS - ECR Enum

Tip

学习并练习 AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
学习并练习 GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
学习并练习 Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

支持 HackTricks

ECR

基本信息

Amazon Elastic Container Registry (Amazon ECR) 是一个 托管的容器镜像注册服务。它旨在提供一个环境,客户可以使用众所周知的接口与他们的容器镜像进行交互。具体来说,支持使用 Docker CLI 或任何首选客户端,进行推送、拉取和管理容器镜像等活动。

ECR 由两种类型的对象组成:注册表仓库

注册表

每个 AWS 账户有两个注册表:私有公共

  1. 私有注册表
  • 默认私有:存储在 Amazon ECR 私有注册表中的容器镜像 仅对您 AWS 账户内的授权用户 或已获得权限的用户可访问。
  • 私有仓库的 URI 格式为 <account_id>.dkr.ecr.<region>.amazonaws.com/<repo-name>
  • 访问控制:您可以使用 IAM 策略控制对私有容器镜像的访问,并可以根据用户或角色配置细粒度权限。
  • 与 AWS 服务的集成:Amazon ECR 私有注册表可以轻松 与其他 AWS 服务集成,如 EKS、ECS…
  • 其他私有注册表选项
  • 标签不可变性列显示其状态,如果启用了标签不可变性,它将 防止 使用 已存在标签 的镜像 推送 覆盖镜像。
  • 加密类型列列出仓库的加密属性,显示默认加密类型,如 AES-256,或启用了 KMS 加密。
  • 拉取缓存列显示其状态,如果拉取缓存状态为活动,它将把 外部公共仓库中的仓库缓存到您的私有仓库
  • 可以配置特定的 IAM 策略 来授予不同的 权限
  • 扫描配置允许扫描存储在仓库中的镜像中的漏洞。
  1. 公共注册表
  • 公共可访问性:存储在 ECR 公共注册表中的容器镜像 对互联网上的任何人可访问,无需身份验证
  • 公共仓库的 URI 类似于 public.ecr.aws/<random>/<name>。虽然 <random> 部分可以由管理员更改为更易记的字符串。

仓库

这些是 私有注册表公共注册表 中的 镜像

Note

请注意,为了将镜像上传到仓库,ECR 仓库需要与镜像同名

注册表和仓库策略

注册表和仓库 也有 可以用于授予其他主体/账户权限的策略。例如,在以下仓库策略图像中,您可以看到整个组织中的任何用户都将能够访问该镜像:

枚举

# 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 权限以提升权限

AWS - ECR Privesc

后期利用

AWS - ECR Post Exploitation

持久性

AWS - ECR Persistence

参考

Tip

学习并练习 AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
学习并练习 GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
学习并练习 Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

支持 HackTricks