SuperAPI AI 工具集

container-security

安全与审计

查看项目

更新于 10-15 14:07

技能介绍

用途

Container Security 是一份面向容器镜像安全分析的指南,核心目标是“从基础镜像开始加固容器”——使用安全的基础镜像、最小化安装包、消除已知漏洞。它覆盖三类问题:操作系统包漏洞、应用依赖漏洞,以及 Dockerfile 配置问题。

主要能力

  • 镜像识别:支持本地镜像、镜像仓库引用(如 gcr.io/project/app:v1)、sha256 摘要以及 .tar 归档文件。
  • 扫描范围控制:可选择是否包含应用依赖漏洞、是否单独分析基础镜像漏洞、以及多架构镜像的目标平台(linux/amd64、linux/arm64)。
  • 漏洞分类:将发现分为基础 OS 包、额外 OS 包(apt/yum 安装)、应用依赖(Node modules、Python 包)和 Dockerfile 问题,并标注用户可控制程度。
  • 基础镜像分析:通过 exclude_base_image_vulns 参数区分“继承自基础镜像的漏洞”与“自身层新增的漏洞”。
  • 修复指导:针对基础镜像升级、单个包更新、应用依赖升级分别给出 Dockerfile 或清单文件的修改建议。
  • Dockerfile 最佳实践:固定具体标签、以非 root 用户运行、多阶段构建、最小化安装包。
  • 验证流程:修复后重新构建镜像并再次扫描,对比修复前后的漏洞数量。

使用方式

  1. 识别要扫描的镜像(本地、仓库或归档)。
  2. 调用 snyk_container_scan,传入镜像名称;可选传入 Dockerfile 路径、开启 app_vulns、设置 severity_threshold 过滤严重级别。
  3. 分析结果:按来源分类,生成严重程度汇总表,列出优先修复项。
  4. 提供修复建议:升级基础镜像、更新包版本、修改应用依赖清单、改进 Dockerfile。
  5. 重新构建并再次扫描以确认修复效果。

示例调用: mcp_snyk_snyk_container_scan(image="app:latest", app_vulns=true)

适用场景

  • 部署前对容器镜像进行安全扫描。
  • 排查镜像中操作系统包与应用依赖的已知漏洞。
  • 寻找更安全的基础镜像并评估迁移影响。
  • 审查并加固 Dockerfile。
  • 修复漏洞后验证修复结果。

限制与注意事项

  • 指南强调“部署前必须扫描”,不要部署未扫描的镜像。
  • 应固定具体镜像标签,避免使用 latest。
  • 无法修复的漏洞需要记录并说明原因。
  • 建议每周重新扫描镜像以发现新披露的 CVE。
  • 优先使用多阶段构建以减小生产镜像体积和漏洞面。
  • 常见错误处理:镜像本地不存在时先 docker pull;需要仓库认证时先 docker login;扫描超时可重试、先拉取到本地或改用 .tar 归档扫描。
  • 关于具体收费、价格、平台支持范围等信息,资料中暂未提供。