luhrhenz/audit-scope

GitHub: luhrhenz/audit-scope

一款基于 LLM 的智能合约安全审计范围界定工具,能够快速分析 Solidity 合约并生成包含漏洞发现与修复建议的结构化报告。

Stars: 0 | Forks: 0

# AuditScope 一款智能合约安全审计范围界定工具。粘贴任意 Solidity 合约,即可在几秒钟内获得结构化的漏洞报告——由具备深度安全推理能力的 LLM 驱动。 为黑客松而构建。 ## 功能 - **合约摘要** — 用通俗易懂的语言解释合约的功能 - **攻击面** — 列出所有带有 modifier 的 external/public 函数 - **Modifier 映射** — 并排对比 modifier 以发现不对称性(例如 `releaseFunds()` 包含 `noDispute`,但 `refundBuyer()` 却没有) - **风险区域** — 高/中/低级别的发现,包含精确的攻击路径和修复建议 - **关键变量与状态** — 关键的 storage 变量及其风险影响 - **审计重点** — 为人类审计员提供的首要可执行优先事项 - **漏洞模式** — 针对实际合约逻辑检查 13 种已知模式(reentrancy、访问控制、flash loans、signature replay 等) ## 技术栈 - **框架** — Next.js 16 (App Router, TypeScript) - **样式** — Tailwind CSS,暗黑主题 - **AI 后端** — Groq API,带有自动模型轮换: - `qwen/qwen3-32b`(主要,处理奇数请求) - `llama-3.3-70b-versatile`(主要,处理偶数请求) - `gemini-2.0-flash`(备用,在两个 Groq 模型均失败时启用) - **无状态** — 无数据库,无身份验证,单页工具 ## 设置 **1. 克隆仓库** ``` git clone https://github.com/luhrhenz/audit-scope.git cd audit-scope npm install ``` **2. 添加你的 API 密钥** 在项目根目录下创建一个 `.env.local` 文件: ``` GROQ_API_KEY=your_groq_api_key_here GEMINI_API_KEY=your_gemini_api_key_here ``` 在 [console.groq.com](https://console.groq.com) 获取你的 Groq 密钥 **3. 运行** ``` npm run dev ``` 打开 [http://localhost:3000](http://localhost:3000) ## 工作原理 AI 在生成输出之前会遵循一个 8 步内部推理流程: 1. **Modifier 映射** — 列出每个函数的 modifier,并标记不一致之处 2. **状态机分析** — 追踪 state 变量不同步的 bug 3. **访问控制审计** — 检查谁可以调用什么,以及他们是否应该被允许调用 4. **资产流转追踪** — 端到端追踪 ETH/token 的流动 5. **CEI 检查** — 在标记 reentrancy 之前验证 Checks-Effects-Interactions 模式 6. **边界验证** — 构造函数输入、零值、deadline 边界情况 7. **漏洞模式扫描** — 针对实际逻辑检查 13 种已知模式 8. **Modifier 映射表** — 结构化输出供审计员审查 每一项发现都会指出涉及的确切函数、变量或 modifier。不接受泛泛而谈的发现。 ## 注意事项 - 支持 Solidity 0.4.x – 0.8.x - Cairo 支持即将推出 - `.env.local` 已被 gitignore — 永远不会被提交
标签:DLL 劫持, GraphQL安全矩阵, Solidity, Sysdig, Web3安全, 大语言模型, 安全扫描器, 智能合约审计, 自动化攻击