BinPool
收藏资源简介:
BinPool数据集是一个包含大量真实世界软件漏洞的公开数据集,旨在用于二进制安全分析。该数据集包含了Debian软件包的易受攻击版本和修复版本,跨越了多个年份,并且每个程序都编译了四个不同的优化级别。BinPool数据集覆盖了603个独特的CVE编号,跨越了89个CWE类别,涉及162个Debian软件包,总共包含了6144个二进制文件。BinPool数据集的构建过程高度自动化,首先从国家漏洞数据库(NVD)和Debian安全跟踪器收集漏洞数据,然后使用Debian包维护工具构建易受攻击和修复版本的软件包,并在四个不同的优化级别上编译。最后,从这些软件包中提取元数据,包括受漏洞影响的文件、函数和代码行。BinPool数据集适用于漏洞发现、二进制函数相似性检测和剽窃检测等多种安全分析工具的评估,为实际的安全研究提供了宝贵的资源。
The BinPool dataset is a publicly available dataset containing a vast number of real-world software vulnerabilities, intended for binary security analysis. This dataset includes both vulnerable and patched versions of Debian software packages, spanning multiple years, with each program compiled under four distinct optimization levels. The BinPool dataset covers 603 unique CVE identifiers, spans 89 CWE categories, involves 162 Debian software packages, and contains a total of 6144 binary files. The construction process of the BinPool dataset is highly automated: first, vulnerability data is collected from the National Vulnerability Database (NVD) and the Debian Security Tracker; then, vulnerable and patched software packages are built using Debian package maintenance tools, and compiled under four distinct optimization levels. Finally, metadata is extracted from these packages, including vulnerability-affected files, functions, and lines of code. The BinPool dataset is suitable for evaluating various security analysis tools such as vulnerability discovery, binary function similarity detection, and plagiarism detection, providing a valuable resource for practical security research.
BinPool数据集概述
简介
BinPool是一个用于二进制安全分析的漏洞数据集,包含从历史Debian软件包中提取的易受攻击和已修补的二进制文件,使用四种不同的优化级别编译。该数据集可用于通过机器学习、静态分析等多种方法进行漏洞发现任务。
访问方式
- 数据集下载地址:Zenodo
主要特征
- 包含603个唯一CVE和89个CWE
- 提供每个CVE对应的Debian软件包的修复版本
- 支持多种编程语言(C、C++、Java、Python、PHP)
- 提供补丁和二进制版本中的函数和模块名称
数据集统计
| 测量指标 | 数值 |
|---|---|
| 唯一CVE数量 | 603 |
| CWE数量 | 89 |
| Debian文件数量 | 824 |
| 二进制文件总数 | 6144 |
| Debian软件包数量 | 162 |
| 源代码模块数量 | 768 |
| 源代码函数数量 | 910 |
| 二进制函数数量 | 7280 |
常见CWE列表
| CWE | CWE名称 | 出现次数 |
|---|---|---|
| CWE-787 | Out-of-bounds Write | 71 |
| CWE-476 | NULL Pointer Dereference | 61 |
| CWE-125 | Out-of-bounds Read | 54 |
| CWE-190 | Integer Overflow or Wraparound | 34 |
| CWE-20 | Improper Input Validation | 28 |
| CWE-416 | Use After Free | 27 |
| CWE-400 | Uncontrolled Resource Consumption | 20 |
数据结构
CVE-ID/ │ ├── vulnerable/ # 易受攻击版本 │ ├── opt0/ # 优化级别0 │ ├── opt1/ # 优化级别1 │ ├── opt2/ # 优化级别2 │ └── opt3/ # 优化级别3 │ └── patch/ # 已修补版本 ├── opt0/ # 优化级别0 ├── opt1/ # 优化级别1 ├── opt2/ # 优化级别2 └── opt3/ # 优化级别3
自动化工具
所有数据收集步骤已自动化:binpool_automation
使用说明
下载数据集后,运行extract_deb_tar.py提取Debian文件到二进制文件,生成的结构与上述数据结构一致。
统计信息提取
运行以下命令提取统计信息: bash python3 extract_statistics.py
开发团队
- Sima Arasteh - 南加州大学博士生
- Georgios Nikitopoulos - 达特茅斯学院博士生
- Wei-Cheng Wu - 达特茅斯学院博士生
- Nicolaas Weideman - USC ISI博士生
- Aaron Portnoy - 达特茅斯学院黑客驻校研究员
- Mukund Raghothaman - 南加州大学助理教授
- Christophe Hauser - 达特茅斯学院助理教授




