代码安全审计工具

一款基于AI和MCP协议的代码安全审计工具,用于扫描GitHub仓库中的漏洞并提供结构化报告。

  • by eren-solutions
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 eren-solutions/mcp-security-audit

使用说明

Eren安全审计员——MCP服务器

AI驱动的代码安全审计员通过 模型上下文协议 (MCP)。使用基于LLM的分析扫描GitHub存储库中的漏洞,并返回带有OWASP Top 10和CWE参考的结构化结果。

工具

工具 说明
security_scan 在GitHub存储库上运行完整的安全审计(1-10分钟)
audit_status 检查正在运行或已完成的审核的状态
audit_list 列出最近的安全审计和摘要信息
audit_stats 获取汇总统计数据(总审计、发现、风险评分)

快速开始

流式HTTP(远程客户端、MCP目录)

pip install mcp
AUDIT_ENDPOINT=https://your-api-host AUDIT_API_KEY=your-key python server.py --transport streamable-http --port 8200

服务器运行于 http://localhost:8200/mcp.

stdio(克劳德桌面,本地MCP客户端)

pip install mcp
AUDIT_ENDPOINT=https://your-api-host AUDIT_API_KEY=your-key python server.py --transport stdio

Claude桌面配置

添加 ~/.claude/settings.json:

{
  "mcpServers": {
    "security-audit": {
      "command": "python",
      "args": ["path/to/server.py", "--transport", "stdio"],
      "env": {
        "AUDIT_ENDPOINT": "https://your-api-host",
        "AUDIT_API_KEY": "your-key"
      }
    }
  }
}

码头工人

docker build -t mcp-security-audit .
docker run -p 8200:8200 -e AUDIT_ENDPOINT=https://your-api-host -e AUDIT_API_KEY=your-key mcp-security-audit

环境变量

变量 默认值 描述
AUDIT_ENDPOINT (必填) 审核API基础URL
AUDIT_API_KEY (必填) 用于身份验证的API密钥
PORT 8200 HTTP服务器端口
HOST 0.0.0.0 HTTP绑定地址
SCAN_FREE_TIER 1 每位客户每天免费扫描
SCAN_PRICE_USD 0.25 付费扫描(x402有效载荷)的美元价格
SCAN_WALLET_ADDRESS (空) 支付指令的USDC/基本钱包地址
MCP_BILLING_DB /opt/mcp-audit/billing.db 费率限制+API关键数据的SQLite路径
MCP_BILLING_ENABLED true 设置为 false 完全禁用计费

访问层

免费层: SCAN_FREE_TIER 每次会话每天扫描次数(默认值:1)。不需要钥匙。

付费层级:无限制扫描。将API密钥作为 api_key 参数或 X-API-Key 头球BTC支付确认后生成密钥。

需要付款(x402):当空闲层耗尽并且没有提供有效的API密钥时, security_scan 返回具有HTTP 402语义的JSON有效负载:

{
  "error": "payment_required",
  "http_status": 402,
  "message": "Free tier exhausted (1 scan/day). Add X-API-Key header with a paid key, or pay $0.25 USDC to scan.",
  "free_tier": { "scans_per_day": 1, "resets": "00:00 UTC" },
  "payment": {
    "price": "0.25",
    "currency": "USDC",
    "network": "base",
    "address": "YOUR_WALLET_ADDRESS",
    "message": "Pay $0.25 USDC on Base to https://eren-solutions.com/audit/pay"
  }
}

示例用法

一旦通过MCP客户端连接:

> Use security_scan to audit https://github.com/juice-shop/juice-shop

Scanning juice-shop/juice-shop (master branch)...
Found 47 findings across 200 files.

Risk Score: 72/100

Critical: 3 | High: 8 | Medium: 15 | Low: 12 | Info: 9

Top findings:
- [CRITICAL] SQL Injection in /routes/search.ts (CWE-89)
- [CRITICAL] Insecure JWT Secret (CWE-798)
- [HIGH] XSS via DOM manipulation in /frontend/src/... (CWE-79)

运作原理

MCP Client → MCP Server (this repo) → Audit API → Clone repo → LLM scan → Findings

服务器代理工具调用Eren Security Auditor API,该API:

  1. 克隆目标存储库
  2. 使用LLM驱动的分析扫描源文件
  3. 按OWASP Top 10和CWE对调查结果进行分类
  4. 生成风险评分和补救指导

许可证

麻省理工学院