用途:面向安全工程师,用 Dockle 审计已构建的容器镜像,检查其是否符合 CIS Docker Benchmark 与容器安全最佳实践。
前提条件:需先安装 Dockle,例如 brew install goodwithtech/r/dockle 或下载二进制文件;可用 dockle --version 验证。
使用方式:先确定待审计的镜像,然后运行扫描,例如 dockle --format json --output dockle-results.json <image>:<tag>。可忽略指定检查,如 dockle --ignore CIS-DI-0001 --format json <image>;也可接受特定键,如 dockle --accept-key DOCKER_CONTENT_TRUST --format json <image>。随后解析 JSON 结果,以表格(序号、级别、代码、标题、发现)呈现,并按 FATAL/WARN/INFO/SKIP/PASS 汇总各级别问题总数。
覆盖的主要检查:CIS-DI-0001 为容器创建用户(不以 root 运行);CIS-DI-0002 添加 HEALTHCHECK 指令;CIS-DI-0003 不要单独使用 update 指令;CIS-DI-0005 不要用 COPY 复制敏感文件(如 .env、.git);CIS-DI-0006 为镜像添加 LABEL;CIS-DI-0008 确认 setuid/setgid 文件安全;CIS-DI-0009 用 COPY 代替 ADD;CIS-DI-0010 不要在 LABEL 或 ENV 中存储密钥;DKL-DI-0001 避免使用 sudo;DKL-DI-0002 避免挂载敏感目录;DKL-DI-0005 清理包管理器缓存。
限制:不包含自动修复步骤;具体输出字段与退出码未提供;兼容的镜像格式与平台范围暂未提供。