SuperAPI AI 工具集

code-security-audit

安全与审计

查看项目

更新于 10-14 20:22

技能介绍

用途

Code Security Audit 用于对代码变更、diff 或分支执行安全审计,目标是发现高可信度、可利用的漏洞,并尽量减少误报。它基于 claude-code-security-review,适合在需要「audit security」「review」等安全审查任务时使用。

主要能力

工具采用三阶段分析流程:

  1. 上下文研究:识别代码库中的安全框架、ORM、认证库、净化模式与信任边界。
  2. 对比分析:把新代码与既有安全模式比较,标记偏离、不一致和新增攻击面。
  3. 漏洞评估:针对每个修改文件检查输入验证(SQL 注入、命令注入、XXE、模板注入、NoSQL 注入、路径穿越)、认证与授权(认证绕过、权限提升、会话缺陷、JWT 漏洞)、加密与密钥(硬编码密钥/令牌、弱算法、密钥存储不当)、代码执行(反序列化 RCE、pickle/YAML 注入、eval 注入、XSS)、数据暴露(敏感数据日志、PII 违规、API 泄露、调试暴露)。同时要求从用户输入到敏感操作追踪数据流,并查找权限边界跨越。

误报过滤方面,工具加载 references/false-positive-filtering.md 并应用全部规则,对每个发现给出 1-10 的置信度,仅保留置信度 ≥ 8 的发现;针对特定领域可加载 references/custom-scan-instructions.md。

输出格式为:

# Vuln N: [Category]: `file.ts:42`

* Severity: HIGH | MEDIUM
* Confidence: 8/10
* Description: [What the vulnerability is]
* Exploit Scenario: [Concrete attack path]
* Recommendation: [Specific fix]

使用方式

手工审计工作流

  1. 收集变更:
git diff --merge-base origin/main        # Branch diff
git diff --cached                         # Staged changes
git diff HEAD~N                           # Last N commits
git diff --name-only origin/main...       # List modified files
  1. 执行三阶段分析(见上)。
  2. 过滤误报。
  3. 按上述格式输出。

GitHub Action 集成

可在 CI 中对 PR 自动运行安全审计,需要 ANTHROPIC_API_KEY 和 GITHUB_TOKEN。

安装:

pip install -r claudecode/requirements.txt

环境变量:

变量 必需 用途
ANTHROPIC_API_KEY 是 Claude API 访问
GITHUB_TOKEN 是 访问 GitHub API 以获取 PR 数据
GITHUB_REPOSITORY 是 owner/repo 格式
PR_NUMBER 是 Pull request 编号
EXCLUDE_DIRECTORIES 否 要跳过的目录,逗号分隔
ENABLE_CLAUDE_FILTERING 否 设为 true 以使用 Claude API 进行误报过滤
FALSE_POSITIVE_FILTERING_INSTRUCTIONS 否 自定义过滤规则路径
CUSTOM_SECURITY_SCAN_INSTRUCTIONS 否 自定义扫描类别路径

运行:

python claudecode/audit.py

输出为 JSON,包含 findings、analysis_summary 和 filtering_summary。

GitHub Actions 工作流示例:

name: Security Review
permissions:
  pull-requests: write
  contents: read
on:
  pull_request:
jobs:
  security:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          ref: ${{ github.event.pull_request.head.sha }}
          fetch-depth: 2
      - uses: anthropics/claude-code-security-review@main
        with:
          comment-pr: true
          claude-api-key: ${{ secrets.CLAUDE_API_KEY }}

PR 评论

将发现作为内联评论发布:

node scripts/comment-pr-findings.js

读取当前目录下的 findings.json,需要 GITHUB_TOKEN 和 GITHUB_EVENT_PATH。

评估框架

对任意公开 PR 测试审计:

export ANTHROPIC_API_KEY=sk-...
python -m claudecode.evals.run_eval owner/repo#123 --verbose

结果以 JSON 保存至 ./eval_results/,包含 findings、runtime 和 success 状态。

斜杠命令

将 assets/security-review-command.md 复制到任意项目的 .claude/commands/security-review.md,即可在 Claude Code 中启用 /security-review。

适用场景

适用于对代码改动、diff 或分支进行安全审查,尤其是希望通过 CI 在 PR 上自动执行审计的团队。

限制与原则

关键原则包括:尽量减少误报,仅标记可利用置信度 >80% 的问题;跳过噪声,不报告理论问题、风格问题或低影响发现;聚焦影响,优先未授权访问、数据泄露、系统入侵;只报告新问题,不评论已存在的安全关注。严重性指南为:HIGH 指可直接利用,如 RCE、数据泄露、认证绕过;MEDIUM 指需要特定条件但有显著影响;不报告 LOW 严重性发现。

参考文件包括 references/false-positive-filtering.md、references/custom-scan-instructions.md、references/custom-false-positive-filtering.txt、references/custom-security-scan-instructions.txt。