日本››2024,第51卷››问题(5): 355-362.数字对象标识:10.11896/jsjkx.230400011

• 信息安全 • 上一篇   下一篇

基于跳跃-SBERT技术

严尹彤, 于璐, 王泰彦, 李宇薇, 潘祖烈  

  1. 国防科技大学电子对抗学院 合肥 230037
    网络空间安全态势感知与评估安徽省重点实验室 合肥 230037
  • 收稿日期:2023-04-03 修回日期:2023-07-28 出版日期:2024-05-15 发布日期:2024-05-08
  • 通讯作者:潘祖烈(panzulie17@nudt.edu.cn)
  • 作者简介:(yanyintong.edu@nudt.edu.cn)
  • 基金资助:
    美国(62202484)

基于Jump-SBERT的二进制码相似性检测研究

阎银通、于璐、王太炎、李玉伟、潘祖烈  

  1. 国防科技大学电子工程学院,合肥230037,中国安徽省网络空间安全态势感知与评估重点实验室,合肥23003,中国
  • 收到:2023-04-03 修订过的:2023-07-28 在线:2024-05-15 出版:2024-05-08
  • 关于作者:颜银彤,1997年生,研究生。他的主要研究兴趣包括网络安全和二进制代码相似性检测。
    潘祖利,1976年出生,博士,教授。他的主要研究方向包括网络安全、漏洞发现和计算机科学。
  • 支持单位:
    国家自然科学基金青年基金(62202484)。

摘要:二进制代码相似性检测技术在不同的安全领域中有着重要的作用。针对现有的二进制代码相似性检测方法面临计算开销大且精度低、二进制函数语义信息识别不全面和评估数据集单一等问题,提出了一种基于跳跃-SBERT的二进制代码相似性检测技术。跳跃-SBERT有两个主要创新点,一是利用孪生网络构建SBERT公司网络结构,该网络结构能够在降低模型的计算开销的同时保持计算精度不变;二是引入了跳转识别机制,使跳跃-SBERT可以学习到二进制函数的图结构信息,从而更加全面地捕获二进制函数的语义信息。实验结果表明,跳跃-SBERT个函数)中的识别准确率可达96.3%,在大函数池(10 000个函数)中的识别准确率可达85.1%,SOTA(最新技术)36.13%,跳跃SBERT在大规模二进制代码相似性检测中的表现更加稳定。消融实验表明,两个主要创新点对跳跃-SBERT均有积极作用,其中,跳转识别机制的贡献最高可达9.11%。

关键词: 二进制代码, 测量, 语义信息, SBERT公司, 跳转识别机制

摘要:二进制码相似性检测技术在不同的安全领域发挥着重要作用。针对现有二进制码相似性检测方法存在的计算量大、精度低、二元函数和单个评价数据集的语义信息识别不完整等问题,提出了一种基于Jump-SBERT的二进制码相似检测技术。Jump-SBERT有两项主要创新。一种是使用双网络构建SBERT网络结构,可以在保持计算精度不变的情况下降低模型的计算成本。二是引入跳跃识别机制,使jump-SBERT能够学习二元函数的图结构信息。因此,可以更全面地捕捉二元函数的语义信息。实验结果表明,Jump-SBERT在小函数池(32个函数)和大函数池(10000个函数)中的重新识别准确率分别达到96.3%和85.1%,比最新的(SOTA)方法高36.13%。Jump-SBERT在大规模二进制码相似性检测中更稳定。烧蚀实验表明,这两个主要创新点对Jump-SBERT都有积极影响,跳跃识别机制的贡献率高达9.11%。

关键词: 二进制代码, 相似性检测, 语义信息, SBERT网络结构, 跳转识别机制

中图分类号: 

  • TP312型
