yuzengbaao/autoaudit-research

GitHub: yuzengbaao/autoaudit-research

基于AutoResearch框架的智能合约审计系统,融合数据流分析与AI增强技术,可自动检测9类常见漏洞并生成Immunefi标准报告。

Stars: 0 | Forks: 0

# AutoAudit Research v2.0 [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/dd6770a875205424.svg)](https://github.com/yuzengbaao/autoaudit-research/actions) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) 基于 AutoResearch 的智能合约审计系统,具备数据流分析和 AI 增强功能。 ## 🎯 功能特性 - **🔍 数据流分析**:追踪敏感函数调用(oracles,外部调用) - **🤖 AI 增强**:LLM 驱动的漏洞上下文理解 - **⚡ AutoResearch 模式**:自动策略优化 - **📊 专业报告**:符合 Immunefi 标准的审计报告 ## 🚀 快速开始 ``` # 安装 pip install -r requirements.txt # 基本审计 python -m autoaudit_research path/to/Contract.sol # 带优化 python -m autoaudit_research Contract.sol --iterations 20 # 带 ground truth (用于测试) python -m autoaudit_research Contract.sol --ground-truth known_vulns.json ``` ## 📋 示例 ``` # 审计 Twyne 合约 (T-02 漏洞) python -m autoaudit_research contracts/twyne/AaveV3CollateralVault.sol # 输出: # 🔬 增强版 AutoAudit Research v2.0 # [迭代 1/10] # 1. 提出新策略... # 2. 执行审计... # 3. 评估中... # F1 Score: 1.5000 ✅ # ✅ 研究完成 # 报告: audit_report_2026-04-04.md ``` ## 🏆 验证结果 ### 真实案例:Twyne T-02 成功在生产环境中检测到 **T-02 Oracle Manipulation** 漏洞: | 指标 | 数值 | |--------|-------| | **合约** | AaveV3CollateralVault | | **漏洞** | Oracle Manipulation (CRITICAL) | | **精确率** | 100% | | **召回率** | 100% | | **F1 分数** | 1.5000 | | **检测时间** | 1.3s | **漏洞详情**: - **位置**:`splitCollateralAfterExtLiq()` 函数 - **问题**:使用了实时的 `latestAnswer()` 而非快照价格 - **影响**:清算过程中可能发生价格操纵 - **赏金**:$50,000(Immunefi Critical 级别) ### 测试覆盖 | 指标 | 数值 | |--------|-------| | **测试用例** | 74 | | **覆盖率** | 91% | | **通过率** | 100% | | **CI 状态** | ✅ Passing | ## 📁 项目结构 ``` autoaudit-research/ ├── src/ │ └── autoaudit_research.py # Core system (985 lines) ├── tests/ │ ├── test_autoaudit.py # Basic tests │ ├── test_comprehensive.py # Comprehensive tests │ ├── test_remaining_coverage.py # Coverage tests │ ├── test_final_100.py # Final coverage push │ ├── test_ultimate_100.py # Ultimate coverage │ └── test_complete_coverage.py # Complete tests ├── .github/workflows/ci.yml # CI/CD config ├── requirements.txt # Dependencies ├── README.md # This file └── LICENSE # MIT License ``` ### 核心组件 | 组件 | 行数 | 描述 | |-----------|-------|-------------| | `DataFlowAnalyzer` | ~80 | 追踪敏感函数调用 | | `AIAnalyzer` | ~60 | LLM 驱动的漏洞分析 | | `StrategyMutator` | ~100 | 自动策略优化 | | `EnhancedAuditExecutor` | ~200 | 主审计执行引擎 | | `EnhancedAutoAuditRuntime` | ~150 | 研究循环编排 | ## 🔧 配置 ### 环境变量 ``` export MOONSHOT_API_KEY="your-api-key" # For AI enhancement export AUTOAUDIT_ITERATIONS=20 # Default iterations export AUTOAUDIT_CONFIDENCE=0.6 # Default threshold ``` ### 自定义策略 创建 `audit_strategy.md`: ``` confidence_threshold: 0.7 enabled_patterns: - reentrancy - oracle_manipulation - access_control data_flow_analysis: true ai_analysis: true ``` ## 🧪 测试 ``` # 运行所有测试 pytest tests/ -v # 运行特定测试 pytest tests/test_twyne.py -v # 带 coverage pytest tests/ --cov=src --cov-report=html ``` ## 📊 工作原理 ### 5 阶段审计流程 1. **范围定义**:提取函数、变量、外部调用 2. **模式匹配**:检测已知漏洞模式 3. **数据流分析**:追踪跨函数的敏感调用 4. **AI 增强**:上下文感知的漏洞评估 5. **报告生成**:生成符合 Immunefi 标准的 Markdown 报告 ### AutoResearch 循环 ``` Propose → Execute → Evaluate → Keep/Revert → Repeat ``` - **Propose**:生成新的检测策略 - **Execute**:使用当前策略运行审计 - **Evaluate**:计算 F1/Precision/Recall - **Keep**:如果 F1 提升,保存策略 - **Revert**:如果没有改进,尝试新策略 ## 🛡️ 漏洞检测 ### 支持的类别(9 种) | 严重程度 | 类型 | |----------|-------| | **Critical** | Reentrancy, Access Control, Oracle Manipulation | | **High** | Integer Overflow, Flash Loan, DelegateCall Injection | | **Medium** | Unchecked External Call, Timestamp Dependence | | **Low** | tx.origin Auth, Business Logic Issues | ### 检测方法 1. **模式匹配**:基于正则的漏洞签名 2. **数据流分析**:追踪跨函数的敏感调用 3. **AI 增强**:LLM 驱动的上下文理解 4. **Slither 集成**:静态分析回退 ## 📄 许可证 MIT License - 详见 [LICENSE](LICENSE) 文件 ## 🙏 致谢 - [AutoResearch by Karpathy](https://github.com/karpathy/autoresearch) - 优化循环的灵感来源 - [Immunefi](https://immunefi.com/) - Bug bounty 平台及标准 - [Trail of Bits](https://trailofbits.com/) - 审计方法论参考 ## 📞 联系方式 - GitHub: [@yuzengbaao](https://github.com/yuzengbaao) - Telegram: @xiazong **免责声明**:本工具仅供研究和教育目的。在向 bug bounty 平台提交结果之前,请务必由人工安全研究人员进行审查。
标签:AI安全, Apex, Chat Copilot, DeFi安全, DLL 劫持, DNS重绑定攻击, F1 Score, Immunefi, Python, Solidity, Web3安全, 云安全监控, 以太坊, 价格操纵, 区块链安全, 大语言模型, 安全审计报告, 对称加密, 文档安全, 无后门, 智能合约安全工具, 智能合约审计, 机器学习, 自动优化策略, 自动化审计, 逆向工具, 配置审计, 静态分析, 预言机操纵