首页/安全/漏洞与攻击面速查/Docker Registry 未认证暴露
本包目录(294 条)
漏洞基础与评分46 条Web 漏洞原理与防护55 条
主机与服务风险面53 条
扫描与验证方法50 条补丁与修复管理45 条暴露面收敛45 条

Docker Registry 未认证暴露

使用 registry:2 自建镜像仓库且未启用认证时,/v2/_catalog 会列出全部仓库名,镜像层可被匿名拉取;镜像中可能包含凭据、源码等供应链敏感内容。

漏洞与攻击面速查安全更新于 2026-10-12

匿名访问测试

匿名访问测试
curl -s -o /dev/null -w '%{http_code}\n' https://registry.example.com/v2/
curl -s https://registry.example.com/v2/_catalog | head -c 300
# 期望未认证返回 401

认证配置要点

认证配置要点
1. htpasswd 生成凭据文件并挂载到容器,配置 registry 的 auth 段
2. 启用 TLS(证书挂载),避免凭据与层数据明文传输
3. 对外仅暴露网关域名,来源限制到构建网段
4. 或改用 Harbor 等带 RBAC 与扫描能力的方案
registry 的删除 API 默认启用,未认证暴露时镜像可能被直接删除,影响发布链路可用性。

易错点

  • 启用了 htpasswd 但忘记重启容器,认证配置未生效仍未察觉

数据来源与参考

  • Docker Distribution 文档(认证与配置)
  • Docker Registry 官方镜像文档
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