[1] MIYANI D,HUANG Z,LIE D.Binpro:二进制源代码起源工具[J].arXiv:1711.008302017。
[2] SHAHKAR A.关于二进制与源代码的匹配[D]。Mon-treal:康考迪亚大学,2016年。
[3] DAVID Y,PARTUSH N,YAHAV E.Firmup:固件常见漏洞的精确静态检测[J]。ACM SIGPLAN通知,2018,53(2):392-404。
[4] GAO J,YANG X,FU Y,et al.VulSeeker:一种基于语义学习的跨平台二进制漏洞探索者[C]//第33届ACM/IEEE自动化软件工程国际会议论文集.2018:896-899。
[5] 黄H,YOUSSEF A M,DEBBABI M.Binsequence:快速、准确和可扩展的二进制代码重用检测[C]//2017年亚洲计算机与通信安全会议ACM进程。2017:155-166。
[6] SHALEV N,PARTUSH N.使用机器学习进行二进制相似性检测[C]//第13届编程语言和安全分析研讨会论文集.2018:42-47。
[7] 丁世浩,冯伯明,查兰德P.Asm2vec:增强二进制克隆搜索的静态表示鲁棒性,防止代码混淆和编译器优化[C]//2019 IEEE安全与隐私研讨会(SP)。IEEE,2019:472-489。
[8] MASSARELLI L,DI LUNA G A,PETRONI F,et al.安全:二元相似性的自关注函数嵌入[C]//第十六届国际会议(DIMVA 2019)。施普林格国际出版公司,2019:309-329。
[9] FENG Q,ZHOU R,XU C,et al.基于可扩展图的固件映像错误搜索[C]//2016 ACM SIGSAC计算机与通信安全会议论文集。2016:480-491。
[10] 许X,刘C,冯Q,等.基于神经网络的图嵌入跨平台二进制码相似性检测[C]//2017 ACM SIGSACC计算机与通信安全会议论文集.2017:363-376。
[11] 肖华,阎X,王X,等.用于图相似性计算的层次图匹配网络[J].arXiv:2006.165512020。
[12] REIMERS N,GUREVYCH I.句子插入:使用连词网络的句子嵌入[J].arXiv:1908.100842019。
[13] 王浩,QU W,KATZ G,等.jTrans:用于二进制代码相似性检测的跳转软件变换器[C]//第31届ACM SIGSOFT国际软件测试与分析研讨会论文集.2022:1-13。
[14] RRDMOND K,LUO L,ZENG Q.基于自然语言处理的二进制代码分析的跨体系结构指令嵌入模型[J].arXiv:1812.096522018。
[15] ZUO F,LI X,YOUNG P,等.函数对外螺旋二进制码相似性比较的神经机器翻译[J].arXiv:1808.047062018。
[16] 张欣,孙伟,庞杰,等.交叉指令集结构二进制基本块的相似度量方法[C]//2020年二进制分析研究研讨会论文集.2020。
[17] DEVLIN J,CHANG M W,LEE K,等.伯特:语言理解深度双向变换器的预训练[J].arXiv:1810.048052018。
[18] 于泽,曹荣,汤琦,等.顺序问题:用于二进制代码相似性检测的语义软件神经网络[C]//AAAI人工智能会议论文集.2020:1145-1152。
[19] 裴凯,许忠,杨杰,等。Trex:基于二进制相似性的微trace学习执行语义[J].arXiv:2012.0868020。
[20] 李昕,QU Y,YIN H.Palmtree:学习指令嵌入的汇编语言模型[C]//2021年ACM SIGSAC计算机与通信安全会议论文集.2021:3236-3251。
[21]HAQ I U,CABALLERO J.二进制码相似性研究[J]。ACM计算调查(CSUR),2021,54(3):1-38。
[22]PAN Z,WANG T,YU L,等.位置分布问题:基于图的二元函数相似性分析方法[J]。电子学,2022,11(15):24-46。
[23]YANG S,CHENG L,ZENG Y,et al.Asteria:基于深度学习的AST编码用于跨平台二进制码相似性检测[C]//2021第51届IEEE/IFIP可靠系统和网络国际会议(DSN)。IEEE,2021:224-236。
[24]于泽,郑伟,王杰,等.Codecmr:函数级二进制源代码匹配的跨模式更新[J]。神经信息处理系统进展,2020,33:3872-3883。
[25]李毅,顾C,杜林T,等.用于学习图结构对象相似性的图匹配网络[C]//国际机器学习会议。PMLR,2019:3835-3845。
[26]李毅,TARLOW D,BROCKSCHMIDT M,等.门控图序列神经网络[J].arXiv:1511.054932015。
[27]MARCELLI A,GRAZIANO M,UGARTE-PEDERO X等。机器学习如何解决二元函数相似性问题[C]//第31届USENIX安全研讨会(USENIX Security 22)。2022:2099-2116。
[28]DAVID Y,PARTUSH N,YAHAV E.通过重新优化二进制文件的相似性[C]//第38届ACM SIGPLAN编程语言设计与实现会议记录。2017:79-94。
[29]冯Q,王明,张明,等.跨平台漏洞搜索条件公式的提取[C]//2017亚洲计算机与通信安全会议论文集.2017:346-359。
[30]LIN J,WANG D,CHANG R,et al.EnBinDiff:识别二进制文件的仅数据补丁[J]。IEEE可靠和安全计算汇刊,2021,20(1):343-359。
[31]HEMEL A,KALLEBERG K T,VERMAAS R,et al.通过二进制代码克隆检测发现软件许可证违规——回顾[J]。ACM SIGSOFT软件工程师环注释,2021,46(3):24-25。
[32]刘斌,霍伟,张C,等.αdiff:基于dnn[C]//第33届ACM/IEEE自动化软件工程国际会议论文集.2018:667-678。
[33]CESARE S,XIANG Y,ZHOU W.控制基于流的恶意软件变体检测[J]。IEEE可靠和安全计算汇刊,2013,11(4):307-317。
[34]DAREM A、ABAWAJY J、MAKKAR A等。使用OpCode级功能进行可视化和基于深度学习的恶意软件变体检测[J]。《未来一代计算机系统》,2021125:314-323。
[35]LUO L,MING J,WU D,等.基于语义的模糊恢复二进制代码相似性比较及其在软件和算法剽窃检测中的应用[J]。IEEE软件工程学报,2017,43(12):1157-1177。
[36]KARGEN U,SHAHMEHRRI N.走向二进制代码的稳健指令级跟踪对齐[C]//2017第32届IEEE/ACM国际自动化软件工程会议(ASE)。IEEE,2017年:342-352。
[37]PENG J,LI F,LIU B,et al.1dvul:通过二进制补丁发现1天漏洞[C]//2019第49届IEEE/IFIP可靠系统和网络国际会议(DSN)。IEEE,2019:605-616。
[38]徐毅,徐泽,陈B,等.二进制程序基于补丁的漏洞匹配[C]//第29届ACM SIGSOFT国际软件测试与分析研讨会论文集.2020:376-387。
[39]段毅,李旭,王杰,等.Deepbindiff:学习二进制差异的程序代码表示[C]//网络与分布式系统安全研讨会.2020。
[40]YANG J,FU C,LIU X Y,等.编码:一种用于二进制码搜索的张量嵌入格式[J]。IEEE软件工程学报,2021,48(7):2224-2244。
[41]MASSARELLI L,DI LUNA G A,PETRONI F,et al.研究二元分析中无监督特征提取的图嵌入神经网络[C]//二元分析研究第二次研讨会论文集(BAR).2019:1-11。
[42]THAKUR N,REIMERS N,DAXENBERGER J,等.增广sbert:用于改进双编码器的成对句子评分任务的数据增强方法[J].arXiv:2010.082402020。
已查看
全文


摘要

引用

  共享   
  讨论   
找不到建议阅读的文章!