官方数据源的漏洞扫描
docker scout 基于 Docker 的镜像安全数据做漏洞扫描:quickview 给出按严重级别汇总的摘要,cves 列出具体漏洞与修复版本,recommendations 给出基础镜像的升级建议。它适合接在构建与发布之间作为门禁,用扫描日期与镜像摘要一起留档,结论才能复现。多数子命令需要登录 Docker 账号,插件随桌面版提供,Linux 上需要单独安装。
基本信息
| 定位 | 镜像漏洞扫描与修复建议 |
|---|---|
| 常用子命令 | quickview / cves / recommendations |
| 前置条件 | 安装 scout 插件,多数命令需要登录 |
| 接入点 | 构建完成到推送之间的门禁环节 |
典型使用场景
- 发布前门禁:按严重级别过滤,发现高危就中断流水线
- 基础镜像选型:对比几个候选基础镜像的漏洞分布再定
- 存量镜像复查:对已发布镜像定期重扫,发现新披露的问题
- 修复验证:升级基础镜像后重扫,确认目标漏洞已经消失
- 合规留档:把扫描结果与镜像摘要一起归档,供审计核对
扫描与门禁
扫描与门禁
# 摘要视图,快速判断值不值得细看
docker scout quickview nginx:1.27-alpine
# 只看高危与严重级别
docker scout cves --only-severity critical,high app/web:1.4.2
# 基础镜像升级建议
docker scout recommendations nginx:1.27-alpine
# 发布前扫描并记录摘要,便于日后复现结论
docker image inspect -f '{{index .RepoDigests 0}}' app/web:1.4.2与 Trivy 的取舍
| 维度 | docker scout | Trivy |
|---|---|---|
| 数据来源 | Docker 官方安全数据 | 开源漏洞库,可预置缓存 |
| 依赖条件 | 需要账号与插件 | 可离线运行,适合隔离环境 |
| 集成方式 | 贴近 Docker 构建流程 | 灵活接入各类流水线与文件系统扫描 |
| 门禁能力 | 按严重级别过滤后中断流水线 | 通过退出码实现门禁 |
漏洞库随时间更新,同一天扫描结果可比、跨日期比对要带上扫描时间与镜像摘要,否则结论对不上。
扫描只是发现问题的环节,修复要回到基础镜像与依赖版本上,只扫不修的流程意义有限。