/ 目录 / 演练场 / claude-code-owasp
● 社区 agamm ⚡ 即开即用

claude-code-owasp

作者 agamm · agamm/claude-code-owasp

OWASP 最佳实践内置于 Claude Code——包括 Top 10:2025、ASVS 5.0、Agentic AI 安全,以及 20+ 种语言特定的安全问题。

Claude Code 的 OWASP Skill 教 Claude 像安全审查员一样思考。它包含 OWASP Top 10:2025 指南、ASVS 5.0 验证标准、新的 Agentic AI 安全指南,以及 20+ 个特定语言的部分(JS/TS、Python、Rust、Go、Java、Ruby 等)。适用于 pre-commit 审查、PR 审查和威胁建模会议。

为什么要用

核心特性

实时演示

实际使用效果

claude-code-owasp-skill.replay ▶ 就绪
0/0

安装

选择你的客户端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "claude-code-owasp-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/agamm/claude-code-owasp",
        "~/.claude/skills/claude-code-owasp"
      ],
      "_inferred": true
    }
  }
}

打开 Claude Desktop → Settings → Developer → Edit Config。保存后重启应用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "claude-code-owasp-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/agamm/claude-code-owasp",
        "~/.claude/skills/claude-code-owasp"
      ],
      "_inferred": true
    }
  }
}

Cursor 使用与 Claude Desktop 相同的 mcpServers 格式。项目级配置优先于全局。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "claude-code-owasp-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/agamm/claude-code-owasp",
        "~/.claude/skills/claude-code-owasp"
      ],
      "_inferred": true
    }
  }
}

点击 Cline 侧栏中的 MCP Servers 图标,然后选 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "claude-code-owasp-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/agamm/claude-code-owasp",
        "~/.claude/skills/claude-code-owasp"
      ],
      "_inferred": true
    }
  }
}

格式与 Claude Desktop 相同。重启 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "claude-code-owasp-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/agamm/claude-code-owasp",
        "~/.claude/skills/claude-code-owasp"
      ]
    }
  ]
}

Continue 使用服务器对象数组,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "claude-code-owasp-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/agamm/claude-code-owasp",
          "~/.claude/skills/claude-code-owasp"
        ]
      }
    }
  }
}

加入 context_servers。Zed 保存后热重载。

claude mcp add claude-code-owasp-skill -- git clone https://github.com/agamm/claude-code-owasp ~/.claude/skills/claude-code-owasp

一行命令搞定。用 claude mcp list 验证,claude mcp remove 卸载。

使用场景

实战用法: claude-code-owasp

如何基于 OWASP Top 10 进行 PR 安全审查

👤 在提交人工审查前进行自审的开发者 ⏱ ~20 min intermediate

何时使用: 在提交 PR 审查前,尤其是当 PR 涉及认证、数据或输入处理时。

前置条件
  • 已安装 Skill — git clone https://github.com/agamm/claude-code-owasp ~/.claude/skills/claude-code-owasp
步骤
  1. 指向 diff
    根据 OWASP Top 10:2025 审查当前 PR。重点关注认证和输入处理。✓ 已复制
    → 映射到 Top 10 类别的发现,带有行号引用
  2. 优先排序
    将发现分组为 'merge 前必须修复' vs 'follow-up issue'。引用具体的 ASVS 要求。✓ 已复制
    → 带有 ASVS ID 的排序列表
  3. 生成修复
    对于每个必须修复的问题,提出最小化的 diff。✓ 已复制
    → 与发现相关的补丁 diff

结果: 一个包含已解决已知安全问题、可追踪要求的 PR。

注意事项
  • 对无害模式过度警报 — 要求 Claude 具体说明 exploit 路径;如果无法说明,则降低严重程度

对新功能进行轻量级威胁建模

👤 设计涉及用户数据功能的工程师 ⏱ ~40 min advanced

何时使用: 在设计阶段,编写代码之前,当影响范围仍可协商时。

