msaad00/agent-bom

GitHub: msaad00/agent-bom

AI 供应链安全扫描器,专注于 AI Agent 和 MCP 服务器的漏洞检测、凭证暴露分析、攻击路径映射和合规审计。

Stars: 3 | Forks: 0

agent-bom

Build PyPI Docker License OpenSSF Stars

AI 供应链安全扫描器。扫描包和镜像中的 CVE。评估配置安全性 —— 凭证暴露、工具访问权限、权限提升。映射从漏洞到凭证和工具的波及范围。企业安全态势评分、事件关联、凭证风险排名。支持 10 大合规框架:OWASP LLM + OWASP MCP + OWASP Agentic + MITRE ATLAS + NIST AI RMF + EU AI Act + NIST CSF 2.0 + ISO 27001 + SOC 2 + CIS Controls v8。

## 架构

agent-bom enterprise overview

## CVE 如何在您的 AI 技术栈中传播

Blast Radius — How a CVE propagates through the AI stack

``` CVE-2025-1234 (CRITICAL · CVSS 9.8 · CISA KEV) └─ better-sqlite3@9.0.0 (npm) └─ sqlite-mcp (MCP Server · unverified · 🛡 root) ├─ Cursor IDE (Agent · 4 servers · 12 tools) ├─ ANTHROPIC_KEY, DB_URL, AWS_SECRET (Credentials exposed) └─ query_db, read_file, write_file, run_shell (Tools at risk) Fix: upgrade better-sqlite3 → 11.7.0 ``` ## 扫描器流水线

Scanner Architecture — 7-stage pipeline

1. **发现** —— 自动检测 18 个客户端(Claude Desktop, Cursor, Codex CLI, Gemini CLI, Goose 等)中的 MCP 配置 2. **提取** —— 提取服务器名称、包名称、环境变量**名称**和工具列表。凭证**值**永远不会被读取。 3. **扫描** —— 仅将包名称 + 版本发送到公共 API(OSV.dev, NVD, EPSS, CISA KEV)。包含 NVD 状态跟踪(已分析/已修改/已拒绝)及修复链接。 4. **分析** —— CVE 波及范围映射、跨 10 大框架的单个 CVE 合规标记、工具投毒检测(`--enforce`)、模型来源 5. **评分** —— 安全态势记分卡(等级 A–F)、凭证风险排名、按 Agent 分组的事件关联(P1–P4) 6. **报告** —— JSON, SARIF, CycloneDX, SPDX, HTML 或控制台输出。告警分发至 Slack/Webhooks。服务端不存储任何数据。 ## 企业扫描工作流

Enterprise Scan Workflow — Architecture & Data Flow

