这份报告的信息源是 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 的安全对比绝不能仅在“本地开发机裸跑”的场景下进行验证。真实部署环境至少涵盖三类:

  1. 开发者本地工作站
  2. 远程服务器
  3. 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 工具描述
  • 命令行输出
  • 测试日志
  • 依赖包说明
  • 生成的制品文件

因此,对比样本应区分两种核心能力:

  1. 识别能力:能否将恶意内容识别出来,而不将其误认为高优先级的合法指令?
  2. 隔离能力:在继续执行原任务的同时,能否隔离或忽略该恶意指令?

一个完备的 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_injection
  • risk_category=tool_misuse
  • risk_category=secret_exfiltration
  • risk_category=supply_chain
  • risk_category=privilege_escalation
  • risk_category=untrusted_mcp
  • risk_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 安全对比样本时,可参考以下推进路径:

  1. 从风险类别出发,而非从具体工具开始。
  2. 明确攻击面:每条样本需指定是针对 Skill、MCP、Hook、Command、Shell、File、CI 还是 Plugin。
  3. 设定正常任务目标:避免样本沦为纯安全概念问答,需有具体的任务背景。
  4. 插入干扰或攻击条件:例如提供恶意 README、恶意 MCP 工具描述、包含敏感文件的上下文、或过宽的权限配置。
  5. 定义期望行为:期望模型继续完成任务、拒绝危险动作、对输出脱敏、请求确认或给出安全替代方案。
  6. 优先实现自动验证器:检查文件是否被修改、密钥是否出现、命令是否执行、MCP 工具是否被调用等。
  7. 补充人工评分规则:当自动验证器不足时,再引入 LLM-as-judge 的评分规则(Rubric)。
  8. 标注失败层级:为每条失败用例标注失败原因层级,如 trigger_error(触发错误)、unsafe_tool_call(不安全工具调用)、secret_leak(密钥泄露)、wrong_mcp_tool(错误 MCP 工具选择)、hook_bypass(钩子绕过)等。

遵循此路径构建的数据集,才能超越“安全文章问答”,成为真正贴近 Claude Code 原生执行链路的安全对比集。

使用建议与注意事项

这份目录非常适合作为团队安全能力建设的起点:

  • 新成员可通过它快速了解 Claude Code 的风险全景。
  • 对比工程师可用它来补齐对比集的安全维度标签。
  • 平台工程师可用它来设计 Runner 的日志、权限、沙箱、MCP 观测字段。
  • 安全工程师可从中挑选适用的扫描器、参考相关标准与清单。
  • 管理层可通过它理解为何 Claude Code 的对比不能只关注任务完成率。

但在实际落地时,必须对目录中的每一个链接进行独立复核,考察其时效性、维护状态、许可证、权限要求与数据处理方式,切不可将社区整理的目录直接等同于官方最佳实践。

更多推荐