2024 · 会议论文

Assemblage:面向机器学习的二进制数据集自动构建

Assemblage: Automatic Binary Dataset Construction for Machine Learning

Assemblage 是一个分布式系统,从 GitHub 与 vcpkg 爬取 C/C++ 项目,在多种编译器配置下构建,并记录源码到二进制的映射,包括函数地址、源代码、注释以及 PDB 或 DWARF 调试信息。该系统在 AWS 上运行约一年,以 Visual Studio 2015–2022 在不同优化级别、架构及 Debug/Release 模式下构建出 89 万个 Windows PE 二进制,另以 GCC 与 Clang 构建出 42.8 万个 Linux ELF 二进制,共涵盖 29 种配置。案例研究将这些数据用于 PassTell 编译器溯源、图神经网络与 jTrans 函数相似性检测,以及比较 XDA 与 IDA 的函数边界识别。

研究范围与局限

这些二进制均由 GitHub 与 vcpkg 上的开源项目构建,其中许多是小型学生项目或实用工具,因此不能代表商业、加壳或混淆软件。Assemblage 不独立检测恶意软件,作者依赖 GitHub 禁止恶意软件的政策,并计划在后续版本中加入扫描。论文报告的构建成功率在 Windows 上约为 30%,在 Linux 上为 7%。公开数据集仅包含采用宽松许可证的仓库,因此可下载的副本只是论文语料的子集;元数据中的仓库链接会把二进制与作者的 GitHub 主页关联起来。案例研究在原有协议下以最小改动重新训练现有模型,展示的是 Windows 与 Linux 之间的泛化差距(例如 jTrans 在 Windows 上的 MRR 为 0.52,在 Linux 上为 0.83),而非新的分析方法。

与本合集的关联

补充一篇提供源码与调试信息映射的 Windows PE 二进制数据集论文,与本节反编译研究所用的 Linux ELF 函数语料互补。

发表与复核详情

发表载体
NeurIPS 2024 Datasets and Benchmarks
发表状态
会议论文
出版/提交日期
2024 年(具体日期未核实)
日期依据
NeurIPS 官方论文集与出版方提交的 Crossref 元数据标明出版年份为 2024;Crossref 未提供更精确的出版日期。arXiv 首次提交日期另行记录。
arXiv 首次提交
2024 年 5 月 7 日
arXiv
2405.03991
已复核的 arXiv 版本
v2
DOI
10.52202/079017-1871

Crossref 与 NeurIPS 论文集页面给出八位作者顺序、第 37 卷及第 58698–58715 页;Crossref 只记录年份。论文集页面的 2024-12-16 引用日期也出现在另一篇 NeurIPS 2024 论文的页面上,因此保留年份精度。审阅了 arXiv v2(2024-11-02),其注释标明 NeurIPS;v1 提交于 2024-05-07。在所审阅的 f8ac584 提交(2026-08-08)中,仓库 README 称代码采用 MIT 许可证,公开数据集是宽松许可子集;pyproject.toml 声明 MIT,但没有 LICENSE 文件,GitHub 也未识别出许可证。README 还说明代码库于 2026 年 7 月重构并加入 Rust 构建器,Windows/MSVC 构建位于 backend/assemblage/legacy/ 下且需要 Windows 主机,pre-refactor 分支保留了此前的代码。Hugging Face 上的 changliu8541/Assemblage_PE(公开副本含 9.1 万个 Windows PE 二进制)与 Assemblage_LinuxELF 数据卡声明许可证为“other”,并要求用户遵守各源仓库的许可证。仓库中独立的 DeepHistory 语料不在本条目范围内。本次未下载二进制或数据集,也未运行代码或实验。

来源复核于

本合集仅做来源复核,未重新运行论文实验。请通过原始论文或 BibTeX 引用原作者。

报告条目过时 建议修正翻译

一手来源

  1. https://proceedings.neurips.cc/paper_files/paper/2024/hash/6bbefc73a187dd42e0dc065b4e7a0615-Abstract-Datasets_and_Benchmarks_Track.html
  2. https://proceedings.neurips.cc/paper_files/paper/2024/file/6bbefc73a187dd42e0dc065b4e7a0615-Paper-Datasets_and_Benchmarks_Track.pdf
  3. https://api.crossref.org/works/10.52202/079017-1871
  4. https://arxiv.org/abs/2405.03991v2
  5. https://arxiv.org/pdf/2405.03991v2
  6. README.md GitHub · Assemblage-Dataset/Assemblage · 修订 f8ac584
  7. pyproject.toml GitHub · Assemblage-Dataset/Assemblage · 修订 f8ac584
  8. https://huggingface.co/datasets/changliu8541/Assemblage_PE/blob/19a8f947f5a04d03edea78e61790226b55f92ac2/README.md
  9. https://huggingface.co/datasets/changliu8541/Assemblage_LinuxELF/blob/5d58b08b500ea279a9880f80fd4b217e1897035a/README.md