Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
aether — AI 智能合约安全分析与 PoC 生成框架 | Kitploit
工具/GitHubGitHub/l33tdawg/aether
静态分析漏洞利用框架漏洞分析模糊测试密码学渗透测试二进制分析机器学习学习与教育AI 安全
GitHubl33tdawg/aether

aether

AI 智能合约安全分析与 PoC 生成框架

65113个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库

Aether v6.0 — 智能合约安全分析框架

版本 6.0 | v6.0 新特性 | 更新日志

Aether 是一个基于 Python 的框架,用于分析 Solidity 智能合约、生成漏洞发现、生成基于 Foundry 的概念验证(PoC)测试,并在主网分叉上验证漏洞利用。它将 Solidity AST 解析、污点分析、控制流图分析、跨合约分析、Halmos 符号执行、180+ 基于模式的静态检测器、带有共享 SAGE 机构记忆的协作式多智能体 LLM 流水线(GPT/Gemini/Claude)、14 种协议原型、75+ 漏洞利用知识库、ML 校准检测、代币特性检测、不变量提取、相关合约上下文解析以及高级上下文感知过滤整合到一个持久化的全屏 TUI 中。

v6.0 新特性

协作式智能体流水线 — 深度分析流水线从 5 个独立轮次转变为 5 个协作智能体,通过 SAGE 机构记忆共享结构化知识:

  • 共享会话记忆 — 每个轮次将发现、驳回结论和已验证的保护措施存储在每个审计的 SAGE 会话中。后续轮次接收“Prior Pass Intelligence”,而非平铺的文本摘要。
  • 驳回记录作为一等记录 — 当 Pass 3 驳回某个问题(例如“已由 nonReentrant 修饰符防止重入”)时,Pass 5 不会再次标记该问题。这直接消除了重复发现的头号来源。
  • 质疑机制 — 后续轮次可以推翻先前的驳回,但必须提供新的证据。“Pass 3 没有看到经由另一个函数的回调路径”是有效的;“我不同意”则无效。
  • 跨轮次确认 — 当多个轮次独立确认同一发现时,置信度提升 15%。经跨轮次确认的发现会在报告中优先呈现。
  • SAGE 为必选项 — 机构记忆现在是必需项,而非可选项。没有 SAGE = 无法审计。运行 docker compose up -d 启动。

v5.0 新特性

SAGE 机构记忆 — Aether 现在从每次审计中学习,随时间推移减少误报并提升发现质量:

  • 预训练知识库 — 附带 170 条机构记忆:75 个漏洞利用模式、63 个协议原型检查清单、12 个代币特性类别、20 个精选历史漏洞利用(DAO、Wormhole、Euler、Ronin、Curve 等)
  • 流水线集成 — SAGE 在深度分析的 Pass 3 和 Pass 5 中回忆历史发现与漏洞利用模式;并在流水线结束后存储审计经验,供未来回忆使用
  • 反馈闭环 — 已确认的发现会作为高置信度事实存储;被拒绝的发现(误报)也会被存储,使未来审计能够规避它们。AccuracyTracker 的结果会自动反馈给 SAGE
  • 验证流水线 — 新增 Stage -1:在任何其他验证运行之前,SAGE 已知误报检查会过滤与先前已拒绝模式匹配的发现
  • 检测器准确率同步 — SageFeedbackManager.sync_detector_accuracy() 识别表现优异/欠佳的检测器,并存储“该做/不该做”的经验反思
  • 启动时自动播种 — 在 SAGE Docker 运行的情况下首次启动会自动播种预训练知识库。版本感知:已播种则跳过
  • TUI 集成 — 在 CostBar 中显示 SAGE 开/关状态及记忆数量
  • Docker 部署 — docker compose up -d 启动 SAGE;通过 ~/.aether/config.yaml 中的 sage_enabled/sage_url 配置
  • 优雅降级 — SAGE 不可用时绝不会影响任何审计功能

