@IceSolst: Claude code 的 /security-review 只是一个 Skill,整个提示都在这个 repo 里。它相当通用,在我看来,你可以针对每个仓库和你扫描的语言进行定制以获得更好的效果…
摘要
Anthropic 为 Claude Code 发布了一个官方 GitHub Action,可在拉取请求上提供由 AI 驱动的安全审查,具有可定制的提示和差异感知扫描功能。
查看缓存全文
缓存时间: 2026/05/25 02:40
Claude code 的 /security-review 只是一个 Skill,其完整提示词就在这个仓库里。它相当通用,我个人认为你可以根据每个仓库和扫描的语言进行定制,以获得更好的结果。https://t.co/1a4puZSASL
anthropics/claude-code-security-review
来源:https://github.com/anthropics/claude-code-security-review
Claude Code 安全审查器
一款由 Claude 驱动的 AI 安全审查 GitHub Action,用于分析代码变更中的安全漏洞。该 Action 利用 Anthropic 的 Claude Code 工具对拉取请求进行智能、上下文感知的安全分析,实现深层语义安全审查。更多详情请参阅我们的博文:https://www.anthropic.com/news/automate-security-reviews-with-claude-code
特性
- AI 驱动的分析:利用 Claude 的高级推理能力,通过深层语义理解检测安全漏洞
- 差异感知扫描:对于 PR,仅分析变更的文件
- PR 评论:自动在 PR 上评论安全发现
- 上下文理解:超越模式匹配,理解代码语义
- 语言无关:适用于任何编程语言
- 误报过滤:高级过滤减少噪音,聚焦真实漏洞
快速开始
将以下内容添加到仓库的 .github/workflows/security.yml 文件中:
name: Security Review
permissions:
pull-requests: write # 需要用于留下 PR 评论
contents: read
on:
pull_request:
jobs:
security:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}
fetch-depth: 2
- uses: anthropics/claude-code-security-review@main
with:
comment-pr: true
claude-api-key: ${{ secrets.CLAUDE_API_KEY }}
安全考虑
此 Action 未针对提示注入攻击进行加固,仅应用于审查受信任的 PR。建议配置您的仓库(https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#controlling-changes-from-forks-to-workflows-in-public-repositories),启用“要求所有外部贡献者获得批准“选项,以确保工作流仅在维护者审查 PR 后运行。
配置选项
Action 输入
| 输入 | 描述 | 默认值 | 必需 |
|---|---|---|---|
claude-api-key | Anthropic Claude API 密钥,用于安全分析。注意:此 API 密钥需同时启用 Claude API 和 Claude Code 使用。 | 无 | 是 |
comment-pr | 是否在 PR 上评论发现 | true | 否 |
upload-results | 是否将结果上传为工件 | true | 否 |
exclude-directories | 逗号分隔的目录列表,扫描时排除 | 无 | 否 |
claude-model | 使用的 Claude 模型名称(https://docs.anthropic.com/en/docs/about-claude/models/overview#model-names)。默认为 Opus 4.1。 | claude-opus-4-1-20250805 | 否 |
claudecode-timeout | ClaudeCode 分析超时时间(分钟) | 20 | 否 |
run-every-commit | 每次提交都运行 ClaudeCode(跳过缓存检查)。警告:在包含多次提交的 PR 上可能增加误报。 | false | 否 |
false-positive-filtering-instructions | 自定义误报过滤说明文件的路径 | 无 | 否 |
custom-security-scan-instructions | 自定义安全扫描说明文件的路径,将附加到审计提示中 | 无 | 否 |
Action 输出
| 输出 | 描述 |
|---|---|
findings-count | 安全发现总数 |
results-file | 结果 JSON 文件的路径 |
工作原理
架构
claudecode/
├── github_action_audit.py # 用于 GitHub Actions 的主审计脚本
├── prompts.py # 安全审计提示模板
├── findings_filter.py # 误报过滤逻辑
├── claude_api_client.py # 用于误报过滤的 Claude API 客户端
├── json_parser.py # 健壮的 JSON 解析工具
├── requirements.txt # Python 依赖
├── test_*.py # 测试套件
└── evals/ # 用于在任意 PR 上测试 CC 的评估工具
工作流
- PR 分析:当拉取请求打开时,Claude 分析 diff 以了解变更内容
- 上下文审查:Claude 在上下文中检查代码变更,理解其目的和潜在安全影响
- 发现生成:识别安全问题,并附带详细说明、严重性评级和修复指导
- 误报过滤:高级过滤移除低影响或易误报的发现,减少噪音
- PR 评论:发现结果以审查评论的形式发布在具体的代码行上
安全分析能力
检测的漏洞类型
- 注入攻击:SQL 注入、命令注入、LDAP 注入、XPath 注入、NoSQL 注入、XXE
- 身份验证与授权:身份验证失效、权限提升、不安全的直接对象引用、绕过逻辑、会话缺陷
- 数据泄露:硬编码密钥、敏感数据日志记录、信息泄露、PII 处理违规
- 加密问题:弱算法、密钥管理不当、不安全的随机数生成
- 输入验证:验证缺失、清理不当、缓冲区溢出
- 业务逻辑缺陷:竞态条件、检查时间与使用时间(TOCTOU)问题
- 配置安全:不安全的默认设置、安全头缺失、宽松的 CORS
- 供应链:脆弱的依赖项、软件包名混淆风险
- 代码执行:通过反序列化实现远程代码执行(RCE)、pickle 注入、eval 注入
- 跨站脚本(XSS):反射型、存储型及基于 DOM 的 XSS
误报过滤
该工具自动排除多种低影响及易产生误报的发现,以聚焦高影响力漏洞:
- 拒绝服务(DoS)漏洞
- 速率限制问题
- 内存/CPU 耗尽问题
- 没有明确影响的通用输入验证
- 开放重定向漏洞
误报过滤也可根据项目安全目标进行调整。
与传统 SAST 相比的优势
- 上下文理解:理解代码语义和意图,而不仅仅是模式
- 更低的误报率:AI 驱动的分析通过理解代码实际是否易受攻击来减少噪音
- 详细解释:清晰说明为什么某处是漏洞以及如何修复
- 自适应学习:可根据组织特定的安全要求进行定制
安装与设置
GitHub Actions
请遵循上述快速开始指南。该 Action 会自动处理所有依赖。
本地开发
要在本地针对特定 PR 运行安全扫描器,请参阅评估框架文档。
Claude Code 集成:/security-review 命令
默认情况下,Claude Code 内置了 /security-review 斜杠命令(https://docs.anthropic.com/en/docs/claude-code/slash-commands),该命令提供与 GitHub Action 工作流相同的安全分析能力,但直接集成到您的 Claude Code 开发环境中。要使用它,只需运行 /security-review 即可对所有待定变更执行全面的安全审查。
自定义命令
默认的 /security-review 命令在大多数情况下都能很好地工作,但也可以根据您的特定安全需求进行自定义。操作方法如下:
- 将此仓库中的
security-review.md文件(https://github.com/anthropics/claude-code-security-review/blob/main/.claude/commands/security-review.md?plain=1)复制到您项目的.claude/commands/文件夹中。 - 编辑
security-review.md以自定义安全分析。例如,您可以在误报过滤说明中添加额外的组织特定指示。
自定义扫描配置
还可以配置自定义的扫描和误报过滤说明,更多详情请参阅 docs/ 文件夹。
测试
运行测试套件以验证功能:
cd claude-code-security-review
# 运行所有测试
pytest claudecode -v
支持
如有问题或疑问:
- 在此仓库中提交 issue
- 查看 GitHub Actions 日志(https://docs.github.com/en/actions/monitoring-and-troubleshooting-workflows/viewing-workflow-run-history)以获取调试信息
许可证
MIT 许可证 - 详情请参见 LICENSE 文件。
相似文章
@aiedge_: 这个 Claude Fable 5 提示词可以审计你的整个代码库,查找漏洞、错误、攻击向量等。如果你有…
一个用于 Claude Fable 5 的提示词,可审计整个代码库的漏洞、错误和攻击向量,推荐用于 vibe-coded 项目。
超越权限提示:让 Claude Code 更安全、更自主
Anthropic 为 Claude Code 引入沙箱功能,包括文件系统和网络隔离,以提升安全性并减少 84% 的权限提示。
我们用 Claude Code 构建了一个自助式安全报告分类代理。
这是一个使用 Claude Code 构建的自助式安全报告分类代理的演示,它可以读取电子邮件、在沙盒中访问源代码,并向用户发送建议的回复。
@seelffff:来自Synergetic Solutions的一位首席顾问刚刚发布了一个仓库,改变了Claude Code的工作方式。claude-skill…
Synergetic Solutions的一位首席顾问发布了claude-skills,这是一个包含66项针对Claude Code的专业技能的仓库,可通过一条命令安装,通过上下文感知激活、参考文件和工作流程集成,增强了其全栈开发能力。
Show HN:adamsreview – 为 Claude Code 提供优化的多智能体 PR 审查
介绍 adamsreview,这是一个开源的 Claude Code 插件,它通过采用并行子代理、验证关卡以及自动修复循环的多智能体流水线,能够以更少的误报检测出更多 Bug,从而增强拉取请求(Pull Request)的审查效果。