容器安全扫描Skill
适用场景
容器镜像构建后、推送仓库前,以及运行中容器定期巡检时的漏洞扫描与镜像加固。
执行步骤
- 确定扫描范围:待发布镜像、仓库存量镜像、运行中容器使用的镜像层。
- 选扫描工具:Trivy / Grype / Clair / 云厂商镜像扫描,接入 CI 在推送前自动扫描。
- 扫描内容:基础镜像漏洞(CVE)、依赖包漏洞、内置密钥/证书、危险配置。
- 结果分级:高危可利用漏洞(有公开利用/远程可利用)阻断发布;中低危限期修复。
- 加固执行(见下表),加固后重新构建并复扫,直至阻断项清零。
- 运行中容器定期巡检,发现新披露 CVE 触发复扫。
镜像加固要求
| 加固项 | 要求 |
|---|---|
| 基础镜像 | 选官方最小镜像(如 distroless/alpine);固定版本 tag 不用 latest |
| 多阶段构建 | 编译与运行分离,运行镜像不含编译工具与源码 |
| 运行用户 | 以非 root 用户运行;容器内禁止提权 |
| 层治理 | 删除构建残留(密钥、包缓存);镜像层不夹带敏感文件 |
| 文件系统 | 只读挂载;非必要不挂 host 路径;volume 权限最小化 |
| 镜像签名 | 启用镜像签名与内容信任,仓库开启不可变 tag |
规范要点
- 结论附证据:漏洞给出 CVE 编号、受影响组件与版本、修复版本。
- 高危(CVE 有公开 EXP、远程可利用、含内置密钥)立即上报并建议暂停发布。
- 镜像中发现的密钥不复制明文,只标路径并打码引用。
- 修复优先级:升基础镜像 > 升依赖 > 临时缓解(网络隔离/权限收敛)并记录待彻底修复。
输出模板
## 镜像扫描报告
| 镜像:tag | 漏洞/CVE | 组件版本 | 修复版本 | 可利用性 | 级别 | 处置 |
自检清单
- 扫描接入 CI,推送前强制扫描
- 每条漏洞有 CVE 编号与修复版本
- 高危阻断项已清零或已上报
- 镜像以非 root 运行、tag 固定