步骤
  1. 描述功能
    功能:客户报告的分享链接。用户生成有效期 7 天的 token 化 URL。包含 OWASP agentic AI 指南的威胁建模。✓ 已复制
    → STRIDE 风格的威胁列表
  2. 选择控制
    对于每个威胁,最便宜的缓解措施是什么,能应对 80% 的情况?✓ 已复制
    → 每个威胁的控制措施 + 昂贵方案的拒绝理由

结果: 可以附加到设计文档的威胁建模文档。

注意事项
  • 过度工程化的控制列表 — 明确限制为可能性 × 影响的前 5 个威胁

强化 AI agent 集成以防止 prompt injection

👤 正在交付 Claude/LLM 驱动功能的工程师 ⏱ ~30 min advanced

何时使用: 当你要让 LLM 处理用户数据或调用工具时。

步骤
  1. 描述 agent 接口
    我们的 agent 读取支持邮件并可以调用 3 个工具:refund()、tag_account()、escalate()。审查 agentic AI 风险。✓ 已复制
    → Prompt injection 向量、工具误用风险、数据泄露路径
  2. 设计护栏
    提出最小化的护栏集:哪些工具需要人工确认、哪些输入需要清理、需要什么日志。✓ 已复制
    → 具体的护栏规范

结果: 一个强化的 agent 设计,包含文档化的护栏。

注意事项
  • 仅依赖基于 prompt 的防御 — 与确定性控制相结合——用于破坏性工具的人工审核、URL 白名单

审计语言特定的安全问题

👤 审查他们不太熟悉的语言编写的代码库的审查者 ⏱ ~15 min intermediate

何时使用: 当你作为 TS 原生开发者审查 Python 代码时,或反之亦然。

步骤
  1. 限制到特定语言
    审查此 Python 模块中的 Python 特定 OWASP 问题(pickle、yaml.load、shell=True 等)。✓ 已复制
    → 超越通用 Top 10 的语言特定发现

结果: 捕获语言无关审查会遗漏的问题。

组合

与其他 MCP 搭配,撬动十倍杠杆

claude-code-owasp-skill + claude-code-skill-factory-skill

Skill Factory 将 OWASP 检查连接为 PreToolUse hooks 以进行自动门控

使用 skill-factory /build hook 在我们 repo 中的每个 Write 工具调用上运行 OWASP 审查。✓ 已复制
claude-code-owasp-skill + seo-audit-skill

在安全头的重叠

运行 seo-audit 安全类别,然后对结果进行更深入的 OWASP 审查。✓ 已复制
claude-code-owasp-skill + robotics-agent-skill

安全的 ROS 网络(rosbridge、Zenoh)

Robotics skill 产生了一个 rosbridge websocket——对其运行 OWASP 审查。✓ 已复制

工具

此 MCP 暴露的能力

工具输入参数何时调用成本
Top 10:2025 review diff or files PR 自审 Claude tokens
ASVS requirement check feature spec 合规工作 Claude tokens
Agentic AI threat model agent design 交付 LLM 功能 Claude tokens
Language-specific audit language, files 跨语言审查 Claude tokens
Threat model (STRIDE) feature description 设计阶段 Claude tokens

成本与限制

运行它的成本

API 配额
每次调用 Token 数
每次审查 5-20k,取决于代码大小
费用
免费
提示
将审查范围限定为更改的文件,而非整个 repo。

安全

权限、密钥、影响范围

凭据存储: 无凭据
数据出站: 代码被发送到 Claude 进行推理

故障排查

常见错误与修复

Claude 忽略 OWASP 上下文并给出通用建议

明确命名指南:'在这里应用 OWASP Top 10:2025 category A03:2025 Injection。'

假阳性过多

在接受发现之前要求 exploit 演示

替代方案

claude-code-owasp 对比其他方案

替代方案何时用它替代权衡
Semgrep / Snyk当你需要在 CI 中进行确定性静态分析时各有优势;可结合使用

更多

资源

📖 阅读 GitHub 上的官方 README

🐙 查看未解决的 issue

🔍 浏览全部 400+ MCP 服务器和 Skills