ABSatVPS/qwen-proofgate

GitHub: ABSatVPS/qwen-proofgate

ProofGate 是一个以人工审批为核心的智能合约预审计工作流代理,通过确定性扫描器与 Qwen 大模型协作生成结构化审计证据包。

Stars: 0 | Forks: 0

# Qwen ProofGate Qwen ProofGate **不是** AI 审计员。它是一个**审计操作自动驾驶系统**。 确定性扫描器从 Solidity 代码中生成结构化证据。Qwen Cloud 将这些证据解读为易于阅读的分类包。人工审批环节控制着发现的结果是否最终确定。只有在获得批准后,系统才会生成预审计准备包。 本项目中的“Proof”指的是审计证据打包,而不是零知识证明。 ## 工作原理 1. 用户提交 GitHub 仓库 URL 或选择一个演示夹具 2. 后端针对 Solidity 合约运行确定性扫描器检查 3. Qwen Cloud 对生成的证据进行分类 —— 对发现进行分组、解释影响并建议修复方案 4. 人工审批环节控制所有外部操作(报告生成、GitHub issues) 5. 系统生成预审计准备包:Markdown 报告、SARIF 输出、执行追踪 ## Qwen Provider 配置 Qwen ProofGate 支持三种分类 provider,通过 `QWEN_PROVIDER` 进行选择: | Provider | 设置 | 用例 | |----------|---------|----------| | `MockQwenClient` | `QWEN_PROVIDER=mock` (默认) | 测试、确定性兜底方案 | | `OllamaQwenClient` | `QWEN_PROVIDER=ollama` | 使用 Qwen 系列模型进行本地 staging | | `RealQwenClient` | `QWEN_PROVIDER=dashscope` | 通过 Alibaba Cloud DashScope 进行最终提交 | ### 使用 Ollama 进行本地 Qwen Staging 在 Qwen Cloud 额度可用之前进行本地开发: ``` # 使用 qwen3.5:9b 启动 Ollama ollama run qwen3.5:9b # 使用 Ollama provider 运行 ProofGate QWEN_PROVIDER=ollama \ OLLAMA_MODEL=qwen3.5:9b \ OLLAMA_BASE_URL=http://localhost:11434/v1 \ uvicorn backend.main:app --reload ``` Ollama 模式使用兼容 OpenAI 的 `/v1/chat/completions` endpoint。证据边界防护机制确保模型无法凭空捏造发现 —— 只能解读扫描器证据。 **Ollama 是一个 staging provider,而不是最终的 Qwen Cloud provider。** 最终的黑客松提交使用 `QWEN_PROVIDER=dashscope` 以及 Alibaba Cloud 额度。 ### Provider 选择 ``` QWEN_PROVIDER=mock # allowed: mock, ollama, dashscope # 对于 dashscope: QWEN_API_KEY=your_dashscope_key # 对于 ollama: OLLAMA_BASE_URL=http://localhost:11434/v1 OLLAMA_MODEL=qwen3.5:9b ``` ## 快速开始 ``` cp .env.example .env # 使用你的 Qwen API key 编辑 .env(对于 demo 是可选的) docker-compose up --build ``` - API: `http://localhost:8000` - Frontend: `http://localhost:3000` - API 文档: `http://localhost:8000/docs` ## API Endpoints | 方法 | 路径 | 认证 | 描述 | |--------|------|------|-------------| | POST | `/scan` | 无 | 提交 repo 进行扫描 | | GET | `/jobs/{job_id}` | 无 | 获取任务状态和发现结果 | | POST | `/jobs/{job_id}/approve` | X-API-Key | 批准/拒绝发现结果 | | GET | `/jobs/{job_id}/report` | 无 | 下载预审计包(仅限 COMPLETED 状态) | | GET | `/jobs/{job_id}/report/sarif` | 无 | 下载 SARIF(仅限 COMPLETED 状态) | | GET | `/health` | 无 | 健康检查 | ## 安全模型 - **审批 endpoint 需要 API 密钥**(`X-API-Key` 标头) - **任务 ID** 在文件系统使用前会根据严格格式进行验证 - **审批状态机** 强制执行有效的状态转换(终态无法被跳过) - **报告仅在** 所有人工发现结果得到处理后才会生成 - **Repo URLs** 在演示范围内被限制为 HTTPS GitHub - **扫描并发数** 被限制为 4 个任务,超时时间为 300 秒 ## 架构 有关完整的架构文档,请参阅 [docs/architecture.md](docs/architecture.md)。 ## 演示脚本 有关 3 分钟的演示流程,请参阅 [docs/demo-script.md](docs/demo-script.md)。 ## 部署 有关 Alibaba Cloud 的部署,请参阅 [docs/deployment-proof.md](docs/deployment-proof.md) 和 [infra/alibaba-cloud/](infra/alibaba-cloud/)。 ## 许可证 本项目基于 Apache License 2.0 授权。
标签:AI风险缓解, DLL 劫持, DNS 反向解析, Web3安全, 代码安全审计, 大语言模型, 智能合约审计, 请求拦截, 逆向工具, 防御加固, 静态代码扫描