Ethereum Vulnerability Benchmark Corpus
收藏数据集概述
该数据集是一个用于评估审计代理(audit agents)能否仅凭源代码上下文重新发现以太坊历史协议及客户端漏洞的可复现基准测试集合。
当前内容
- Fusaka 基准测试:当前版本包含 14 个针对 Fusaka 分支的基准测试。
- 覆盖项目:测试涵盖共识规范(consensus-spec)、执行规范(execution-spec)、Nimbus、Lighthouse、Prysm、Grandine、Lodestar、Reth、Nethermind、c-kzg-4844 和 rust-eth-kzg 等项目。
标识规则
每个漏洞拥有稳定的人类可读基准 ID,格式如下:
<Fork>-<project>-<sequence>
示例:
Fusaka-nimbus-1Fusaka-lighthouse-2Fusaka-grandine-1
基准文件夹以此 ID 命名,原始 issue 编号保留在 SCOPE.md、benchmarks/MANIFEST.md 和 results/issue-XXX.md 中,保证可追溯至公开问题报告。
仓库结构
. ├── benchmarks/ # 基准测试输入文件夹 │ ├── README.md │ ├── MANIFEST.md # 当前所有基准的清单 │ └── Fusaka-nimbus-3/ # 单个基准文件夹示例 │ ├── SCOPE.md # 任务描述 │ └── code/ # 目标代码(裁剪自上游仓库) │ └── nimbus-eth2/ ├── results/ # 真实漏洞报告(不可泄露给模型) │ ├── README.md │ └── issue-216.md ├── docs/ # 格式、贡献与评估指南 │ ├── ADDING_BENCHMARKS.md │ ├── BENCHMARK_FORMAT.md │ └── EVALUATION.md ├── awarded_issues_markdown/ # 构建真实报告的源 ├── build_benchmarks.py # 构建基准文件夹的汇编脚本 └── benchmarks_README.md
运行基准测试
- 从
benchmarks/中精确选择一个基准文件夹。 - 仅将该文件夹提供给审计代理。
- 使用该文件夹内的
SCOPE.md作为任务描述。 - 在基准文件夹外部收集代理的报告(例如,存入本地忽略的
benchmark-runs/目录)。 - 运行完成后,将报告与
results/中对应的文件进行比较。
原则:基准测试旨在衡量漏洞发现能力,而非模型搜索已知 issue 的能力。
未来扩展
计划为 Dencun 和 Pectra 分支添加基准测试,新实现的结构保持不变:
Dencun-geth-1Dencun-lighthouse-1Pectra-reth-1Pectra-teku-1
许可与归属
基准测试包含来自上游开源项目的裁剪文件。每个裁剪代码路径需保留其 COMMIT_INFO.md 文件,并保持上游版权和许可声明。公开发布前需选择与上游代码和基准元数据用途兼容的仓库级许可证。