贡献者: 感谢 @sashavdv 修复了硬编码路径变量(PR #1),以及 @pro258b 指出了缺失的 validate_anthropic_key() 方法(PR #2)。

SAGE 快速入门

SAGE 是一个由 BFT 共识驱动的持久化机构记忆系统。完整文档请参阅 SAGE 项目。```bash

Install SAGE Python SDK

pip install sage-agent-sdk

Start SAGE (Docker required)

docker compose up -d

Run Aether — SAGE auto-seeds on first launch

python aether.py

Regenerate seed fixtures after updating knowledge bases (dev only)

python -c "from core.sage_seeder import SageSeeder; SageSeeder.generate_seed_fixtures()"

root@kitploit:~
### SAGE 如何改进审计```
Audit 1 → Findings + FPs → Record outcomes in SAGE
                                    ↓
Audit 2 → SAGE recalls FP patterns → Fewer false positives
                                    ↓
Audit 3 → Richer institutional context → Better severity calibration
                                    ↓
Audit N → Institutional expert-level knowledge → Bug-bounty-quality findings

v4.7 新功能

PoC 自动执行 — 生成的 Foundry PoC 现在可自动编译并执行:

  • forge test --json 集成:编译后立即运行 PoC
  • 通过 PoCTestResult dataclass 解析 JSON 结果,实现结构化的通过/失败/错误报告
  • Fork 模式支持针对实时状态的主网漏洞验证
  • JobManager 中新增 POC_TESTING 阶段,用于在 TUI 中实时跟踪进度

Halmos 符号执行 — 通过符号执行进行形式化验证:

  • HalmosRunner 用于针对生成的属性执行 Halmos 符号测试
  • HalmosPropertyGenerator 用于根据提取的不变量自动生成验证属性
  • HalmosSymbolicNode 流水线节点集成于验证阶段 1.95
  • 配置选项:enable_symbolic_verification、halmos_timeout
  • 如果未安装 Halmos 则优雅降级 — 跳过符号验证且不报错

控制流图分析 — 编译器级别的控制流理解:

  • solidity_ast.py 中的 BasicBlock、CFGEdge、ControlFlowGraph dataclass
  • build_cfg()、get_dominators()、get_loop_headers()、format_cfg_for_llm() 用于结构分析
  • 通过 parse_assembly_block() 解析汇编块,以支持内联汇编
  • 污点分析器中的分支感知污点传播,用于路径敏感分析
  • CFG 上下文与污点数据一起注入深度分析 Pass 2

ML 反馈循环 — 基于历史结果的校准:

  • AccuracyTracker.record_finding_outcome() 用于跟踪提交结果和赏金收入
  • get_detector_accuracy() 和 get_detector_weights() 用于各检测器的性能统计
  • DetectorStats dataclass 跟踪真/假阳性及历史准确率
  • EnhancedVulnerabilityDetector 根据检测器历史记录调整置信度权重
  • 根据历史数据校准严重程度,并注入深度分析 Pass 5

关联合约上下文 — LLM 分析现在可以看到完整的依赖源代码:

  • RelatedContractResolver 自动发现父合约、接口、库和依赖合约
  • 项目模式使用合约间关系分析;单文件模式解析 import 语句
  • 每 Pass 预算系统:Gemini Flash Pass 为 200K 字符,Claude 为 100K,GPT 为 50K
  • 标准库(@openzeppelin、solmate、solady)总结为仅接口形式以节省预算
  • 单文件审计自动发现同级 .sol 文件作为上下文

技术债务清理 — 删除了 8,500 行死代码:

  • 已删除:ai_ensemble.py、audit_engine.py、fork_verifier.py
  • 从 CLI、审计运行器、TUI 界面、报告生成器中移除了所有 ai_ensemble 引用
  • 从数据库管理器中移除了 slither_project_cache
  • 从增强审计引擎中移除了形式化验证存根

v4.0 新功能

Solidity AST 解析 — Aether v4.0 通过 py-solc-x 增加基于编译器的代码分析,超越了仅依赖正则表达式的静态分析:

  • 完整的 solc --ast-json 集成,实现正确的继承解析、函数可见性、带槽位号的存储布局,以及每个函数的状态变量读/写跟踪
  • 编译失败时(缺少导入、编译器版本错误)优雅回退到正则表达式
  • AST 结构摘要自动送入深度分析 LLM 流水线,以更好地理解协议

污点分析引擎 — 跟踪合约中用户可控的输入,识别危险的数据流:

  • 8 种污点源类型:函数参数、msg.sender、msg.value、calldata、外部调用返回值、block.timestamp、block.number、tx.origin
  • 12 种危险汇聚点类型:delegatecall、selfdestruct、外部调用、ETH 转账、存储写入、数组索引、除零等
  • 消毒器检测:识别 require 边界检查、访问控制修饰符、条件回退、Math.min/max 钳制、SafeCast
  • 跨多个文件的跨合约污点跟踪
  • 集成到验证流水线(阶段 1.85)中,用于污点感知的发现证实/反驳

跨合约分析(Pass 3.5) — 针对多合约漏洞的新型深度分析 Pass:

  • 合约间关系分析器:检测继承、接口调用、delegatecall、staticcall、类型化状态变量关系
  • 使用并查集对相关合约进行分组,并检测信任边界
  • 专用 LLM Pass 分析:信任边界违规、跨合约状态一致性、跨合约重入、接口合规性、升级交互、权限提升
  • 跨合约上下文也会送入 Pass 4,以实现跨函数感知

代币特性数据库 — 12 类会导致真实漏洞利用的非标准 ERC-20 行为:

已集成到静态检测流水线和原型检查清单中。

增强精度引擎 — 高级舍入和精度漏洞检测:

  • 份额膨胀 / 首个存款人攻击 检测,适用于 ERC-4626 金库、借贷池、质押
  • 舍入方向分析 — 存款应向下舍入,取款应向上舍入
  • 除法截断跟踪 — 捕获后续在乘法中使用的截断汇率变量
  • 粉尘利用 检测 — 舍入为零允许免费操作
  • 累加器溢出 — 奖励累加器溢出风险评估

可运行 PoC 生成 — 生成的 Foundry 测试现在可真正编译并运行:

  • Mock 合约库:MockERC20、MockOracle、MockWETH、MockFlashLoanProvider
  • 智能 setUp() 生成器:提取构造函数参数、部署 mock、处理可升级合约、铸造代币、设置授权
  • 最大编译尝试次数从 3 次增加到 5 次
  • LLM 提示包含 mock API 文档和推荐的 setUp

LLM 流水线改进:

  • Few-shot 示例 位于 Pass 3、4、5 — 来自漏洞利用知识库的真实漏洞 + 误报示例
  • 严重程度校准 — 与财务影响挂钩的具体阈值(严重 >$1M,高危 >$100K,中危 >$10K)
  • 思维链强制 — 输出 JSON 前必须进行 5 步推理
  • 多提供商轮换 — Gemini Flash 用于低成本 Pass,Anthropic Claude 用于推理,OpenAI GPT 用于多样性
  • AI 集成已退役 — 6 智能体集成(6 倍成本、上下文更差)被结构化流水线中的提供商轮换取代

v3.5 新功能

深度分析引擎 — Aether v3.5 从根本上改变了工具发现漏洞的方式,从一次性的“找 bug” LLM 调用转变为结构化的 6-Pass 流水线,复刻了专业审计师的代码审查方式:先理解,再系统性地攻击。

深度分析引擎(6-Pass LLM 流水线)

Aether 不再将整个合约连同单个提示发送给 LLM,而是运行六个顺序分析 Pass,并累积上下文:

Pass 1-2 按合约内容哈希缓存,因此重新审计会跳过理解阶段。每个后续 Pass 都会接收之前的所有上下文,构建全面的攻击模型。通过 AETHER_DEEP_ANALYSIS=1 功能标志控制(默认开启);失败时回退到一次性分析。

协议原型系统

在分析 bug 之前,Aether 会检测合约实现了哪种类型的协议,并加载特定于原型的漏洞检查清单:

共 10 种原型,每种包含 3-7 个来自真实漏洞利用的特定检查项。

漏洞利用知识库(50+ 模式)

一个结构化的数据库,包含 50+ 种分类的真实漏洞利用模式,取代了之前静态的 10 模式列表:

每种模式包括代码特征、缺失的保护措施、逐步漏洞利用机制,以及真实世界先例(含美元金额)。模式会根据检测到的原型和智能体关注领域进行过滤。

不变量引擎

自动从三个来源提取协议不变量:

  1. 合约注释中的 NatSpec @invariant 标签
  2. 深度分析 Pass 1 中 LLM 发现 的不变量
  3. 模式检测出的常见不变量(余额守恒、AMM 恒定乘积、抵押率等)

生成 Foundry invariant_*() 测试套件,作为轻量级形式化验证证明 — 不变量测试失败即证明该 bug 是真实的。

流水线修复

  • 上下文感知的严重程度校准 — 不再将 division_by_zero、integer_underflow 等一概降级为低危。现在会在决定前检查发现是否位于 unchecked{} 块中、靠近价值转移、位于价格计算中或处于预言机上下文中
  • 验证门修复 — "pending" 发现现在会进入 LLM 分析(之前只有 "validated" 能通过,导致许多真实发现被静默丢弃)
  • 专家感知的置信度惩罚 — 专家在其领域内的单智能体发现(例如 AnthropicReasoningSpecialist 发现复杂逻辑 bug)只会受到 -0.05 惩罚,而不是 -0.15
  • 行桶去重修复 — 移除了任意的 (line // 10) * 10 分桶,该分桶会将相距 2 行的发现拆分到不同分组
  • DeFi 检测器集成 — DeFiVulnerabilityDetector(两阶段存在/不存在分析)现在在主增强审计引擎中运行,而不仅仅在基于流程的流水线中

v3.0 新功能

全内联 Textual TUI — Aether v3.0 是一个持久化的全屏应用程序,绝不会降级到原始终端。所有操作 — 审计、PoC 生成、报告生成、GitHub 范围选择、设置配置 — 完全在 TUI 内运行:

  • 零 app.suspend() 调用 — TUI 永远不会消失,没有突兀的终端切换
  • 一切皆后台任务 — 本地审计、GitHub 审计、PoC 生成和报告生成都作为守护线程运行,并实时流式输出结果
  • 实时任务表 — htop 风格的视图,显示所有运行中/已完成的任务,包含实时状态、阶段进度、发现数量、成本和已用时间
  • 逐任务钻取 — 在任何任务上按 Enter 查看实时滚动输出、阶段进度条和元数据
  • 并发操作 — 同时启动多个审计、PoC 生成和报告;全部可见且可跟踪
  • 合约选择器对话框 — 可过滤、接近全屏的多选,取代旧的基于 curses 的选择器。空格切换,a/n 全选/全不选,输入过滤,已审计合约用颜色区分
  • 内联 GitHub 审计流程 — 克隆、发现、选择合约并启动审计,无需离开 TUI。通过原生 Textual 对话框进行范围管理(继续、重新审计、新范围)
  • 内联设置 — 通过 TextInputDialog 和 SelectDialog 进行 API 密钥配置和模型选择,无需外部设置向导
  • 会话成本栏 — 按提供商(OpenAI、Gemini、Anthropic)实时跟踪 LLM 成本
  • 键盘驱动 — n 新建审计,r 恢复,h 历史,p PoC,o 报告,f 获取,s 设置,q 退出

四种后台任务类型:所有重操作都通过 AuditRunner 作为后台守护线程运行,输出由 ThreadDemuxWriter 捕获,并可在 JobDetailScreen 中查看:

任务类型描述
local单个或并行合约审计
github带预选范围的 GitHub 仓库审计
pocFoundry 概念验证生成

三提供商 LLM 支持:OpenAI(GPT-5/5.3)、Google Gemini(2.5/3.0)和 Anthropic Claude(Sonnet 4.5/Opus 4.6),提供最大的灵活性和冗余。

增强型 PoC 生成:基于 AST 的合约分析、迭代式编译修复,以及生成适合漏洞赏金提交的漏洞利用的生产级 LLM 提示。

高级误报过滤:多阶段验证将误报率从 66% 降至约 20-25%,准确率从 33% 提升至 75-80%:

  • 脚本检测 — 部署脚本(script/、.s.sol、forge-std/Script.sol)自动排除在漏洞分析之外
  • 文件上下文标记 — LLM 提示包含 [PRODUCTION]/[DEPLOYMENT SCRIPT] 标签,使模型专注于生产代码
  • 动态修饰符检测 — 从合约源码中提取自定义访问控制修饰符(例如 onlyDistributor、authorized),并与硬编码模式一起识别
  • 函数作用域去重 — 同一函数中的重复发现被合并,而不是使用脆弱的行号邻近性
  • 原子构造函数检测 — 同一构造函数中的部署+初始化被识别为不可被抢先运行
  • 治理检测(onlyOwner/onlyGovernor 保护的参数)
  • 部署分析(验证代码路径是否真的在生产中使用)
  • 内置保护检查(Solidity 0.8+ 自动保护、SafeMath)
  • 治理感知的 LLM 验证,附带 18 种模式的检查清单
  • 通过提交结果和赏金收入进行准确率跟踪
  • 智能缓存使重复分析速度提升 2 倍

Move 漏洞数据库集成:来自 77 次审计中 128 个严重/高危发现的模式,已适配 Solidity/EVM:

  • 业务逻辑、状态管理、数据不一致、中心化、循环问题和增强的输入验证

快速开始

1. 设置```bash

python setup.py # Interactive installer (recommended)

root@kitploit:~
### 2. 启动 Aether```bash
python aether.py         # Launches the full-screen Textual TUI

就这样。TUI 会通过键盘快捷键和模态对话框引导你完成所有操作。


要求

  • Python 3.11+(已在 3.12.8 上测试)
  • Node.js 22+(用于基于 Hardhat/npm 的项目)
  • Foundry(forge/anvil) 需在 PATH 中,用于 PoC 生成与验证
  • solc-select 用于多种 Solidity 编译器版本
  • py-solc-x(可选)用于 Solidity AST 解析——如果不可用,则回退到正则表达式分析
  • LLM 功能的 API 密钥:
    • OPENAI_API_KEY(用于 GPT 模型)
    • GEMINI_API_KEY(用于 Gemini 模型)
    • ANTHROPIC_API_KEY(用于 Claude 模型)
    • ETHERSCAN_API_KEY(可选,用于获取已验证合约)

手动安装

如果你更倾向于手动安装:```bash

Foundry

curl -L https://foundry.paradigm.xyz | bash && foundryup export PATH="$PATH:$HOME/.foundry/bin"

solc-select

pip install solc-select solc-select install 0.4.26 0.8.0 0.8.19 0.8.20 latest

Python dependencies

python -m venv venv && source venv/bin/activate pip install -r requirements.txt

root@kitploit:~
## 配置

配置向导(`python setup.py`)负责处理所有配置。你也可以在 TUI 中通过 `s`(设置)进行配置:

- **配置 API 密钥** — 依次提示输入 OpenAI、Gemini、Anthropic、Etherscan 密钥,当前值以掩码显示
- **配置模型** — 从可用选项中为每个提供商选择模型
- **完整向导** — 先配置 API 密钥,再进行模型选择
- **分流设置** — 调整严重性阈值、置信水平和最大发现数

或直接设置环境变量:```bash
export OPENAI_API_KEY=sk-...
export GEMINI_API_KEY=...
export ANTHROPIC_API_KEY=...

配置存储在 ~/.aether/config.yaml 中。

数据库位置:

  • 引擎结果:~/.aether/aetheraudit.db
  • GitHub 审计工作流:~/.aether/aether_github_audit.db

TUI 指南

所有交互均通过主屏幕上的键盘快捷键完成:

n — 新建审计

多步骤向导,支持三种来源类型:

本地文件或目录:

  1. 通过 PathDialog 选择路径
  2. 如果是目录,通过 CheckboxDialog 选择合约
  3. 选择功能(增强、LLM 验证、Foundry PoC、增强报告)
  4. 设置输出目录
  5. 确认并以后台任务方式启动

GitHub URL:

  1. 输入仓库 URL
  2. Aether 克隆仓库并发现合约(进度内联显示)
  3. 如果存在之前的范围,可选择:继续、重新审计或创建新范围
  4. 通过 ContractSelectorDialog 选择合约(可筛选,按空格切换,a/n 全选/全不选)
  5. 审计以后台任务方式启动——在任务表中可见

区块浏览器 URL / 地址:

  1. 输入地址或区块浏览器 URL
  2. Aether 获取已验证的源代码
  3. 继续完成功能和输出选择

r — 恢复审计

显示所有进行中的 GitHub 审计表格,包含项目名称、范围、进度(N/M 个合约)和最后更新时间。选择一项以验证待处理合约并以后台任务方式启动。

h — 审计历史

来自两个数据库(本地 + GitHub)的所有历史审计统一视图。选择任意条目即可显示子菜单:

  • 查看详情 — 范围细分,含进度和状态
  • 生成 PoC — 跳转到 PoC 向导,并预先选择项目
  • 重新审计 — 通过 ContractSelectorDialog 选择合约,以后台任务方式启动

p — 生成 PoC

选择项目,配置最大数量、最低严重级别和仅共识过滤。PoC 生成以后台任务方式运行——在任务表中查看进度。

o — 报告

选择项目、范围和格式(markdown/json/html/all)。报告生成以后台任务方式运行。

f — 获取合约

从 10 多个受支持的网络中选择一条链,输入地址或粘贴区块浏览器 URL,获取已验证的源代码,并可选择立即进行审计。

s — 设置

  • 运行完整设置向导 — 先配置 API 密钥,再选择模型,全部内联完成
  • 查看当前配置 — 以格式化方式显示所有设置
  • 重新配置 API 密钥 — TextInputDialog 提示,当前值以掩码显示
  • 重新配置模型选择 — 按提供商显示 SelectDialog
  • 分流设置 — 严重级别、置信度阈值、最大发现数
  • 清除数据 — 清除本地审计数据库、GitHub 审计数据库、分析缓存,或一次性全部清除(需确认)

Enter — 任务详情

在任务表的任意行上按 Enter 可查看:

  • 实时滚动的日志输出(每秒更新一次)
  • 阶段进度条
  • 任务元数据(类型、目标、状态、成本、耗时)

q — 退出

退出 TUI。如果有任务正在运行,会提示确认。


范围与能力

  • Solidity AST 解析 — 通过 py-solc-x 进行基于编译器的代码分析,实现正确的继承解析、函数可见性、存储布局和状态变量读写跟踪;支持优雅的正则回退
  • 控制流图分析 — build_cfg() 构建包含支配树的基本块并检测循环头;解析汇编块;CFG 上下文馈入深度分析和污点传播
  • 污点分析引擎 — 跟踪用户控制的输入(8 种来源类型)在合约中流向 12 种危险汇聚类型,具备消毒器检测、跨合约跟踪和分支感知的 CFG 传播
  • 跨合约分析 — 合约间关系分析器,具备信任边界检测、并查集分组、针对多合约漏洞的专用 LLM 轮(Pass 3.5),以及用于依赖上下文的 RelatedContractResolver
  • 深度分析引擎 — 6 轮 LLM 流水线外加 Pass 3.5(跨合约):理解 → 映射攻击面 → 检查不变量 → 跨合约分析 → 跨函数分析 → 对抗性建模 → 边界情况;每轮模型层级选择、缓存、少样本示例、思维链强制、Pass 2 中的 CFG 上下文、Pass 5 中的机器学习严重级别校准、每轮的相关合约上下文
  • Halmos 符号执行 — HalmosRunner + HalmosPropertyGenerator 用于不变量的形式化验证;集成在验证阶段 1.95;若未安装 Halmos 则优雅降级
  • 机器学习反馈回路 — AccuracyTracker 记录提交结果并生成每个检测器的置信度权重;来自历史数据的严重级别校准被注入深度分析
  • 相关合约上下文 — RelatedContractResolver 发现父合约、接口、库和依赖合约;每轮预算系统,带标准库摘要
  • 协议原型检测 — 自动识别 14 种协议类型(金库、借贷、DEX、桥、质押、治理、预言机、流动性质押、永续 DEX、CDP 稳定币、收益聚合器等),并附带特定于原型的漏洞检查清单
  • 漏洞利用知识库 — 14 个类别中 75+ 个分类的真实世界漏洞利用模式,包含代码指标、缺失的保护措施和前例;可按原型和关注领域筛选
  • 代币特性数据库 — 12 类非标准 ERC-20 行为(转账收费、重基、ERC-777、闪电铸造、黑名单、可暂停、低精度等),集成到检测流水线中
  • 不变量引擎 — 从 NatSpec、LLM 分析和代码模式中提取协议不变量;生成 Foundry 不变量测试
  • 静态分析 — 180+ 个基于模式的检测器(重入、访问控制、算术、预言机操纵、闪电贷、MEV、治理、DeFi 特定、代币特性、精度/舍入等)
  • 增强精度引擎 — 份额膨胀检测、舍入方向分析、除法截断跟踪、粉尘利用、累加器溢出评估
  • LLM 分析 — 使用 OpenAI、Gemini 和 Claude 进行结构化、面向验证的分析;多提供商轮换并自动回退;严重级别校准与财务影响阈值挂钩
  • 上下文感知过滤 — 在降级前检查风险上下文(未检查的代码块、值操作、预言机使用)的严重级别校准;污点感知验证阶段;保留待处理发现以供 LLM 验证

输出目录

  • ./output/ — 常规输出根目录
  • ./output/reports/ — 生成的报告
  • ./output/pocs/ — 生成的 Foundry PoC 套件
  • ./output/exploit_tests/ — 漏洞利用测试结果

架构

入口点

  • aether.py — 唯一入口点;启动 Textual TUI
  • cli/interactive_menu.py — 创建 JobManager + AetherApp 的轻量垫片
  • cli/tui/app.py — AetherApp(App) — 主 Textual 应用,带键绑定和 1 秒刷新定时器

TUI 层(cli/tui/)

  • 屏幕:MainScreen(任务表 + 成本栏)、JobDetailScreen(实时日志 + 阶段 + 元数据)、NewAuditScreen、HistoryScreen、ResumeScreen、PoCScreen、ReportsScreen、FetchScreen、SettingsScreen
  • 组件:JobsTable(轮询 JobManager 的 DataTable)、CostBar(按提供商统计的会话成本)、LogViewer(增量刷新的 RichLog)、PhaseBar(Unicode 块进度条)
  • 对话框:ConfirmDialog、、、、、 — 均为 ModalScreen 子类

后台执行

  • cli/audit_runner.py — AuditRunner 类,在守护线程中运行审计、PoC、报告和 GitHub 审计
  • core/job_manager.py — JobManager 单例:会话任务注册表(QUEUED/RUNNING/COMPLETED/FAILED/CANCELLED)
  • core/audit_progress.py — 带每任务日志缓冲区的 ContractAuditStatus,以及用于捕获 stdout/stderr 的 ThreadDemuxWriter
  • core/llm_usage_tracker.py — 线程安全单例,提供 snapshot() 用于计算每任务成本增量

核心编排

  • cli/main.py — AetherCLI 类(约 2600 行)— AuditRunner 使用的内部审计编排器
  • core/enhanced_audit_engine.py — 集成深度分析的主审计引擎
  • core/post_audit_summary.py — 审计后面板,按提供商细分成本

深度分析层(v4.7)

  • core/deep_analysis_engine.py — 6 轮 LLM 流水线外加 Pass 3.5(跨合约):理解 → 攻击面 → 不变量 → 跨合约 → 跨函数 → 对抗性 → 边界情况;模型层级选择、缓存、少样本示例、思维链强制、Pass 2 中的 CFG 上下文、Pass 5 中的机器学习严重级别校准、每轮的相关合约上下文
  • core/protocol_archetypes.py — 协议原型检测(14 种类型,包括 LIQUID_STAKING、PERPETUAL_DEX、CDP_STABLECOIN、YIELD_AGGREGATOR),带每种原型的漏洞检查清单
  • core/exploit_knowledge_base.py — 14 个类别中 75+ 个分类的真实世界漏洞利用模式(包括 CROSS_CONTRACT、SIGNATURE_AUTH、TOKEN_INTEGRATION、PROXY_UPGRADE、TYPE_SAFETY)
  • core/invariant_engine.py — 不变量提取(NatSpec + LLM + 模式)以及 Foundry 不变量测试生成 + Halmos 属性生成
  • core/solidity_ast.py — 通过 py-solc-x 进行 Solidity AST 解析,带正则回退,用于继承、可见性、存储布局、状态读写跟踪;控制流图构建(build_cfg()、get_dominators()、get_loop_headers())
  • core/taint_analyzer.py — 数据流 / 污点分析,含 8 种来源类型、12 种汇聚类型、消毒器检测、跨合约跟踪、分支感知的 CFG 传播
  • core/cross_contract_analyzer.py — 合约间关系分析,含信任边界检测、并查集分组,以及用于依赖上下文的 RelatedContractResolver

检测层

  • core/enhanced_vulnerability_detector.py — 主检测器,含 60+ 个模式
  • core/business_logic_detector.py、core/state_management_detector.py、core/data_inconsistency_detector.py、core/centralization_detector.py、core/looping_detector.py — 受 Move 启发的检测器
  • core/defi_vulnerability_detector.py、core/mev_detector.py、core/oracle_manipulation_detector.py — DeFi 特定检测器(DeFi 检测器已在 v3.5 中集成到增强引擎)
  • core/arithmetic_analyzer.py、core/precision_analyzer.py、core/gas_analyzer.py、core/input_validation_detector.py、 — 专用分析器(精度分析器增强了份额膨胀、舍入方向、除法截断、粉尘利用、累加器溢出检测)

验证层

  • core/validation_pipeline.py — 多阶段流水线:内置保护检查、治理检测、污点感知验证(阶段 1.85)、Halmos 符号验证(阶段 1.95)、部署验证、本地验证
  • core/governance_detector.py, core/deployment_analyzer.py, core/llm_false_positive_filter.py
  • core/control_flow_guard_detector.py, core/inheritance_verifier.py
  • core/nodes/halmos_node.py — 用于符号执行验证的 HalmosSymbolicNode 流水线节点

LLM 与 AI 层

  • core/enhanced_llm_analyzer.py — 结构化 LLM 分析(GPT/Gemini/Claude),带 JSON 输出和多提供商轮换
  • core/enhanced_prompts.py — 生产级提示模板,支持从知识库动态加载漏洞利用模式、少样本示例、严重级别校准和思维链强制

PoC 生成层

  • core/foundry_poc_generator.py(约 8000 行)— 基于 AST 的分析、迭代编译反馈(最多 5 次尝试)、通过 forge test --json 自动执行,支持 PoCTestResult 解析和分叉模式
  • core/llm_foundry_generator.py — 基于 LLM 的测试生成,含模拟 API 文档和推荐的 setUp 模式
  • core/enhanced_foundry_integration.py — Foundry 验证与格式化
  • core/poc_templates.py — 模拟合约模板(MockERC20、MockOracle、MockWETH、MockFlashLoanProvider)
  • core/poc_setup_generator.py — 智能 setUp() 生成:构造函数参数提取、模拟部署、可升级合约处理、代币铸造与授权

持久化层

  • core/database_manager.py — DatabaseManager(本地审计)+ AetherDatabase(GitHub 审计)
  • core/analysis_cache.py — 智能缓存,重复分析速度提升 2 倍
  • core/accuracy_tracker.py — 机器学习反馈回路:提交结果、赏金收益、每个检测器的准确率统计、置信度权重生成

集成

  • core/github_auditor.py — 克隆仓库、检测框架、发现合约、协调分析
  • core/etherscan_fetcher.py、core/basescan_fetcher.py — 从区块浏览器获取已验证的合约
  • core/exploit_tester.py — 针对 Anvil 分叉验证漏洞利用

基于流程的执行

审计流程在 YAML 配置中定义(configs/)。增强审计流水线: FileReaderNode -> StaticAnalysisNode -> LLMAnalysisNode -> EnhancedExploitabilityNode -> [FixGeneratorNode -> ValidationNode -> HalmosSymbolicNode] -> ReportNode


测试

76 个测试文件中包含 2059 项测试,运行时间约 23 秒:```bash python -m pytest tests/ # All tests (~23s, 2059 tests) python -m pytest tests/test_enhanced_detectors.py -v # Single file python -m pytest tests/test_enhanced_detectors.py::TestArithmeticAnalyzer -v # Single class python -m pytest tests/ -k "governance" -v # Pattern match python -m pytest tests/ --cov=core --cov-report=html # With coverage

root@kitploit:~
## 故障排查

- **未找到 Foundry** — 确保 `forge`/`anvil` 已安装并在 `PATH` 中(`foundryup` 和 `export PATH="$PATH:$HOME/.foundry/bin"`)
- **未找到 solc** — 安装 `solc-select` 及所需版本:`solc-select install 0.8.20 latest`
- **LLM 功能无法使用** — 确认 API 密钥已设置。某些模型在您的账户/地区可能不可用;系统会自动回退
- **找不到数据库** — 对于 GitHub 报告,请确保已先运行审计工作流
- **Textual 无法加载** — 若缺失,请运行 `pip install textual>=1.0.0`

---

## 更新日志

### v4.7 — PoC 自动执行、Halmos 符号验证、CFG 分析与 ML 反馈循环
- **PoC 自动执行** — 生成的 Foundry PoC 通过 `forge test --json` 自动编译并执行,支持 `PoCTestResult` 解析和分叉模式;`POC_TESTING` 阶段用于 TUI 实时跟踪
- **Halmos 符号执行** — `HalmosRunner`、`HalmosPropertyGenerator` 和 `HalmosSymbolicNode` 流水线节点(验证阶段 1.95),用于不变量的形式化验证;若未安装 Halmos 则优雅降级
- **控制流图分析** — `BasicBlock`、`CFGEdge`、`ControlFlowGraph`,含 `build_cfg()`、支配树、循环头检测、汇编块解析;CFG 上下文注入深度分析 Pass 2;支持分支感知的污点传播
- **ML 反馈循环** — `AccuracyTracker` 记录提交结果,通过 `get_detector_accuracy()` 和 `get_detector_weights()` 获取每个检测器的统计信息;在 `EnhancedVulnerabilityDetector` 中调整置信度权重;在深度分析 Pass 5 中进行严重性校准
- **相关合约上下文** — `RelatedContractResolver` 发现父合约、接口、库和依赖合约,配备逐 Pass 预算系统(200K/100K/50K 字符);标准库摘要;单文件同级发现
- **技术债务清理** — 删除了 8,500 行死代码:移除了 `ai_ensemble.py`、`audit_engine.py`、`fork_verifier.py`;从 CLI、审计运行器、TUI 界面、报告生成器中移除了所有 ai_ensemble 引用
- **2059 个测试** 在 76 个测试文件中全部通过

### v4.0 — Solidity AST 解析、污点分析与数据流跟踪
- **Solidity AST 解析器** — 通过 py-solc-x 完整集成 solc,实现正确的继承解析、函数可见性、存储布局、状态读/写跟踪;正则表达式优雅回退
- **污点分析引擎** — 跟踪用户控制的输入,从 8 种来源类型到 12 个危险汇聚点(sink),带消毒器检测和跨合约跟踪
- **流水线集成** — AST 数据输入 Pass 1,污点数据输入 Pass 2,污点感知验证阶段 1.85
- **1839 个测试** 在 67 个测试文件中全部通过(约 23 秒)

### v3.8 — 增强检测与 PoC 生成
- **跨合约分析** — 新增 Pass 3.5,包含合约间关系分析器、信任边界检测、并查集(union-find)分组
- **代币特性数据库** — 12 类非标准 ERC-20 行为(转账收费 fee-on-transfer、基数调整 rebasing、ERC-777 等)
- **增强精度引擎** — 份额通胀检测、舍入方向分析、除法截断跟踪、粉尘利用、累加器溢出
- **可运行 PoC 生成** — 模拟合约库(ERC20、Oracle、WETH、FlashLoan)、智能 setUp()、最大编译尝试次数 3→5
- **少样本示例** 在深度分析 Pass 3、4、5 中,附带真实漏洞与误报示例
- **严重性校准** — 具体阈值(严重 >$1M、高危 >$100K、中危 >$10K、低危 理论性)
- **强制思维链** — 在 JSON 输出前必须进行 5 步推理
- **AI 集成退役** — 被跨深度分析 Pass 的多提供商轮换取代
- **多提供商轮换** — Gemini Flash(廉价 Pass)、Anthropic Claude(推理)、OpenAI GPT(多样性)
- **1682 个测试** 全部通过

### v3.7 — 扩展的原型与利用模式
- **4 个新协议原型** — LIQUID_STAKING、PERPETUAL_DEX、CDP_STABLECOIN、YIELD_AGGREGATOR(总计 10→14)
- **25 个新利用模式** — CROSS_CONTRACT、SIGNATURE_AUTH、TOKEN_INTEGRATION、PROXY_UPGRADE、TYPE_SAFETY 类别(总计 50→75)
- **改进的合约扫描器** — 抽象合约现在也会被评分,为 monorepo 支持调整了阈值
- **1528 个测试** 全部通过

### v3.5.2 — 减少误报
- **合约发现中的脚本检测** — 位于 `script/`/`scripts/` 下的文件、`.s.sol` 文件,以及导入 `forge-std/Script.sol` 或继承 `is Script` 的合约都会被标记为部署脚本,并从 LLM 漏洞分析中排除。这消除了 Foundry 部署辅助工具被当作生产代码分析所产生的一整类误报
- **LLM 提示中的文件上下文标记** — 合并后的内容现在按文件包含 `// FILE: <name>` 标记,深度分析 Pass 1 和 3 会收到一个 `## Project Files` 标头,将每个文件标记为 `[PRODUCTION]` 或 `[DEPLOYMENT SCRIPT]`,以便 LLM 聚焦于正确的代码
- **动态修饰符检测** — `GovernanceDetector` 现在通过扫描带 `only` 前缀或 `msg.sender` 检查的修饰符定义,提取合约中定义的自定义访问控制修饰符(例如 `onlyDistributor`、`onlyMinter`、`authorized`)。这些修饰符与硬编码修饰符列表合并,用于 `has_access_control()` 和 `is_governance_function()`
- **函数级去重** — `VulnerabilityDeduplicator` 现在在合约代码可用时按 `(function_name, vuln_type)` 对发现进行分组,取代了会遗漏同一函数中相邻行重复项的脆弱精确行匹配。当函数上下文不可用时,回退到 20 行桶分组
- **放宽 AI 集成行容差** — `_findings_match_fuzzy()` 的容差从 ±5 行提高到 ±15 行,以捕获跨代理的同一函数重复项
- **构造函数原子性误报模式** — `_check_constructor_context()` 现在检测合约在同一构造函数中被部署(`new`/`Create2`)并初始化(`.initialize()`)的情况,由于这些操作是原子的,因此将抢先交易(front-running)问题标记为误报
- **LLM 验证模式 #18** — 在 LLM 验证提示的 18 模式误报清单中新增"原子部署 + 初始化"
- **1489 个测试** 在 56 个测试文件中全部通过(约 40 秒),高于此前的 1461 个

### v3.5 — 深度分析引擎
- **6-pass 深度分析流水线** — 用结构化的多 Pass 推理取代一次性 LLM 调用:协议理解 → 攻击面映射 → 不变量违反分析 → 跨函数交互 → 对抗性建模 → 边界与极端情况。每个 Pass 都会接收来自先前各 Pass 的累积上下文。Pass 1-2 按内容哈希缓存,以加快重新审计
- **协议原型检测** — 自动识别协议类型(ERC-4626 Vault、Lending Pool、DEX/AMM、Bridge、Staking、Governance、Oracle、NFT Marketplace、Token、Orderbook),并附带基于真实世界漏洞提炼的按原型漏洞检查清单
- **漏洞利用知识库** — 50+ 个分类利用模式,涵盖 9 个类别(通胀/份额、重入、预言机、治理、桥、精度/舍入、访问控制、经济/DeFi、逻辑),取代了静态的 10 模式列表。每个模式包含代码指标、缺失的保护措施、逐步利用机制、带美元金额的真实世界先例,以及原型适用性
- **不变量引擎** — 从 NatSpec `@invariant` 标记、LLM 分析和 6 个常见模式检测器(金库守恒、余额跟踪、供应核算、AMM 恒定乘积、借贷抵押、质押奖励)中提取协议不变量。生成 Foundry `invariant_*()` 测试套件作为轻量级形式化验证证明
- **上下文感知的严重性校准** — 用风险上下文检查取代一刀切的严重性降级。位于 `unchecked{}` 块中、靠近值转移(`call{value:}`、`_mint`、`safeTransfer`)、价格计算或预言机上下文中的发现保留其原始严重性
- **验证门修复** — `"pending"` 状态的发现现在会带 `needs_llm_validation` 标志进入 LLM 分析。只有明确的 `"false_positive"` 发现会被丢弃(此前,所有非 `"validated"` 的发现都会被静默过滤)
- **专家感知的置信度惩罚** — 与代理专长匹配的单代理发现(例如 AnthropicReasoningSpecialist + 经济攻击)获得 -0.05 惩罚;非专长发现保持 -0.15
- **行桶去重修复** — 移除了导致任意边界问题的 `(line // 10) * 10` 分桶(第 9 行和第 11 行落入不同桶)。去重现在仅使用归一化的漏洞类型,由 `_findings_match_fuzzy()` 处理行邻近度
- **DeFi 检测器集成** — `DeFiVulnerabilityDetector`(两阶段存在/缺失语义分析)现在与 `EnhancedVulnerabilityDetector` 一起在增强审计引擎中运行
- **提示中的动态利用模式** — `enhanced_prompts.py` 现在从 ExploitKnowledgeBase 加载按重点领域过滤的模式,并回退到静态模式
- **1461 个测试** 在 55 个测试文件中全部通过(约 50 秒)

### v3.2 — 任务统计与 UI 修复
- **修复任务发现/成本/LLM 统计始终显示为零的问题** — 审计工作线程现在从 `run_audit()` 捕获结果字典以提取发现数量;移除了使单例引用孤立的 `LLMUsageTracker.reset()`;所有 4 种工作线程类型都根据快照增量计算每任务统计
- **修复窗口切换时的 UI 重绘伪影** — 在 JobDetailScreen 中用普通 `Container` + `overflow: hidden` 替换了可滚动容器,以防止过期的合成器帧
- **将"任务详情"移至 border_title**,以实现更干净的元数据面板渲染
- 从 git 跟踪中移除了 `CLAUDE.md`

### v3.0 — 完全内联的 Textual TUI
- **零 `app.suspend()` 调用** — TUI 永远不会降级到原始终端;所有操作都在内联运行
- **后台 PoC 生成** — 通过 `AuditRunner.start_poc_generation()` 作为守护线程运行,并在 JobDetailScreen 中实时输出
- **后台报告生成** — 通过 `AuditRunner.start_report_generation()` 作为守护线程运行,并实时输出
- **后台 GitHub 审计** — 通过 Textual 对话框选择范围,审计通过 `AuditRunner.start_github_audit()` 作为守护线程运行
- **ContractSelectorDialog** — 近乎全屏的可筛选多选模态框,取代了基于 curses 的 `ScopeManager.interactive_select()`。空格键切换选择,`a`/`n` 全选/取消全选,输入以筛选,已审计合约以颜色区分
- **GitHubAuditHelper** — 围绕 `GitHubAuditor`/`AetherDatabase` 的分解式包装器,提供可从 Textual 界面调用的原子操作(`clone_and_discover`、`get_scope_state`、`save_new_scope`、`get_pending_contracts`、`handle_reaudit`)
- **内联设置** — 通过原生 TextInputDialog/SelectDialog 配置 API 密钥和模型,无需外部设置向导
- **内联 GitHub 范围管理** — 通过 SelectDialog 继续、重新审计或创建新范围;通过 ContractSelectorDialog 选择合约
- **重写了 6 个界面** — PoCScreen、ReportsScreen、SettingsScreen、NewAuditScreen、HistoryScreen、ResumeScreen — 全部完全内联
- **770 个测试** 在 50 个测试文件中全部通过

### v2.2 — Textual TUI 仪表盘
- 全屏 Textual TUI,带持久化应用、按键绑定和 1 秒刷新定时器
- MainScreen 带实时任务表和会话成本栏
- JobDetailScreen 带实时日志查看器、阶段进度条和元数据
- 模态对话框(确认、文本输入、选择、复选框、路径选择器)取代 questionary 提示
- 通过 AuditRunner 在后台执行审计,使用 ThreadDemuxWriter 捕获输出
- JobManager 单例用于会话任务注册
- 通过 LLMUsageTracker 快照进行每任务成本跟踪

### v2.1 — 并行审计、移除 Slither 与测试清理
- 并行审计引擎 — 使用 `ThreadPoolExecutor` 并发运行多个合约,可配置最多 8 个并行工作线程
- 线程安全的进度跟踪 — 带锁的 `ContractAuditStatus`,`ThreadDemuxWriter` 用于 stdout 多路复用
- 审计后摘要 — 并行审计完成后显示合并的结果视图
- LLM 用量跟踪 — 跟踪所有三个提供商的 token 用量、成本和 API 调用
- 完全移除 Slither — 删除了所有依赖、集成代码和测试(约 1200 行);基于模式的检测器 + Foundry ABI + 正则表达式是唯一的分析工具
- 测试套件清理 — 移除了 40+ 个旧/慢/集成测试文件

### v2.0 — 交互式菜单 TUI
- 交互式菜单驱动的 TUI 作为主要界面
- 引导式审计向导,带来源选择、功能复选框和确认
- 对进行中的 GitHub 审计支持恢复审计
- 跨本地和 GitHub 数据库的统一审计历史浏览器
- 从菜单集成的 PoC 生成和报告工作流
- 多链合约获取,可选立即审计
- 从菜单进行设置管理
- 从菜单启动/返回控制台

### v1.5 — 三提供商 LLM 支持与增强分析
- 集成 Anthropic Claude(Sonnet 4.5、Opus 4.6、Haiku 4.5)作为第三个 LLM 提供商
- 6 代理 AI 集成:2 个 OpenAI + 2 个 Gemini + 2 个 Anthropic 专家代理
- 自动跨提供商回退,实现最大可用性
- 更新了 OpenAI 模型(GPT-5.3)和 Google Gemini 模型(3.0 Flash/Pro)
- 设置向导更新,加入 Anthropic API 密钥配置和模型选择
- 修复了损坏的 generate-foundry CLI 命令

---

## 许可证

Aether 在 **MIT 许可证** 下分发。详情请参阅 [LICENSE](https://github.com/l33tdawg/aether/blob/HEAD/LICENSE) 文件。

## 作者

**Dhillon Andrew Kannabhiran** (@l33tdawg)
- 邮箱:[email protected]
- Twitter:[@l33tdawg](https://twitter.com/l33tdawg)
- GitHub:[@l33tdawg](https://github.com/l33tdawg)

## 贡献

欢迎贡献!请随时提交 issue、fork 本仓库并创建 pull request。
下载工具
类别严重程度示例代币
转账扣费高危USDT, STA, PAXG
弹性供应代币高危stETH, AMPL, OHM
ERC-777 回调高危imBTC
可闪电铸造高危DAI
非标准返回值中危Old USDT
黑名单代币中危USDC, USDT
可暂停代币中危USDC
低精度代币中危USDC (6), WBTC (8)
转账钩子中危LINK (ERC-677)
授权竞态低危多种
多入口点低危TUSD
可升级代币低危USDC v2
Pass用途模型级别
Pass 1协议理解 — 协议是什么、其不变量、价值流动、信任假设廉价(缓存)
Pass 2攻击面测绘 — 每个入口点、状态读/写、重入窗口廉价(缓存)
Pass 3不变量违反分析 — 系统性地检查每个不变量与每条代码路径强
Pass 4跨函数交互 — 状态依赖分析、时间依赖、闪电贷序列强
Pass 5对抗建模 — 明确的攻击者视角,包括闪电贷、MEV、多账户强
Pass 6边界与边缘情况 — 首次/最后一次操作、零值、最大值、自引用操作中等
原型示例检查项
ERC-4626 金库首个存款人通胀、舍入方向、通过捐赠操纵份额价格
借贷池预言机价格操纵、清算阈值操纵、坏账级联、利率操纵
DEX/AMM首个 LP 操纵、三明治攻击、基于储备金的价格预言机
跨链桥跨链重放、验证者被攻破、代币映射不匹配、提款证明伪造
质押奖励计算操纵、奖励率溢出、解除质押重入
治理闪电贷治理攻击、时间锁绕过、法定人数操纵
预言机陈旧价格数据、价格偏差、L2 排序器停机
类别模式数示例
通胀/份额攻击6ERC-4626 首个存款人、LP 代币通胀、基于捐赠的操纵
重入7经典、只读、跨函数、跨合约、ERC-777/1155 钩子、闪电贷回调
预言机5现货价格操纵、TWAP 操纵、数据陈旧、精度不匹配、L2 排序器
治理4闪电贷投票(Beanstalk)、时间锁绕过、法定人数操纵
跨链桥5消息重放(Nomad)、验证者被攻破(Ronin)、代币映射(Wormhole)
精度/舍入4舍入方向、未检查溢出、转账扣费、弹性代币漂移
访问控制5未初始化代理、存储冲突、选择器冲突、delegatecall 注入
经济/DeFi8三明治攻击、JIT 流动性、坏账级联、returndata 炸弹、签名重放
逻辑6差一错误、缺少截止时间/滑点、未检查返回值、自转账记账
report
审计报告生成(markdown/json/html)
  • 并行审计 — 并发多合约分析,在任务表中实时显示进度
  • GitHub 审计工作流 — 克隆仓库、检测框架、发现合约、内联范围选择、持久化状态
  • Foundry PoC 生成 — 基于 AST 的分析、迭代编译反馈(最多 5 次尝试)、模拟合约库(ERC20、Oracle、WETH、FlashLoan)、智能 setUp() 生成、可直接用于生产的漏洞利用提示、通过 forge test --json 自动执行并支持分叉模式
  • 多链合约获取 — 10+ 个 EVM 网络 + Solana 支持
  • 报告 — 从审计数据生成 Markdown、JSON、HTML 报告
  • LLM 用量跟踪 — 跨所有提供商的 Token 用量、成本跟踪和审计后摘要
  • 持久化 — 两个 SQLite 数据库,分别用于引擎结果和 GitHub 审计工作流
  • TextInputDialog
    SelectDialog
    CheckboxDialog
    PathDialog
    ContractSelectorDialog
  • 辅助类:GitHubAuditHelper — 为 TUI 集成拆分出的 GitHub 审计操作
  • 主题:theme.tcss — 青色主题的 Textual CSS
  • core/token_quirks.py — 代币特性数据库(12 类非标准 ERC-20 行为)
  • core/halmos_runner.py — 用于形式化验证的 Halmos 符号执行运行器
  • core/halmos_property_generator.py — 从不变量自动生成 Halmos 验证属性
  • core/accuracy_tracker.py — 机器学习反馈回路:每个检测器的准确率跟踪、置信度权重调整、严重级别校准
  • core/data_decoding_analyzer.py
  • 代币特性检测通过 core/token_quirks.py 集成到静态检测流水线中