AWS - ECR Enum
AWS - ECR 枚举
ECR
基本信息
Amazon 弹性容器注册表(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 私有注册表可以轻松与其他 AWS 服务集成,如 EKS、ECS...
其他私有注册表选项:
标签不变性列出其状态,如果启用了标签不变性,将防止具有现有标签的图像覆盖推送。
加密类型列出存储库的加密属性,显示默认加密类型,如 AES-256,或启用了KMS加密。
拉取缓存列出其状态,如果拉取缓存状态为 Active,则会将外部公共存储库中的存储库缓存到您的私有存储库。
可以配置特定的IAM 策略以授予不同的权限。
扫描配置允许扫描存储在存储库中的图像中的漏洞。
公共注册表:
公共可访问性:存储在 ECR 公共注册表中的容器镜像可供任何人在互联网上无需身份验证访问。
公共存储库的 URI 类似于
public.ecr.aws/<random>/<name>
。尽管<random>
部分可以由管理员更改为另一个更容易记住的字符串。
存储库
这些是私有注册表或公共注册表中的图像。
请注意,为了将图像上传到存储库,ECR 存储库的名称需要与图像相同。
注册表和存储库策略
注册表和存储库还有可用于授予其他主体/帐户权限的策略。例如,在以下存储库策略图像中,您可以看到整个组织的任何用户将能够访问图像:
枚举
未经身份验证的枚举
AWS - ECR Unauthenticated Enum提权
在以下页面中,您可以查看如何滥用 ECR 权限以提升特权:
AWS - ECR Privesc漏洞利用后
AWS - ECR Post Exploitation持久性
AWS - ECR Persistence参考资料
Last updated