SuperAPI AI 工具集

container-security

安全与审计

查看项目

更新于 10-15 23:42

技能介绍

用途:为容器镜像提供从扫描到加固的完整安全流程,流程为:导入基础镜像到 ACR → 构建 → 用 Trivy 扫描 → 分析 CVE → 加固 Dockerfile → 重新构建 → 重新扫描 → 验证。

主要能力:通过 az acr import 将公共基础镜像导入私有 ACR,避免 Docker Hub 限流;用 az acr build 构建;用 Trivy 以表格或 JSON 格式扫描 HIGH、CRITICAL 漏洞;可将 CRITICAL 发现按「我们可修复、上游可修复、系统级待补丁、will_not_fix」分类处理。

使用方式:导入示例命令为 az acr import --name <registry> --source docker.io/<image>:<tag> --image <local-path>/<image>:<tag>,随后将 Dockerfile 的 FROM 改为 ACR 地址。扫描可用 ACR Task(先将 Trivy 导入 ACR,再用 az acr run 调用)或本地 trivy image --severity HIGH,CRITICAL <registry>.azurecr.io/<image>:<tag>,也可对 Dockerfile 运行 trivy config。

加固要点:固定版本号(避免 :latest),用 ARG 管理版本;禁用 SSH 密码登录、仅用密钥,并设置 AllowUsers;尽量以非 root 运行,必要时先用 root 启动特权服务再降权;合并 RUN 层、清理 apt 缓存、不在镜像中烘焙密钥、校验下载。加固后需重新构建并重扫,核对 CRITICAL 数量是否下降。

适用场景:在 Azure 容器注册表与 CI 中做镜像安全扫描和 Dockerfile 加固;需要导入基础镜像以规避限流时。

限制与已知问题:ACR 云构建不支持 BuildKit 的 heredoc、RUN --mount 等特性;ACR 对 Docker Hub 的构建是匿名拉取,会触发限流;RUN apt-get upgrade 不会更新 Trivy 的 CVE 库;--severity 过滤会隐藏可修复的 MEDIUM;非 root USER 不作用于多阶段 COPY --from 复制文件,需用 COPY --chown;Debian 标记 will_not_fix 的漏洞升级镜像也不修复。具体收费与版本支持等资料暂未提供。