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安全, 大语言模型, 安全扫描器, 智能合约审计, 自动化攻击