**信任保证:** 只读(无文件写入、无配置更改、不启动服务器)。`--dry-run` 预览所有文件和 API 调用后即退出。每个版本均经过 Sigstore 签名。运行 `agent-bom verify agent-bom` 以检查完整性。请参阅 [PERMISSIONS.md](PERMISSIONS.md) 获取完整的可审计信任契约。
架构数据流 (Mermaid) ``` graph TB subgraph Input["Input Sources"] MCP["MCP Configs\n18 Clients"] Docker["Docker Images"] K8s["Kubernetes"] Cloud["Cloud APIs\nAWS / Azure / GCP / Snowflake"] SBOM["Existing SBOMs\nCycloneDX / SPDX"] AI["AI Platforms\nHuggingFace / W&B / MLflow"] end subgraph Core["Core Engine"] Discovery["Discovery Engine"] Parser["Package Parser"] Scanner["Vulnerability Scanner\nOSV + NVD + EPSS + KEV"] Blast["Blast Radius Analyzer"] Compliance["Compliance Tagger\n10 Frameworks"] Posture["Posture Scorer"] end subgraph Output["Output Channels"] Console["Console / HTML"] SBOM_Out["CycloneDX / SPDX / SARIF"] API["REST API + MCP Server"] Alerts["Slack / Webhook / Jira"] end MCP --> Discovery Docker --> Discovery K8s --> Discovery Cloud --> Discovery SBOM --> Discovery AI --> Discovery Discovery --> Parser Parser --> Scanner Scanner --> Blast Blast --> Compliance Compliance --> Posture Posture --> Console Posture --> SBOM_Out Posture --> API Posture --> Alerts ``` 请参阅 [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) 获取完整的架构图集,包括数据流流水线、波及范围传播、合规框架映射和集成架构。
与 Grype / Syft / Trivy 的全功能对比 | | Grype / Syft / Trivy | agent-bom | |---|---|---| | 包 CVE 检测 | 是 | 是 —— OSV + NVD CVSS v4 + EPSS + CISA KEV + GHSA + NVIDIA CSAF + NVD 状态跟踪 | | SBOM 生成 | 是 (Syft) | 是 —— CycloneDX 1.6, SPDX 3.0, SARIF | | **AI Agent 发现** | — | 18 个 MCP 客户端 + Docker Compose 自动发现 | | **波及范围映射** | — | CVE → 包 → 服务器 → Agent → 凭证 → 工具 | | **凭证暴露** | — | 每个 Agent、每个漏洞泄露了哪些机密 | | **MCP 工具可达性** | — | 攻击者后利用阶段可触及哪些工具 | | **权限检测** | — | runs_as_root, shell_access, container_privileged, 每工具权限 | | **企业级修复建议** | — | 命名资产、影响百分比、风险描述 | | **10 大框架合规** | — | OWASP Agentic + OWASP LLM + OWASP MCP + MITRE ATLAS + NIST AI RMF + EU AI Act + NIST CSF 2.0 + ISO 27001 + SOC 2 + CIS Controls v8 | | **CVE 级别合规标记** | — | 单个漏洞的框架映射(严重性、KEV、EPSS、CWE、AI 包、修复可用性) | | **SAST 代码扫描** | — | Semgrep 封装器,带有跨所有 10 个框架的基于 CWE 的合规映射 | | **恶意包检测** | — | OSV MAL- 前缀标记 + 域名抢注启发式检测(覆盖 57 个流行包) | | **OpenSSF Scorecard 增强** | — | 来自 api.securityscorecards.dev 的包健康评分 | | **工具投毒检测** | — | 描述注入、能力组合、CVE 暴露、漂移 | | **模型权重来源** | — | SHA-256 哈希、Sigstore 文件检测、HuggingFace 元数据 | | **策略即代码** | — | 在 CI/CD 中阻止未验证服务器、执行阈值、EPSS/scorecard 条件 | | **安全态势记分卡** | — | 字母等级(A–F)、6 维评分、加权企业态势 | | **事件关联** | — | 按 Agent 分组漏洞、P1–P4 优先级、SOC 就绪事件摘要 | | **凭证风险排名** | — | 根据波及范围严重性层级对暴露凭证进行排名 | | **AI 框架识别** | — | 在镜像扫描中将 GPU/ML 包标记为高风险(通过 Grype/Syft) | | **横向移动分析** | — | Agent 上下文图、共享服务器/凭证检测、BFS 攻击路径 | | **427+ 服务器 MCP 注册表** | — | 风险级别、工具清单、每周自动同步 |
## 快速开始 ``` pip install agent-bom agent-bom scan # auto-discover + scan agent-bom scan --enrich # + NVD CVSS + EPSS + CISA KEV agent-bom scan -f html -o report.html # HTML dashboard agent-bom scan --enforce # tool poisoning detection agent-bom scan --fail-on-severity high -q # CI gate agent-bom scan --image myapp:latest # Docker image scanning agent-bom scan --k8s --all-namespaces # K8s cluster agent-bom scan --aws --snowflake --databricks # Multi-cloud agent-bom scan --hf-model meta-llama/Llama-3.1-8B # model provenance ``` 自动发现 Claude Desktop, Claude Code, Cursor, Windsurf, Cline, VS Code Copilot, Continue, Zed, Cortex Code (CoCo), Codex CLI, Gemini CLI, Goose, Snowflake CLI, OpenClaw, Roo Code, Amazon Q, ToolHive 以及 Docker MCP Toolkit。
**扫描对象:** | 来源 | 方式 | |--------|-----| | MCP 配置 | 自动发现(18 个客户端 + Docker Compose) | | Docker 镜像 | Grype / Syft / Docker CLI 降级方案 | | Kubernetes | 跨命名空间的 kubectl | | 云提供商 | AWS, Azure, GCP, Databricks, Snowflake, Nebius | | Terraform / GitHub Actions | AI 资源 + 环境变量 | | AI 平台 | HuggingFace, W&B, MLflow, OpenAI | | Jupyter notebooks | AI 库导入 + 模型引用 | | 模型文件 | 13 种格式(.gguf, .safetensors, .pkl, ...) | | 技能文件 | CLAUDE.md, .cursorrules, AGENTS.md | | 提示词模板 | .prompt, .promptfile, prompt.yaml | | Ollama 模型 | 通过 API + 清单进行本地盘点 | | 源代码 (SAST) | Semgrep 封装器,带 CWE 映射 | | 现有 SBOMs | CycloneDX / SPDX 导入 | **输出内容:** 控制台、HTML 仪表板、SARIF、CycloneDX 1.6、SPDX 3.0、Prometheus、OTLP、JSON、REST API **只读保证:** 从不写入配置,从不运行服务器,从不存储机密。所有 API 调用均为只读。请参阅 [PERMISSIONS.md](PERMISSIONS.md)。 **生态系统:** | 平台 | 链接 | |----------|------| | PyPI | `pip install agent-bom` | | Docker | `docker run agentbom/agent-bom scan` | | GitHub Action | `uses: msaad00/agent-bom@v0.50.0` | | MCP 注册表 | [server.json](integrations/mcp-registry/server.json) | | ToolHive | [registry entry](integrations/toolhive/server.json) | | OpenClaw | [SKILL.md](integrations/openclaw/SKILL.md) | | Smithery | [smithery.yaml](smithery.yaml) | | Railway | [Dockerfile.sse](Dockerfile.sse) |
扩展安装 | 模式 | 命令 | |------|---------| | Core CLI | `pip install agent-bom` | | Cloud (all) | `pip install 'agent-bom[cloud]'` | | AWS | `pip install 'agent-bom[aws]'` | | Snowflake | `pip install 'agent-bom[snowflake]'` | | Databricks | `pip install 'agent-bom[databricks]'` | | Nebius GPU cloud | `pip install 'agent-bom[nebius]'` | | REST API | `pip install 'agent-bom[api]'` | | Dashboard | `pip install 'agent-bom[ui]'` | | AI enrichment | `pip install 'agent-bom[ai-enrich]'` | | MCP server | `pip install 'agent-bom[mcp-server]'` | | OpenTelemetry | `pip install 'agent-bom[otel]'` | | Docker | `docker run --rm -v ~/.config:/root/.config:ro agentbom/agent-bom scan` |
## 面向个人开发者 ### CVE 扫描 + 波及范围 每个漏洞都会映射到您的 AI 技术栈:**哪些 Agent** 受影响、**哪些凭证** 被暴露、攻击者可以触及**哪些 MCP 工具**,以及**优先修复什么**。 数据源:OSV batch(主要)、NVD CVSS v4 + 状态跟踪(已分析/已修改/已拒绝)、FIRST EPSS 利用概率、CISA KEV 主动利用目录、GHSA、NVIDIA CSAF。每个 CVE 都包含来自 NVD 参考资料的修复源链接。 ### 引导式修复 每个修复建议都会确切告诉您将保护什么 —— 命名 Agent、凭证、工具、影响百分比和风险描述。固定版本会自动识别。 ### 权限检测 每个 MCP 服务器都会评估权限提升风险: | 信号 | 检测方式 | |--------|-----------| | **runs_as_root** | 命令/参数中包含 `sudo`,Docker `Config.User` 为空/"0"/"root" | | **shell_access** | bash/sh/zsh/powershell 命令,exec/shell 工具 | | **container_privileged** | Docker `HostConfig.Privileged`,CapAdd/CapDrop | | **tool_permissions** | 每工具的读/写/执行/破坏性分类 | 权限级别:**critical**(特权容器, CAP_SYS_ADMIN)→ **high**(root, shell)→ **medium**(fs 写入, network)→ **low**(只读)。 ### MCP 运行时自省 连接到活跃服务器以发现运行时工具/资源并检测与配置的漂移。只读 —— 仅调用 `tools/list` 和 `resources/list`。 ``` agent-bom scan --introspect ``` ### 工具投毒检测 对 MCP 工具描述进行静态分析,检测提示注入模式、危险能力组合(EXECUTE + WRITE)、服务器依赖中的 CVE 暴露,以及通过自省进行的工具漂移检测。 ``` agent-bom scan --enforce # tool poisoning + enforcement checks agent-bom scan --enforce --introspect # + drift detection against live servers ``` ### 恶意包检测 OSV MAL- 前缀标记 + 针对这 57 个流行 AI/ML 包的域名抢注启发式检测。在已知恶意 npm/PyPI 包进入您的 MCP 技术栈之前将其捕获。
技能文件 + 提示词扫描 扫描 CLAUDE.md, .cursorrules, AGENTS.md 中嵌入的 MCP 服务器、包和凭证。7 项安全检查:域名抢注检测、shell 访问、危险服务器名称、未验证服务器、过多凭证、外部 URL、未知包。 ``` agent-bom scan --skill CLAUDE.md # explicit agent-bom scan --scan-prompts # prompt template security ```
模型权重来源 SHA-256 哈希验证、Sigstore 签名文件检测和 HuggingFace 模型元数据(作者、许可证、模型卡、受限状态、下载量)。 ``` agent-bom scan --hf-model meta-llama/Llama-3.1-8B # HuggingFace provenance agent-bom scan --model-files ./models --model-provenance # hash + signature checks ```
Docker 镜像 + Jupyter notebook 扫描 3 层容器扫描(Grype → Syft → Docker CLI 降级)。检测 29+ AI 库、pip 安装、notebook 中的凭证。扫描 13 种模型文件格式。 ``` agent-bom scan --image myapp:latest # Docker image scanning agent-bom scan --jupyter ./notebooks # notebook audit agent-bom scan --model-files ./models # model file scanning ```
## 面向企业团队 ### 10 大框架合规映射 每个发现同时针对十个框架进行标记 —— 既在波及范围层面(部署上下文),也在单个 CVE 层面(严重性、KEV、EPSS、CWE、AI 包、修复可用性): | 类别 | 框架 | |----------|-----------| | **AI 专用** | OWASP Agentic Top 10, OWASP LLM 10, OWASP MCP Top 10, MITRE ATLAS, NIST AI RMF 1.0, EU AI Act | | **企业 GRC** | NIST CSF 2.0, ISO 27001:2022, SOC 2, CIS Controls v8 | - **OWASP Agentic Top 10** — ASI01 至 ASI10(Agent 自主性、工具滥用、生成持久化) - **OWASP LLM Top 10** — LLM01 至 LLM10(触发 7 个类别) - **OWASP MCP Top 10** — MCP01 至 MCP10(触发 8 个类别)—— token 暴露、工具投毒、供应链、影子服务器 - **MITRE ATLAS** — AML.T0010, AML.T0043, AML.T0051 等(映射 13 项技术) - **NIST AI RMF 1.0** — Govern, Map, Measure, Manage(映射 12 个子类别) - **EU AI Act** — ART-5 至 ART-17(禁止行为、高风险分类、网络安全) - **NIST CSF 2.0** — Govern, Identify, Protect, Detect, Respond(映射 14 个类别) - **ISO 27001:2022** — 附录 A 控制项 A.5.19 至 A.8.28(映射 9 项控制) - **SOC 2** — 信任服务标准 CC6 至 CC9(映射 9 项标准) - **CIS Controls v8** — 安全措施 CIS-02, CIS-07, CIS-16(映射 10 项措施) ### AI-BOM 导出 ``` agent-bom scan -f cyclonedx -o ai-bom.cdx.json # CycloneDX 1.6 agent-bom scan -f spdx -o ai-bom.spdx.json # SPDX 3.0 agent-bom scan -f sarif -o results.sarif # GitHub Security tab agent-bom scan -f json -o ai-bom.json # Full AI-BOM agent-bom scan -f html -o report.html # Interactive dashboard agent-bom scan -f mermaid # Mermaid supply chain diagram agent-bom scan -f graph -o graph.json # Cytoscape-compatible graph JSON ``` ### 策略即代码 ``` agent-bom scan --policy policy.json --fail-on-severity high ``` 支持的策略条件:`severity_gte`, `is_kev`, `ai_risk`, `has_credentials`, `ecosystem`, `package_name_contains`, `min_agents`, `min_tools`, `unverified_server`, `registry_risk_gte`, `owasp_tag`, `owasp_mcp_tag`, `is_malicious`, `min_scorecard_score`, `max_epss_score`, `has_kev_with_no_fix` ### 企业安全运营 **安全态势记分卡** —— 字母等级(A–F)、数字评分(0–100)、6 维细分: | 维度 | 权重 | 衡量指标 | |-----------|--------|----------| | 漏洞态势 | 30% | 严重性分布、修复可用性 | | 凭证卫生 | 20% | 凭证暴露足迹 | | 供应链质量 | 15% | OpenSSF Scorecard 覆盖率 | | 合规覆盖率 | 15% | 威胁框架标签映射 | | 主动利用 | 10% | KEV、高 EPSS 存在情况 | | 配置质量 | 10% | 注册表验证、工具声明 | **事件关联** —— 按 Agent 对漏洞进行分组,用于 SOC 工作流: - 优先级:P1(KEV/多关键)→ P2(critical+creds)→ P3(high)→ P4(monitor) - 每 Agent:唯一 CVE、KEV ID、暴露凭证、受影响包、建议措施 **凭证风险排名** —— 根据波及范围对所有暴露凭证进行排名: - 风险层级:critical(关键 CVE 暴露)→ high → medium → low - 按凭证聚合所有 Agent 和服务器的数据 ### 云提供商发现 ``` agent-bom scan --aws --aws-region us-east-1 # Bedrock, Lambda, EKS, ECS, EC2, Step Functions agent-bom scan --snowflake # Cortex Agents, MCP Servers, Search, Snowpark agent-bom scan --databricks # Cluster libraries, model serving agent-bom scan --nebius --nebius-project-id proj # GPU cloud K8s + containers agent-bom scan --k8s --context=coreweave-cluster # CoreWeave / any K8s ```
云提供商详情 | 提供商 | 深度 | 发现内容 | 安装 | |----------|-------|------------------|---------| | **Snowflake** | **深度** | Cortex Agents, 原生 MCP 服务器, Search, Snowpark, Streamlit, 查询历史, 治理, 活动, 可观测性 | `pip install 'agent-bom[snowflake]'` | | **AWS** | **标准** | Bedrock agents, Lambda 包提取, EKS, ECS, Step Functions, EC2, SageMaker | `pip install 'agent-bom[aws]'` | | **Databricks** | 预览 | 集群包, 模型服务端点 | `pip install 'agent-bom[databricks]'` | | **Azure** | **标准** | OpenAI 部署, Functions, Container Instances, ML 端点, AI Foundry 工作区, Container Apps | `pip install 'agent-bom[azure]'` | | **GCP** | **标准** | Vertex AI 端点, Cloud Functions, GKE, Cloud Run | `pip install 'agent-bom[gcp]'` | | **Nebius** | 预览 | 托管 K8s, 容器服务 | `pip install 'agent-bom[nebius]'` | | **CoreWeave** | 通过 K8s | K8s 原生 —— `--k8s --context=coreweave-cluster` | (core CLI) | | **Ollama** | 标准 | 通过 API + 清单进行本地模型盘点 | (core CLI) |
交互式安全图谱可视化 仪表板(`agent-bom api`)提供交互式 [React Flow](https://reactflow.dev/) 图谱: - **Agent Mesh**(`/mesh`)—— 跨 Agent 拓扑,带有漏洞叠加、共享服务器检测、凭证波及分析 - **Attack Flow**(`/scan?view=attack-flow`)—— 以 CVE 为中心的波及范围图:CVE → 包 → 服务器 → Agent → 凭证 → 工具 - **Supply Chain Lineage**(`/graph`)—— 完整依赖谱系,带有悬停高亮和详情面板 - **Context Graph**(`/context`)—— 横向移动分析:通过共享服务器、凭证和工具的 Agent 间攻击路径
AI 驱动的增强 LLM 生成的风险描述、执行摘要和威胁链分析。适用于本地 Ollama(免费)或通过 litellm 的 100+ 提供商。 ``` agent-bom scan --ai-enrich # auto-detect Ollama agent-bom scan --ai-enrich --ai-model ollama/llama3 # specific model ```
补充咨询增强 除 OSV.dev 外,agent-bom 还检查补充源以捕获尚未索引的 CVE: - **GitHub Security Advisories (GHSA)** —— 所有生态系统(PyPI, npm, Go, Maven, Cargo, NuGet) - **NVIDIA CSAF advisories** —— GPU/ML 包(CUDA, cuDNN, TensorRT, NCCL) 两个源均根据 CVE ID 与 OSV 结果进行去重。
## 部署 | 模式 | 命令 | 适用场景 | |------|---------|----------| | CLI | `agent-bom scan` | 本地审计 | | Pre-install check | `agent-bom check express@4.18.2 -e npm` | 运行 MCP 服务器前检查 | | GitHub Action | `uses: msaad00/agent-bom@v0.50.0` | CI/CD + SARIF | | Docker | `docker run agentbom/agent-bom scan` | 隔离扫描 | | REST API | `agent-bom api` | 仪表板, SIEM | | Runtime proxy | `agent-bom proxy` | MCP 流量审计(按服务器选择加入) | | MCP Server | `agent-bom mcp-server` | 在任何 MCP 客户端内部 | | Dashboard | `agent-bom serve` | API + Next.js 仪表板 | | Snowflake | `SNOWFLAKE_ACCOUNT=... agent-bom api` | Snowpark + SiS | | Prometheus | `--push-gateway` / `--otel-endpoint` | 监控 | ### GitHub Action ``` - uses: msaad00/agent-bom@v0.50.0 with: severity-threshold: high upload-sarif: true enrich: true fail-on-kev: true ``` ### REST API ``` pip install agent-bom[api] agent-bom api --api-key $SECRET --rate-limit 30 # http://127.0.0.1:8422/docs ``` | 端点 | 描述 | |----------|-------------| | `POST /v1/scan` | 启动异步扫描 | | `GET /v1/scan/{id}` | 结果 + 状态 | | `GET /v1/scan/{id}/attack-flow` | 单个 CVE 的波及范围图 | | `GET /v1/registry` | 427+ 服务器注册表 | | `GET /v1/compliance` | 完整的 10 大框架合规态势 | | `GET /v1/compliance/{framework}` | 单个框架(owasp-llm, owasp-mcp, owasp-agentic, atlas, nist, eu-ai-act, nist-csf, iso-27001, soc2, cis) | | `GET /v1/posture` | 企业安全态势记分卡(等级 A–F,6 个维度) | | `GET /v1/posture/credentials` | 按波及范围排序的凭证风险排名 | | `GET /v1/posture/incidents` | 按 Agent 关联的事件(P1–P4) | | `POST /v1/traces` | OpenTelemetry trace 摄取 + 易受攻击工具调用标记 | | `GET /v1/scan/{id}/context-graph` | Agent 上下文图 + 横向移动路径 | | `GET /v1/malicious/check` | 恶意包 / 域名抢注检查 | ### MCP Server ``` pip install agent-bom[mcp-server] agent-bom mcp-server # stdio agent-bom mcp-server --transport sse # remote ``` 16 个工具:`scan`, `check`, `blast_radius`, `policy_check`, `registry_lookup`, `generate_sbom`, `compliance`, `remediate`, `verify`, `where`, `inventory`, `diff`, `skill_trust`, `marketplace_check`, `code_scan`, `context_graph` ### Cloud UI ``` cd ui && npm install && npm run dev # http://localhost:3000 ``` 15 个部分的 Next.js 仪表板: | 页面 | 描述 | |------|-------------| | Dashboard | 安全态势摘要 + 统计卡片 | | Scan | 带云选项的企业扫描表单 | | Vulnerabilities | CVE 浏览器,支持严重性/EPSS/KEV 过滤 | | Agents | 集群注册表 + 生命周期状态管理 | | Compliance | 10 大框架合规态势(OWASP Agentic, OWASP LLM, OWASP MCP, ATLAS, NIST AI RMF, EU AI Act, NIST CSF 2.0, ISO 27001, SOC 2, CIS Controls v8) | | Lineage Graph | 交互式供应链图谱 —— dagre 布局,7 种节点类型,过滤面板 | | Agent Mesh | 跨 Agent 拓扑 —— 共享服务器检测、凭证波及范围、工具重叠 | | Gateway | 运行时 MCP 策略规则 + 审计日志 | | Registry | 427+ MCP 服务器浏览器 | | Fleet | Agent 信任评分 + 集群管理 | | Activity | Agent 活动时间线 + AI 可观测性 | | Governance | Snowflake 访问权限、特权、数据分类 | | Traces | OpenTelemetry trace 摄取 + 易受攻击工具调用标记 | | Context Graph | 横向移动分析 —— Agent 间攻击路径、共享凭证、工具重叠 | | Jobs | 后台扫描作业管理 | ### Snowflake 部署 ``` pip install 'agent-bom[api,snowflake]' ``` | 组件 | 描述 | |-----------|-------------| | Snowflake 表存储 | `SnowflakeJobStore`, `SnowflakeFleetStore`, `SnowflakePolicyStore` —— 自动检测密钥对或密码认证 | | Snowpark Container Services | `Dockerfile.snowpark` + `snowflake/setup.sql` —— 在 Snowflake 内部运行 API | | Streamlit in Snowflake | `snowflake/streamlit_app.py` —— 6 标签页 SiS 仪表板,从共享表读取数据 | | Native App | `snowflake/native-app/` —— 可通过 Marketplace 分发的包 | 设置 `SNOWFLAKE_ACCOUNT` + `SNOWFLAKE_USER` + 认证(`SNOWFLAKE_PRIVATE_KEY_PATH` 或 `SNOWFLAKE_PASSWORD`),API 将自动切换至 Snowflake 持久化。 请参阅 [DEPLOYMENT.md](DEPLOYMENT.md) 获取完整的 Snowflake 架构和设置说明。
Snowflake 部署架构

Snowflake Deployment Architecture

企业部署拓扑

Enterprise Deployment Topology

## MCP Server Registry(427+ 服务器) 包含 427+ 已知 MCP 服务器的精选注册表,具备风险级别、工具清单、凭证环境变量、分类和版本固定。每周从 [Official MCP Registry](https://registry.modelcontextprotocol.io) 自动同步。未验证的服务器会触发警告。策略规则可在 CI 中阻止它们。 浏览:[mcp_registry.json](src/agent_bom/mcp_registry.json) | 扩展:`python scripts/expand_registry.py` ## AI 供应链覆盖范围 | 层级 | 覆盖范围 | 示例 | |-------|----------|----------| | **GPU/ML 包** | 通过 Grype/Syft 的 `--image` | NVIDIA CUDA, cuDNN, TensorRT, AMD ROCm —— 通过包名匹配标记 | | **GPU 云** | `--k8s` Pod 发现 | CoreWeave, Lambda Labs, Nebius, Paperspace —— 镜像级扫描 | |AI 平台** | 云模块 | Bedrock, Vertex AI, Snowflake Cortex, Databricks | | **容器** | 通过 Grype/Syft 的 `--image` | NVIDIA NGC, ROCm, vLLM, Triton, Ollama —— 任何 OCI 镜像 | | **AI 框架** | 依赖扫描 | LangChain, LlamaIndex, AutoGen, PyTorch, JAX, TensorFlow | | **推理服务器** | `--image` | vLLM, Triton, TGI, llama.cpp | | **MLOps** | 依赖扫描 | MLflow, W&B, Ray, ClearML | | **MCP 生态系统** | 自动发现 + 注册表 | 18 个客户端, 427+ 服务器 | | **LLM 提供商** | API Key + SDK 检测 | OpenAI, Anthropic, Cohere, Mistral | | **IaC + CI/CD** | `--tf-dir`, `--gha` | Terraform AI 资源, GitHub Actions | ## 信任与权限 - **`--dry-run`** —— 在访问前预览每个文件和 API URL,然后不读取任何内容即退出 - **[PERMISSIONS.md](PERMISSIONS.md)** —— 可审计的信任契约,枚举了所有配置路径 - **只读** —— 从不写入配置、运行服务器、配置资源或存储机密 - **凭证脱敏** —— 报告中仅包含环境变量**名称**;值、Token、密码永远不会被读取 - **Sigstore 签名** —— v0.7.0+ 版本通过 cosign OIDC 签名;使用 `agent-bom verify agent-bom@0.50.0` 验证 PyPI 完整性(SHA-256 + SLSA 来源) - **MCP 无需二进制文件** —— SSE 传输无需任何本地安装;本地 CLI 适用于离线环境 - **OpenSSF Scorecard** —— [自动化供应链评分](https://securityscorecards.dev/viewer/?uri=github.com/msaad00/agent-bom) ## 路线图 **已发布:** - [x] 云 AI 盘点 —— AWS Bedrock, Azure AI Foundry, GCP Vertex, Snowflake Cortex, Databricks, Nebius - [x] 工具投毒 / 提示注入检测 —— `--enforce` 支持描述注入、能力组合、CVE 暴露、漂移 - [x] 模型权重来源 —— SHA-256 哈希、Sigstore 文件检测、HuggingFace 元数据(`--model-provenance`, `--hf-model`) - [x] 18 个 MCP 客户端发现 —— Codex CLI, Gemini CLI, Goose, Snowflake CLI, 完整 Cortex Code (CoCo) 覆盖 - [x] K8s AI 工作负载发现 —— `--k8s --all-namespaces` 支持 Pod 级别扫描 - [x] OWASP MCP Top 10 合规映射 —— MCP01–MCP10 风险标记 - [x] 恶意包检测 —— OSV MAL- 前缀标记 + 域名抢注启发式检测 - [x] OpenSSF Scorecard 增强 —— `--scorecard` 用于包健康评分 - [x] AI 框架包识别 —— GPU/ML 包(CUDA, ROCm, vLLM, JAX 等)在镜像扫描中标记为高风险 - [x] 运行时 MCP 代理 —— 选择性 stdio 代理(`agent-bom proxy`)封装单个 MCP 服务器命令以进行流量拦截;需要逐服务器重新配置客户端 - [x] 企业集成 —— Jira, Slack, Vanta, Drata - [x] 运行时 Sidecar Docker 容器 —— `Dockerfile.runtime` + Docker Compose 用于 MCP 代理部署 - [x] EU AI Act 合规映射 —— ART-5 至 ART-17 风险分类 - [x] OWASP Agentic Top 10 —— ASI01 至 ASI10 Agent 特定风险标记 - [x] Marketplace 信任检查 —— `marketplace_check` MCP 工具用于安装前验证 - [x] OpenTelemetry trace 摄取 —— `POST /v1/traces` 用于易受攻击工具调用标记 - [x] CMMC/FedRAMP 合规证据导出 —— `--compliance-export` ZIP 包 - [x] Agent 生成树可视化 —— 父子委托链 - [x] RSP v3.0 对齐徽章 —— Anthropic Responsible Scaling Policy 合规指示器 - [x] Claude Code 配置安全扫描器 —— Check Point CVE 向量检测 - [x] 过度权限分析器 —— 按 Agent 类型执行任务配置文件 - [x] 告警流水线 —— AlertDispatcher 支持 Slack、Webhook 和内存通道;扫描时自动触发 - [x] 运行时保护引擎 —— 统一的 5 检测器编排,支持 OTel trace 摄取 - [x] 多租户集群 —— tenant_id 作用域、X-Tenant-ID 标头、每租户统计 - [x] 企业安全态势记分卡 —— 字母等级(A–F)、6 维细分、扫描输出中自动计算 - [x] 事件关联 —— 按 Agent 分组漏洞,支持 P1–P4 优先级,适用于 SOC 工作流 - [x] 凭证风险排名 —— 所有暴露凭证的波及范围严重性排名 - [x] Slack 波及范围增强 —— Webhook 负载包含风险评分、Agent、凭证、修复版本 - [x] 高级策略条件 —— `min_scorecard_score`, `max_epss_score`, `has_kev_with_no_fix` - [x] 企业加固 —— 有界缓存、SQLite 索引、僵死作业清理、Content-Length 验证 - [x] Agent 上下文图 —— 通过共享服务器、凭证和工具进行的横向移动分析;BFS 攻击路径发现 - [x] 企业安全加固 —— 作业级线程锁、SSRF 防护、错误清洗、RBAC 最小权限、路径遍历防护 - [x] NIST CSF 2.0 合规映射(跨越 Govern, Identify, Protect, Detect, Respond 的 14 个类别) - [x] ISO 27001:2022 合规映射(9 个 Annex A 控制项, A.5.19–A.8.28) - [x] SOC 2 信任服务标准(9 项标准, CC6–CC9) - [x] CIS Controls v8(10 项安全措施, CIS-02/CIS-07/CIS-16) - [x] 仅关键严重性触发器(EU AI Act ART-5 Prohibited Practices) - [x] SSH/OAuth/PKI/SCIM 凭证检测 - [x] SAST 代码扫描 —— Semgrep 封装器,带有跨所有 10 个框架的基于 CWE 的合规映射(`code_scan` MCP 工具) - [x] NVD 漏洞状态跟踪 —— 每个 CVE 的 Analyzed/Modified/Rejected 状态 + 来自 NVD 参考资料的修复源链接 - [x] CVE 级别合规标记 —— 跨所有 10 个框架的单个漏洞映射(严重性、KEV、EPSS、CWE、AI 包、修复可用性) **计划中:** - [ ] 平台特定的 CIS Benchmarks: - AWS Foundations Benchmark v3.0 - GCP Foundations Benchmark v3.0 - Azure Foundations Benchmark v2.1 - Snowflake Benchmark v1.0 - Kubernetes Benchmark v1.9 - [ ] 许可证合规引擎 - [ ] 工作流引擎扫描(n8n, Zapier, Make) ## 贡献 ``` git clone https://github.com/msaad00/agent-bom.git && cd agent-bom pip install -e ".[dev]" pytest && ruff check src/ ``` 请参阅 [CONTRIBUTING.md](CONTRIBUTING.md) | [SECURITY.md](SECURITY.md) | [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md) | [Skills](skills/) Apache 2.0 — [LICENSE](LICENSE)
标签:AI供应链安全, CI/CD安全, CIS Controls, Claude, CVE检测, DevSecOps, DNS 反向解析, Docker镜像扫描, EU AI Act, ISO 27001, Llama, LLM防护, MCP安全, MITRE ATLAS, NIST AI RMF, NIST CSF, OWASP LLM, OWASP Top 10, Python安全工具, SBOM, SOC 2, StruQ, Web截图, Web报告查看器, 上游代理, 协议分析, 子域名突变, 安全态势管理, 容器安全, 密钥泄露检测, 文档安全, 智能体安全, 权限提升, 爆炸半径分析, 用户代理, 硬件无关, 请求拦截, 逆向工具, 风险量化