基于VEX-IR嵌入与知识图谱的跨平台二进制代码相似性分析新方法VexIR2Vec研究
《ACM Transactions on Software Engineering and Methodology》:VexIR2Vec: An Architecture-Neutral Embedding Framework for Binary Similarity
【字体:
大
中
小
】
时间:2025年11月07日
来源:ACM Transactions on Software Engineering and Methodology
编辑推荐:
本文推荐一篇关于二进制代码相似性分析的创新研究,作者提出VexIR2Vec方法,通过将VEX-IR(中间表示)转化为嵌入向量,结合知识图谱(TransE模型)和注意力机制(EAN模块),有效解决了跨编译器、跨架构(x86/ARM)、跨优化级别(O0-O3)及混淆代码的相似性匹配难题。实验表明,该方法在diffing(F1=0.65)和searching(MAP=0.82)任务上显著优于BinDiff、SAFE等现有工具,为软件安全(漏洞搜索、恶意代码检测)和逆向工程提供了强大新工具。
引言背景
二进制代码相似性分析是软件安全、漏洞挖掘和恶意代码检测的核心技术,但在实际应用中面临巨大挑战。不同编译器(如GCC、Clang)、优化级别(O0、O1、O2、O3)、目标架构(x86、ARM)和代码混淆技术(如O-LLVM)会导致同一源代码编译后的二进制代码在语法和结构上存在显著差异,传统基于语法特征的方法难以有效处理。
VexIR2Vec方法框架
VexIR2Vec是一种新颖的二进制代码相似性分析方法,其核心思想是将二进制函数转换为统一的中间表示(VEX-IR),再通过嵌入技术将其映射到高维向量空间,从而捕获语义相似性。该方法包含三个关键步骤:
使用angr框架将二进制代码提升为平台无关的VEX-IR,并通过VexINE模块进行规范化处理。规范化包括:
- ••寄存器提升:将内存访问指令(put/get)转换为寄存器操作。
- ••
- ••
- ••
这些优化显著减少了编译器优化和架构差异带来的语法噪声。
将VEX-IR指令分解为实体(如操作码、类型、参数)和关系(如Arg、Type、Next),构建<头实体,关系,尾实体>三元组。使用TransE模型在大规模代码语料(SPEC CPU2006/2017)上训练知识图谱嵌入,学习实体和关系的128维向量表示,确保语义相近的实体在向量空间中距离接近。头实体,关系,尾实体>
通过VexNet(一种孪生网络结构)将函数表示为向量:
- ••使用Entity-Attention Network(EAN)模块融合操作码、类型、参数、字符串和库调用等特征的嵌入。
- ••
- ••通过NT-Xent损失函数训练模型,使相似函数的向量距离最小化,不相似函数的距离最大化。
实验设计与评估
实验使用Coreutils、Diffutils、Findutils、cURL、Lua等真实项目代码,编译生成涵盖x86/ARM架构、GCC/Clang编译器、O0-O3优化级别的二进制数据集。评估任务包括:
- ••跨优化级别对比(如O0 vs O3):VexIR2Vec平均F1得分0.65,显著优于BinDiff(0.26)、SAFE(0.28)、BinFinder(0.47)等方法。
- ••跨编译器对比(如Clang12 vs GCC8):在x86和ARM架构上,VexIR2Vec保持最高精度(0.75-0.87)和召回率(0.84-0.98)。
- ••跨架构对比(x86 vs ARM):尽管挑战更大,VexIR2Vec仍达到0.82的平均F1得分。
- ••混淆代码对比:在BCF、FLA、SUB和ALL混淆设置下,VexIR2Vec平均F1得分0.65,远高于其他工具(BinFinder 0.41)。
在包含32万函数的池中搜索匹配项,VexIR2Vec的MAP(平均精度)达到0.82,随机猜测基线仅为0.00005。
在零样本设置下,VexIR2Vec在Gzip二进制相似性搜索中的准确率为62.12%,而GPT-4o仅为23.33%,显示出专业嵌入方法的优势。
技术优势与创新点
- 1.1.平台无关性:通过VEX-IR中间表示屏蔽架构和编译器差异。
- 2.2.语义捕获能力:知识图谱嵌入和注意力机制有效捕获代码语义。
- 3.3.抗混淆能力:规范化步骤和嵌入学习缓解了代码混淆的影响。
- 4.4.
应用前景
VexIR2Vec在软件安全领域具有广泛应用价值:
总结
VexIR2Vec通过将二进制代码转换为语义保持的向量表示,有效解决了跨平台二进制相似性分析难题。其结合知识图谱嵌入、注意力机制和深度学习的方法,在精度、召回率和抗干扰能力上均显著优于现有技术,为二进制代码分析提供了可靠的新工具。未来工作可扩展支持更多架构(如RISC-V、MIPS)和集成动态分析特征。
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号