Coding & Development🤖claude🌐universal

AI-Vuln-Reproduce

AI 全自动漏洞复现智能体平台 - 基于 Claude Code 的多智能体协作系统

Quick Start

Install this Skill

npx skills add Clouditera/AI-Vuln-Reproduce
# AI-Vuln-Reproduce

AI 全自动漏洞复现插件 - 基于 Claude Code 的多智能体协作系统

## 项目简介

本项目是一个 Claude Code 插件,利用多智能体协作能力,实现从漏洞报告到复现验证的端到端自动化。采用真实安全团队角色体系,支持两轮复现模式(L1 Playwright / L2 API + Mock 环境),智能降级和批量执行。

**v2.0 架构更新** (2026-01-19):
- 将 Mock 从「第三种复现工具」重构为「独立的环境准备阶段」
- 新增 `mock-env-preparer` 智能体,专注环境准备
- Mock 环境复用 L1/L2 复现逻辑,不再单独实现测试

**核心特性**:
- 🔍 **真实请求验证** - 禁止仅凭代码分析判定漏洞,必须通过实际 HTTP 请求验证
- 🛡️ **防护机制检测** - 自动识别 JSON Schema、WAF、CSP 等防护并正确判定
- 📊 **数据流追溯** - Source-Sink 分析,从 sink 反向追溯到 source,防止 RCE 等漏洞误报
- 🎯 **多维度工具策略** - 四维度分析(操作类型/注入点/认证级别/复杂度)智能选择复现方式
- 🔄 **两轮复现机制** - 第一轮真实环境 L1→L2,失败后可选进入 Mock 环境第二轮
- ⚠️ **误报统一判定** - 运行时防护导致无法利用统一判定为误报,报告包含「是否误报」字段
- 🤖 **多智能体协作** - 6 个专业角色分工协作,模拟真实安全团队

## 安装

### 前置要求

- Claude Code CLI 已安装
- (可选)Playwright MCP Server 已配置 - 用于 L1 浏览器自动化模式

### 配置 Playwright MCP Server(可选,用于 L1 浏览器验证)

本项目使用 `@executeautomation/playwright-mcp-server` 进行浏览器自动化验证。

直接告诉 Claude Code:
```
帮我安装 playwright mcp server,使用 @executeautomation/playwright-mcp-server
```

### 安装插件

```bash
# 1. 添加插件市场
claude plugin marketplace add https://github.com/Clouditera/AI-Vuln-Reproduce

# 2. 安装插件
claude plugin install vuln-reproduce

# 3. 重启 Claude Code 使插件生效
claude
```

### 从本地安装(开发者)

```bash
# 1. 克隆项目
git clone https://github.com/Clouditera/AI-Vuln-Reproduce.git
cd AI-Vuln-Reproduce

# 2. 添加为本地市场
claude plugin marketplace add .

# 3. 安装插件
claude plugin install vuln-reproduce

# 4. 重启 Claude Code
claude
```

## 使用方法

### 命令格式

```bash
/vuln-reproduce <漏洞报告> [环境配置选项]
```

### 参数说明

| 参数 | 说明 | 示例 |
|------|------|------|
| `<漏洞报告>` | 单个报告文件、多个文件或报告目录 | `./report.md`, `./reports/` |
| `--url` | 漏洞环境访问地址 | `http://target:3000` |
| `--docker` | Docker Compose 文件路径 | `./docker-compose.yml` |
| `--source` | 漏洞项目源码目录(用于 L3 Mock) | `./src` |
| `--credentials` | 环境凭据配置文件或内联 JSON | `./creds.json` |

### 漏洞报告输入

```bash
# 单个漏洞报告
/vuln-reproduce ./vuln-report.md --url http://target:3000

# 多个漏洞报告
/vuln-reproduce ./VUL-001.md ./VUL-002.md ./VUL-003.md --url http://target:3000

# 整个报告目录(自动扫描 *.md 文件)
/vuln-reproduce ./vuln-reports/ --url http://target:3000
```

### 环境配置

```bash
# 在线环境 - 直接提供 URL
/vuln-reproduce ./report.md --url http://192.168.1.100:8080

# Docker 环境 - 自动启动容器
/vuln-reproduce ./report.md --docker ./docker-compose.yml

# 指定源码(用于 L3 Mock 代码分析)
/vuln-reproduce ./report.md --url http://target:3000 --source ./vulnerable-app/
```

### 凭据配置

凭据信息支持多种格式,只需包含账号密码等关键信息即可:

```bash
# 方式 1: 配置文件(JSON/文本均可)
/vuln-reproduce ./report.md --url http://target:3000 --credentials ./creds.txt

# 方式 2: 直接描述
/vuln-reproduce ./report.md --url http://target:3000 --credentials "admin账号: admin/admin123, 普通用户: test/test123"

# 方式 3: 内联 JSON
/vuln-reproduce ./report.md --url http://target:3000 --credentials '{"admin": "admin", "password": "admin123"}'
```

**凭据文件示例** (格式灵活,以下均可):

```
# 纯文本格式 (creds.txt)
管理员账号: admin
管理员密码: admin123
普通用户: testuser / testpass
API Key: sk-xxxx-xxxx
数据库: postgres:postgres@localhost:5432
```

```json
// JSON 格式 (creds.json)
{
  "admin": {"username": "admin", "password": "admin123"},
  "user": {"username": "testuser", "password": "testpass"}
}
```

### 完整示例

```bash
# 示例 1: 基本用法 - 单个报告 + 在线环境
/vuln-reproduce ./sqli-report.md --url http://192.168.1.50:3000

# 示例 2: 批量复现 - 多个报告 + Docker 环境 + 凭据
/vuln-reproduce ./reports/ --docker ./evershop/docker-compose.yml --credentials ./creds.json

# 示例 3: 完整配置 - 报告 + URL + 源码 + 凭据
/vuln-reproduce ./xss-report.md --url http://target:8080 --source ./webapp/src --credentials '{"user": {"username": "victim", "password": "123456"}}'
```

## 架构设计

### 智能体角色体系 (v2.0)

```
┌──────────────────────────────────────────────────────────────┐
│                    reproduce-orchestrator                     │
│                       (项目负责人)                           │
│                                                               │
│  职责: 接收任务,分配角色,协调工作,监控进度                   │
└────────────────────────────┬─────────────────────────────────┘
                             │
       ┌─────────────────────┼─────────────────────┐
       │                     │                     │
       ▼                     ▼                     ▼
┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│ L1 漏洞分析师│     │ L2 环境专家 │     │渗透测试员   │
│vuln-analyst │     │env-engineer │     │pentest-     │
│             │     │             │     │operator     │
│ 分析漏洞报告 │     │ 搭建测试环境 │     │ 执行 L1/L2  │
│ 制定复现方案 │     │ 准备凭据数据 │     │ 收集证据    │
└─────────────┘     └─────────────┘     └──────┬──────┘
                                               │
                                               ▼ 第一轮失败
                                        ┌─────────────┐
                                        │Mock环境准备  │
                                        │mock-env-    │
                                        │preparer     │
                                        │             │
                                        │ 代码截取     │
                                        │ 依赖分析     │
                                    

... (truncated)
Repository
24stars
2forks
View on GitHub
Details
DiscoveredJan 19, 2026
Last UpdatedJan 19, 2026
Quality Score
40/100