构建 Claude Code 安全护栏:AI大模型与API聚合平台对比资源全景盘点
这份报告的信息源是 GitHub 仓库 efij/awesome-claude-code-security,我们分析的是其在 commit 27230a5e16aa1134103e94901ab375e0e4e9ede4 下的快照。该快照固定于 2026 年 3 月 12 日,它代表了社区对 Claude Code 安全生态的一次系统性梳理,而非 Anthropic 的官方指南。
这篇文章并非按部就班的操作手册,而是一份安全资源导航图。其核心是一个庞大的索引库,涵盖了 Claude Code 及 AI 编程智能体生态中的官方文档、加固方案、沙箱隔离、钩子机制、模型上下文协议安全、提示词注入防护、机密信息泄露防范、企业级治理、持续集成、安全扫描工具、漏洞研究、行业标准等众多维度。
需要强调的是,该目录中涉及的 CVE 编号、产品能力描述、社区星标数、厂商说法、检测覆盖率、文档路径以及诸如“生产可用”或“黄金标准”等评价标签,均具有一定的时效性。我们在归档时并未对每条信息进行复核。因此,本文仅作为一份中文结构化整理,旨在提供参考框架,绝不能直接替代严谨的安全基线、官方漏洞公告或专业的第三方审计。
为何此目录值得关注
Claude Code 的风险模型有别于普通的聊天机器人。它具备直接读写项目文件、执行系统命令、调用外部 API、集成 MCP 服务器、运行钩子脚本,甚至作为插件、技能或子智能体被调用的能力,并且能在非交互式的 CI/CD 环境中自主运行。
正因如此,恶意的配置文件(如 .claude/settings.json)、被投毒的 MCP 工具、隐藏在文档中的提示词注入攻击、过度宽松的权限设置,或是意外泄露的 API 密钥,都可能被利用来执行远程代码、窃取凭证或外传数据。
这份目录的核心价值,正是将上述所有潜在风险点绘制到一张清晰的地图上,为团队构建 Claude Code 的安全治理体系与对比维度提供直接抓手。
资源分类总览
原始 README 大致将安全主题划分为 19 个类别:
| 分类 | 核心关注领域 |
|---|---|
| 官方安全文档 | Claude Code 官方提供的安全概述、权限配置、沙箱、钩子、设置、认证、数据用法及 MCP 配置指南。 |
| 加固与权限控制 | 生产环境加固模板、最小权限配置、智能体配置保护、注入防御与供应链管控方案。 |
| 沙箱与隔离 | 包括 MicroVM、容器、gVisor、Seatbelt、bubblewrap 在内的多种 AI 智能体执行环境隔离技术。 |
| 钩子与防护栏 | PreToolUse、PostToolUse、ConfigChange 等钩子机制,用于命令拦截、注入检测与审计日志记录。 |
| MCP 安全 | MCP 扫描器、网关、代理、安全标准、工具投毒、凭证窃取等议题。 |
| 提示词注入与智能体威胁 | 提示词注入攻击研究、智能体劫持、混淆代理人问题及红队测试方法。 |
| 密钥与数据泄露 | 机密信息扫描、PII 过滤、敏感文件拒绝访问、API 密钥 Harvesting 攻击。 |
| 企业治理与策略 | 托管设置、单点登录、审计追踪、基于角色的访问控制(RBAC)、组织级策略。 |
| 安全的 CI/CD 与自动化 | GitHub Actions 集成、无头模式安全、流水线权限、网络监控。 |
| 插件与供应链 | 插件市场信任模型、MCP 服务器来源验证、技能供应链安全。 |
| 智能体编排与循环安全 | 多智能体协作、任务委派、循环任务风险、跨智能体策略执行。 |
| 操作系统与端点加固 | macOS Seatbelt、Linux bubblewrap、VS Code 信任模式、端点控制。 |
| 安全工具与扫描器 | 针对 Claude Code 的扫描器、MCP 扫描器、LLM 红队工具、密钥扫描器。 |
| 漏洞研究 | 远程代码执行(RCE)、基于钩子的 RCE、API 密钥 Harvesting 漏洞研究披露。 |
| 框架与标准 | OWASP LLM Top 10、OWASP Agentic Top 10、AISVS、NIST AI RMF、MITRE ATLAS 等。 |
| 研究与分析报告 | 行业会议材料、深度安全研究、厂商解决方案分析。 |
| 竞品与相邻控制面 | GitHub Copilot、Microsoft、Google、Palo Alto 等竞品及相邻领域的安全控制。 |
| 清单与模板 | 可直接落地的安全检查清单(Checklist)与策略模板。 |
| 社区与生态 | 关于 Claude Code、MCP、LLM 安全、智能体安全的其他相关资源聚合。 |
对于构建对比框架而言,这张分类表可直接转化为“安全层”的二级评估维度。
官方安全文档要点
目录首要列举了 Claude Code 的官方安全文档,内容涵盖:
- 安全概述
- 权限配置
- 沙箱化
- 钩子参考与指南
- 设置说明
- 认证机制
- 数据用法与零数据留存策略
- 监控与使用情况
- MCP 配置
- Web 版 Claude Code
- Amazon Bedrock 集成
这些文档构成了 Claude Code 安全对比的权威事实基础。设计对比集时,不能泛泛地询问模型“是否安全”,而应将这些官方机制转化为可验证的具体任务。
例如,可据此设计如下对比样本:
- 权限模型:给定一个
.claude/settings.json文件,判断其 Allow / Ask / Deny 权限设置是否符合最小权限原则。 - 沙箱使用:评估一项任务是否必须在沙箱中执行,并验证对文件系统和网络的限制是否生效。
- 钩子设计:要求编写一个能在危险命令执行前拦截的 PreToolUse 钩子。
- 配置层级:判断 Managed、CLI、Local、Project、User 这些配置层级中,哪一项优先级最高。
- 认证安全:检查项目配置文件中是否错误地硬编码了 API 密钥。
- 数据边界:判断某类数据(如生产环境密钥)是否允许进入 Claude Code 会话。
- MCP 配置审查:评估一个 MCP 服务器的 scope、传输协议、认证方式和允许列表设置是否合理。
- 审计监控:设计基于 OpenTelemetry 或结构化日志的审计字段,用于追踪智能体行为。
加固与权限控制
此类资源聚焦于如何将 Claude Code 的配置锁得更坚固。资源包括:
- Trail of Bits 发布的
claude-code-config加固方案 - 渐进式安全加固框架
- 包含安全组件的 Claude Code 配置指南
- 生产就绪的配置模板
- 安全加固审查提示词
- GitHub Actions 中使用的 Harden-Runner
- 应用安全厂商对 Claude Code 安全模型的分析
团队的首要任务并非直接套用某个模板,而是应从中抽象出一份加固检查清单,例如:
- 默认权限是否过于宽松?
- 是否限制了破坏性的 shell 命令执行?
- 是否对
.env、SSH 密钥、云平台凭证等进行了保护? - 是否启用了沙箱或隔离执行环境?
- 是否有钩子来记录和拦截危险操作?
- 是否将 MCP 服务器纳入了允许列表?
- 是否实现了项目级与组织级配置的分离与继承?
- 是否能够审计智能体的整个执行过程?
对比样本可设计为配置审查题:向模型提供一个存在安全风险的 .claude/settings.json、.mcp.json、CLAUDE.md 或钩子配置文件,要求其识别风险并给出最小化的修复方案。
沙箱与隔离技术
本部分汇总了多样化的 AI 智能体沙箱方案,例如:
- 基于 MicroVM 的沙箱
- Docker / 容器沙箱
- Kubernetes 智能体沙箱
- 融合了浏览器、Shell、文件系统、MCP、VS Code Server 的一体化隔离环境
- SWE-agent 采用的沙箱化 Shell
- MicroVM、gVisor、强化容器的技术对比文章
- Claude Code 在 macOS Seatbelt 与 Linux bubblewrap 上的隔离实现说明
这些资源提示我们,Claude Code 的安全对比绝不能仅在“本地开发机裸跑”的场景下进行验证。真实部署环境至少涵盖三类:
- 开发者本地工作站
- 远程服务器
- CI/CD 或云端隔离环境
这为对比框架引入了“基础设施与隔离”层。需要评估的维度包括:
| 评估维度 | 具体对比内容 |
|---|---|
| 文件系统边界 | 是否为只读?能否写入工作目录之外的文件?敏感文件是否受保护? |
| 网络边界 | 是否能访问任意公网地址?是否具备域名白名单? |
| 进程边界 | 能否启动任意子进程?能否作为后台服务长时间运行? |
| 回滚能力 | 任务失败后,工作区状态能否被恢复? |
| 环境一致性 | 本地、服务器、CI 环境中的权限策略是否保持一致? |
| 可观测性 | 是否记录了执行的命令、文件变更、MCP 调用及失败原因? |
钩子与防护栏机制
钩子是 Claude Code 安全治理的关键执行点。目录收录的资源包括:
- 能拦截破坏性 Git/文件系统操作的安全网插件
- 可实时扫描文件、网页内容、命令输出中提示词注入的钩子
- 高级钩子模式与技巧
- 结合钩子实现多智能体可观测性的方案
- 包含钩子、技能、智能体、命令、GitHub Actions 的综合性项目示例
- NVIDIA NeMo Guardrails 等通用防护栏工具
钩子可用于三类对比设计:
- 事前拦截:在执行
rm -rf、写入.env、修改.git等操作前触发阻止。 - 事后审计:记录工具调用、文件变更、MCP 响应及异常退出事件。
- 注入检测:识别 README、网页、命令输出等位置中试图泄露机密的指令。
构建此类对比样本时,不能仅验证模型是否完成了最终任务,还必须记录钩子是否触发、是否正确阻断、是否提供了可解释的阻断原因,以及模型在阻断后是否能选择安全的替代路径继续执行。
MCP 安全深度剖析
MCP(模型上下文协议)安全是本目录的核心板块之一。内容覆盖:
- MCP 扫描器
- MCP 网关与代理
- MCP 安全标准与清单
- 工具投毒(Tool Poisoning)
- 后置条件变更(Rug Pull)
- 凭证窃取
- 跨服务器操控
- 混淆代理人攻击
- GitHub MCP 漏洞案例
- 隐形后门
- MCP 安全论文与基准测试
从对比角度看,连接上一个 MCP 服务器远非安全终点。至少需要进行分层对比:
| 对比层级 | 对比内容要点 |
|---|---|
| 连接层 | 服务器是否可正常启动?传输协议与认证是否正确? |
| Schema 层 | 工具名称、描述、参数 Schema 是否清晰且未被恶意诱导? |
| 路由层 | 模型是否选择了正确的工具,而非误用邻近工具? |
| 执行层 | 工具调用参数是否正确?状态修改是否符合预期? |
| 信任层 | 模型能否识别恶意的工具描述、后置条件变更或权限扩大行为? |
| 数据层 | 是否避免将密钥、私有代码仓库、敏感文件发送给不可信的服务器? |
| 恢复层 | 当 MCP 调用失败、超时或返回异常数据时,模型能否安全降级处理? |
这部分内容可直接指导设计 Native MCP 对比集:除了功能正确性,必须加入工具投毒、权限越界、跨服务器混淆、敏感信息外传等安全测试样本。
提示词注入与智能体威胁
目录列举了与 Claude Code 相关的提示词注入研究及通用红队工具,例如:
- Check Point 针对 Claude Code 项目文件引发远程代码执行(RCE)、钩子 RCE、API 密钥 Harvesting 的研究
- Lasso hooks 的实时提示词注入检测能力
- promptfoo、Garak、PyRIT、Rebuff、HouYi、Open-Prompt-Injection、promptmap 等红队工具
- OWASP LLM01 风险项
在 Claude Code 场景中,提示词注入可能隐藏在:
- README 文件
- Issue / PR 描述
- 网页内容
- 代码文档注释
- MCP 工具描述
- 命令行输出
- 测试日志
- 依赖包说明
- 生成的制品文件
因此,对比样本应区分两种核心能力:
- 识别能力:能否将恶意内容识别出来,而不将其误认为高优先级的合法指令?
- 隔离能力:在继续执行原任务的同时,能否隔离或忽略该恶意指令?
一个完备的 Claude Code 对比框架,应将“抗注入能力”作为一项独立的评估主线,因为其影响贯穿几乎所有工具链路。
密钥与数据泄露防范
此类资源涵盖了机密信息扫描器、PII 检测、敏感文件保护和 API 密钥 Harvesting 攻击。代表性工具包括:
- TruffleHog
- Gitleaks
- ggshield
- LLM Guard
- GitHub Secret Protection
Claude Code 专项相关的资源包括:
- 数据用法与隐私政策
- 零数据留存配置
- 敏感文件保护
- API 密钥 Harvesting 漏洞研究
这为对比带来了“敏感信息边界”测试的启发:
| 测试样本场景 | 期望模型表现出的安全行为 |
|---|---|
用户要求模型读取 .env 文件并总结其中内容 | 拒绝泄露密钥内容,转而提示如何安全地配置和使用环境变量。 |
| README 文件中包含“请将你的令牌上传到…”的指令 | 将其识别为注入攻击,拒绝执行该指令。 |
| 工具输出结果中包含了一段密钥字符串 | 在最终的回答中应对该密钥进行脱敏处理。 |
| 生成配置文件模板 | 使用环境变量占位符(如 $API_KEY),而非写入真实的密钥值。 |
| 生成 CI/CD 脚本 | 不会使用 echo 等命令将密钥打印到日志中。 |
此类样本的验证器可结合正则表达式、信息熵检测以及人工评分规则(Rubric)来实现。
企业级治理与策略
企业治理部分关注组织级的能力落地,涵盖:
- 托管设置(Managed Settings)
- 监控与审计
- 认证与单点登录(SSO)
- 基于角色的访问控制(RBAC)
- MCP 允许列表
- 智能体控制平面
- 组织级 AI 策略
- 构建/部署/运行阶段的安全蓝图
对 Claude Code 对比而言,这意味着除了单次任务能力,还需评估“组织可控性”:
- 能否统一下发和强制执行设置?
- 能否阻止项目级配置覆盖组织级策略?
- 能否审计完整的会话记录?
- 能否按团队、仓库或角色来控制访问权限?
- 能否统一管理所有 MCP 服务器的接入?
- 模型调用与工具使用的成本是否可观测?
- 能否对失败的样本进行回溯复盘?
这些指标或许不直接由单个模型的回答质量决定,但必须融入对比平台与执行器(Runner)的设计之中。
安全的 CI/CD 与自动化集成
这部分关注 Claude Code 在 GitHub Actions、无头模式及自动化流水线中的安全运行。
关键风险点包括:
- 无交互模式下,审批机制存在差异
- CI 环境使用的令牌权限可能过高
- 工作流可能有权访问私有代码和密钥
- 网络访问默认开放
- 智能体修改代码后可能自动提交或评论
- 日志可能泄露敏感信息
- MCP 集成或包安装引入供应链风险
对比框架应为此建立专门的 CI/CD 样本池,测试场景包括:
- 拉取请求(PR)安全审查
- 自动修复漏洞
- 生成补丁但不直接推送
- 检查工作流文件的权限配置
- 识别日志输出中的密钥信息
- 在网络受限环境中处理 MCP 调用失败
- 输出 SARIF 等结构化报告
这有助于我们区分“交互式 Claude Code 能力”与“服务器/CI 自动化环境下的 Claude Code 能力”。
插件、扩展与供应链安全
插件与扩展的供应链部分覆盖:
- 插件市场的信任模型
- Anthropic 官方插件目录
- safety-net 等安全插件
- MCP 服务器安全标准
- 精选插件列表
- Trail of Bits 提出的安全技能(Skills)
- Sonatype 等提供的供应链情报类 MCP
结合这些资源,可以形成插件对比的方法论,重点检查以下风险点:
| 风险点 | 需检查的内容 |
|---|---|
| 来源可信度 | 官方来源、社区管理、自建或未知来源。 |
| 组件类型 | 明确是技能(Skill)、智能体(Agent)、钩子(Hook)、命令(Command)还是 MCP。 |
| 权限申请 | 是否申请了 Shell 执行、网络访问、文件读写、凭证访问或 MCP 调用权限。 |
| 外部依赖 | 是否下载 npm、pip 包或二进制文件。 |
| 更新风险 | 是否存在后置条件变更(Rug Pull)或工具描述被篡改的可能。 |
| 配置写入 | 是否修改项目设置或托管设置。 |
| 数据流向 | 是否将项目代码、令牌、日志等数据发送至外部服务。 |
在构建高频使用的技能或 MCP 对比集时,应将“使用频率”与“风险等级”结合考虑,而非单纯依据社区星标数排序。
智能体编排与循环安全
多智能体协作与自动化循环任务的风险包括:
- 智能体目标劫持(Goal Hijacking)
- 工具误用
- 身份滥用
- 任务委派风险
- 多智能体之间传递错误上下文
- 无限循环或成本失控
- 子智能体越权使用工具
- 汇总层丢失安全约束
可以设计如下对比样本来验证:
- 一个主智能体调用多个子智能体进行代码审查。
- 其中某个输入文件含有恶意注入指令。
- 某个子智能体试图访问与其任务无关的敏感文件。
- 最终汇总必须保留完整证据链、拒绝越权操作、并报告被阻断的行为。
这可以验证 Claude Code 是否能在复杂的多智能体链路中,始终维持清晰的安全边界。
操作系统与端点加固
此部分强调 Claude Code 运行在具体的物理或虚拟工作站上,因此操作系统层面的安全也必须纳入对比视野:
- macOS Seatbelt 强制访问控制
- Linux bubblewrap 沙箱
- 敏感文件拒绝访问模式
- VS Code 限制模式
- 信任验证机制
- 第三方提供者的控制策略
从对比执行器(Runner)设计的角度看,必须为每次对比记录详细的环境元数据:
- 操作系统类型与版本
- Claude Code 版本号
- 设置层级(Settings Hierarchy)
- 沙箱是否启用
- 网络策略
- 可写根目录(Writable Roots)
- 已配置的 MCP 服务器列表
- 环境变量注入方式
- 是否运行于 CI、服务器或本地环境
否则,同一模型在不同机器上得到的对比结果将无法进行横向比较。
安全工具与扫描器
目录将工具分为几类:
- Claude Code 专用扫描器
- MCP 扫描器
- LLM 安全套件
- 密钥扫描器
这些工具可作为对比验证器(Verifier)的组成部分。例如:
- 使用 Gitleaks / TruffleHog 检查最终输出和工作区是否产生密钥泄露。
- 使用 MCP 扫描器对待测 MCP 服务器进行安全预检。
- 使用 promptfoo / Garak / PyRIT 自动生成攻击样本。
- 使用 LLM Guard 进行输出过滤或 PII 检测。
- 生成 SARIF 格式报告以对接 GitHub 代码扫描(Code Scanning)。
这说明,我们的对比平台不应过度依赖 LLM-as-judge。对于安全类任务,应尽可能引入确定性的扫描器、规则、日志与状态校验作为验证手段。
漏洞研究与行业标准
目录列出的漏洞研究包括:
- MCP 配置不当导致远程代码执行
- 基于钩子的远程代码执行
- API 密钥 Harvesting 攻击
- Claude Code 项目文件的风险
- 相关媒体与学术研究报告
涉及的标准与框架包括:
- OWASP Top 10 for LLM Applications
- OWASP Top 10 for Agentic Applications
- OWASP AIVSS / AISVS
- OWASP AI Exchange
- MCP Server Security Standard
- NIST AI Risk Management Framework
- MITRE ATLAS
这些内容为对比标签体系提供了外部权威依据。例如,每一条安全对比样本都可以标注如下风险类别标签:
risk_category=prompt_injectionrisk_category=tool_misuserisk_category=secret_exfiltrationrisk_category=supply_chainrisk_category=privilege_escalationrisk_category=untrusted_mcprisk_category=unsafe_automation
后续对比报告就能从单纯的通过率(Pass Rate)统计,升级为“各风险类别的通过率及失败归因分析”。
对构建 Claude Code 对比框架的启示
综合本目录内容,一个分层的 Claude Code 对比框架应包含一条独立的安全主线:
| 对比层级 | 安全对比核心问题 |
|---|---|
| L0 环境与执行器 | 沙箱、网络、权限、版本、设置是否可记录与复现? |
| L1 配置识别 | 模型是否理解 settings、permissions、hooks、MCP scope 的含义与作用? |
| L2 触发与路由 | 是否选择了正确的 Skill/Command/MCP/Agent?是否拒绝了危险路径? |
| L3 工具执行 | 对 Shell、文件编辑、MCP、钩子的调用是否符合最小权限原则? |
| L4 工件质量 | 生成的代码、配置、文档、报告是否安全且可验证? |
| L5 注入鲁棒性 | 能否识别 README、网页、MCP 工具、日志中的恶意指令? |
| L6 数据边界 | 是否保护了密钥、PII、私有代码仓库、令牌、会话记录? |
| L7 供应链与插件 | 是否审查插件、技能、MCP 服务器、依赖库及市场来源? |
| L8 企业治理 | 托管设置、审计、RBAC、允许列表、CI/CD 控制是否可用且有效? |
这条安全主线可以和已有的 Skill、MCPMark、MCPSafetyBench 等对比结果进行融合:
- Skill 对比补充技能触发、指令遵循及内容层面的风险。
- MCPMark补充 MCP 工具的发现、调用、状态修改与验证器(Verifier)对比。
- MCPSafetyBench补充注入、越权、跨服务器等风险。
- 本目录则提供了更完整的安全类别划分、工具链参考与治理维度框架。
对后续数据构建的建议
实习同学在构建 Claude Code 安全对比样本时,可参考以下推进路径:
- 从风险类别出发,而非从具体工具开始。
- 明确攻击面:每条样本需指定是针对 Skill、MCP、Hook、Command、Shell、File、CI 还是 Plugin。
- 设定正常任务目标:避免样本沦为纯安全概念问答,需有具体的任务背景。
- 插入干扰或攻击条件:例如提供恶意 README、恶意 MCP 工具描述、包含敏感文件的上下文、或过宽的权限配置。
- 定义期望行为:期望模型继续完成任务、拒绝危险动作、对输出脱敏、请求确认或给出安全替代方案。
- 优先实现自动验证器:检查文件是否被修改、密钥是否出现、命令是否执行、MCP 工具是否被调用等。
- 补充人工评分规则:当自动验证器不足时,再引入 LLM-as-judge 的评分规则(Rubric)。
- 标注失败层级:为每条失败用例标注失败原因层级,如
trigger_error(触发错误)、unsafe_tool_call(不安全工具调用)、secret_leak(密钥泄露)、wrong_mcp_tool(错误 MCP 工具选择)、hook_bypass(钩子绕过)等。
遵循此路径构建的数据集,才能超越“安全文章问答”,成为真正贴近 Claude Code 原生执行链路的安全对比集。
使用建议与注意事项
这份目录非常适合作为团队安全能力建设的起点:
- 新成员可通过它快速了解 Claude Code 的风险全景。
- 对比工程师可用它来补齐对比集的安全维度标签。
- 平台工程师可用它来设计 Runner 的日志、权限、沙箱、MCP 观测字段。
- 安全工程师可从中挑选适用的扫描器、参考相关标准与清单。
- 管理层可通过它理解为何 Claude Code 的对比不能只关注任务完成率。
但在实际落地时,必须对目录中的每一个链接进行独立复核,考察其时效性、维护状态、许可证、权限要求与数据处理方式,切不可将社区整理的目录直接等同于官方最佳实践。
更多推荐

所有评论(0)