AWS - ECR Enum
Last updated
Last updated
学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习和实践 GCP 黑客技术: HackTricks 培训 GCP 红队专家 (GRTE)
亚马逊 弹性容器注册表 (Amazon ECR) 是一个 托管的容器镜像注册表服务。它旨在提供一个环境,客户可以使用众所周知的接口与他们的容器镜像进行交互。具体来说,支持使用 Docker CLI 或任何首选客户端,进行推送、拉取和管理容器镜像等活动。
ECR 由两种类型的对象组成:注册表 和 仓库。
注册表
每个 AWS 账户有两个注册表:私有 和 公共。
私有注册表:
默认私有:存储在 Amazon ECR 私有注册表中的容器镜像 仅对您 AWS 账户内的授权用户 或已获得权限的用户可访问。
私有仓库 的 URI 格式为 <account_id>.dkr.ecr.<region>.amazonaws.com/<repo-name>
访问控制:您可以使用 IAM 策略 控制对私有容器镜像的访问,并可以根据用户或角色配置细粒度权限。
与 AWS 服务的集成:Amazon ECR 私有注册表可以轻松 与其他 AWS 服务集成,如 EKS、ECS...
其他私有注册表选项:
标签不可变性列显示其状态,如果启用标签不可变性,它将 防止 使用 已存在标签 的镜像 推送 覆盖镜像。
加密类型 列显示仓库的加密属性,显示默认加密类型,如 AES-256,或启用 KMS 加密。
拉取缓存 列显示其状态,如果拉取缓存状态为活动,它将把 外部公共仓库中的仓库缓存到您的私有仓库。
可以配置特定的 IAM 策略 以授予不同的 权限。
扫描配置 允许扫描存储在仓库中的镜像中的漏洞。
公共注册表:
公共可访问性:存储在 ECR 公共注册表中的容器镜像 对互联网上的任何人可访问,无需身份验证。
公共仓库 的 URI 类似于 public.ecr.aws/<random>/<name>
。虽然 <random>
部分可以由管理员更改为更易记的字符串。
仓库
这些是 私有注册表 或 公共注册表 中的 镜像。
请注意,为了将镜像上传到仓库,ECR 仓库需要与镜像同名。
注册表和仓库 也有 可以用于授予其他主体/账户权限的策略。例如,在以下仓库策略图像中,您可以看到整个组织中的任何用户都将能够访问该镜像:
在以下页面中,您可以查看如何滥用 ECR 权限以提升权限:
学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习和实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)