首页/安全/漏洞与攻击面速查/docker-bench-security 宿主与守护进程核查
扫描与验证方法50 条

docker-bench-security 宿主与守护进程核查

docker-bench-security 检查 Docker 守护进程与容器配置(socket 权限、特权容器、资源限制、镜像标签等),输出可直接用于容器宿主的基线评估。

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

docker-bench-security 查什么

docker-bench-security 按 CIS Docker Benchmark 的条目检查宿主机与守护进程配置,覆盖 socket 文件权限、特权容器、容器资源限制、镜像标签规范、日志驱动与挂载选项等。输出是逐条的通过或失败清单,可直接用于容器宿主的基线评估;它看的是运行时配置,与镜像内容扫描互补。

基本信息

适用对象自建 Docker 宿主机与守护进程
基线来源CIS Docker Benchmark
执行方式官方脚本或容器方式运行
检查分组主机配置、守护进程、容器运行时、镜像与安全操作
局限不覆盖编排层,K8s 需配合 kube-bench

典型使用场景

  • 新宿主上线:确认守护进程配置符合基线,再纳入生产
  • 例行核查:每月跑一次并留存输出,做趋势对比
  • 专项排查:出现容器逃逸类告警时核查特权容器与 socket 挂载
  • 容器清理:找出长期未设置资源限制或使用 latest 标签的容器
  • 合规举证:作为容器平台配置合规的证据材料

执行命令

执行命令
sh docker-bench-security.sh                    # 全量检查
sh docker-bench-security.sh -c 4                # 只跑指定检查组(示例)
sh docker-bench-security.sh -l out.log          # 输出到日志文件
docker run --rm --net host --pid host --userns host --cap-add audit_control \
  -v /etc:/etc:ro -v /usr/bin/docker-containerd:/usr/bin/docker-containerd:ro \
  -v /var/lib:/var/lib:ro -v /var/run/docker.sock:/var/run/docker.sock:ro \
  docker/docker-bench-security               # 容器方式运行便于统一版本

重点检查项与风险

检查项风险整改方向
docker.sock 挂载进容器容器可控制宿主守护进程移除挂载,按需用代理方案
特权容器近似宿主 root 权限去掉 privileged,按需加能力位
无资源限制单容器可耗尽宿主资源设置 CPU 与内存上限
latest 标签版本不可控,回滚困难使用固定版本或摘要
默认网桥配置容器间可直接互访按业务划分自定义网络
容器基线与镜像扫描互补:前者看运行时与守护进程配置,后者看镜像内组件版本,两类报告要并存而不是互相替代。

整改优先级建议

  • 先处理可信执行路径类问题:socket 挂载与特权容器
  • 再补资源限制与日志驱动:防止单容器影响整台宿主
  • 最后处理标签规范与镜像来源:属于长期治理项
  • 每轮整改后重跑一次并对比,确认失败项数量下降

易错点

  • 只扫了宿主机没扫运行时:正在运行的 privileged 容器未被计入
  • 把失败项全部当高危:部分基线项属加固建议,需按业务实际评估优先级
  • 只跑一次不存输出:下次整改时无法确认问题是否消失
  • 在编排平台上用 docker-bench 代替集群基线:K8s 的控制面与节点检查需用 kube-bench

数据来源与参考

  • docker-bench-security 官方仓库说明
  • CIS Docker Benchmark(基线来源)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