- 简介二进制代码是无处不在的,二进制分析是反向工程、恶意软件分类和漏洞发现的关键任务。不幸的是,虽然存在大量恶意二进制文件,但由于许可问题,获取现代系统的高质量良性二进制文件的数据集已经成为一项具有挑战性的任务。因此,基于机器学习的二进制分析流水线利用昂贵的商业数据集(例如VirusTotal)或开源二进制文件(例如coreutils),但数量有限。为了解决这些问题,我们提出了Assemblage:一个可扩展的基于云的分布式系统,用于爬取、配置和构建Windows PE二进制文件,以获得适合训练二进制分析中最先进模型的高质量二进制数据集。过去一年中,我们在AWS上运行了Assemblage,产生了890k个Windows PE和428k个Linux ELF二进制文件,覆盖了29个配置。Assemblage旨在具有可重复性和可扩展性,使用户能够发布其数据集的“配方”,并促进各种特征的提取。我们通过使用Assemblage的数据来训练现代基于学习的编译器来源和二进制函数相似性流水线来评估Assemblage。我们的结果说明,在训练现代基于学习的二进制分析时,需要高质量的Windows PE二进制文件数据集。Assemblage可从https://assemblage-dataset.net下载。
- 图表
- 解决问题Assemblage论文试图解决如何获取高质量的Windows PE二进制文件的问题,以用于训练二进制分析的机器学习模型。
- 关键思路Assemblage是一个可扩展的基于云的分布式系统,它可以爬取、配置和构建Windows PE二进制文件,以获取高质量的二进制文件集,用于训练二进制分析的现代机器学习模型。
- 其它亮点Assemblage在AWS上运行了一年,产生了890k个Windows PE和428k个Linux ELF二进制文件。它是可复现和可扩展的,并支持用户发布数据集的“recipes”,并促进各种特征的提取。作者使用Assemblage的数据来训练现代的学习-based二进制分析流水线,以评估其有效性。
- 在最近的相关研究中,有一些关于二进制分析的机器学习模型的研究,如《DeepBinDiff: Learning Program-Wide Code Representations for Binary Diffing》和《DeepHunter: A Coverage Guided Fuzz Testing Framework for Deep Learning Systems》。
沙发等你来抢
去评论
评论
沙发等你来抢