信息工程大学学报2026,Vol.27Issue(1):64-71,8.DOI:10.3969/j.issn.1671-0673.2026.01.009
基于函数拆分对抗二进制代码相似性检测
Function Splitting-Based Adversarial Attacks on Binary Code Similarity Detection
摘要
Abstract
Binary code similarity detection can identify homologous functions in software,thereby lo-cating critical modules.When attackers apply this technology to reverse engineering,posing significant risks to software security.Code obfuscation can increase software complexity and enhance its resis-tance to detection.Traditional code obfuscation techniques are primarily implemented within a single function,often resulting in substantial space and runtime overhead.To address this,a code obfuscation method based on function splitting to counteract binary code similarity detection is proposed in this pa-per.The proposed method is operated at the intermediate representation level of the program.First,the basic block set of the original function is partitioned into multiple subsets based on the dominator tree.Second,data dependencies between subsets are identified through def-use chains.Subsequently,con-trol variables are introduced to repair the control flow among these subsets.Finally,sub-functions are generated via code rewriting.Experimental results demonstrate that after applying function-splitting ob-fuscation,the recall rate of binary similarity detection models drops to as low as 1.3%(with a function pool size of 1 024),while the code bloating ratio is 2.06 times that of the original model.关键词
代码混淆/二进制代码相似性检测/函数拆分/支配树Key words
code obfuscation/binary code similarity detection/function splitting/dominator tree分类
信息技术与安全科学引用本文复制引用
魏然,舒辉..基于函数拆分对抗二进制代码相似性检测[J].信息工程大学学报,2026,27(1):64-71,8.