首页> 外文会议>IEEE Symposium on Security and Privacy >Asm2Vec: Boosting Static Representation Robustness for Binary Clone Search against Code Obfuscation and Compiler Optimization
【24h】

Asm2Vec: Boosting Static Representation Robustness for Binary Clone Search against Code Obfuscation and Compiler Optimization

机译:Asm2Vec:针对代码混淆和编译器优化,提高二进制克隆搜索的静态表示鲁棒性

获取原文

摘要

Reverse engineering is a manually intensive but necessary technique for understanding the inner workings of new malware, finding vulnerabilities in existing systems, and detecting patent infringements in released software. An assembly clone search engine facilitates the work of reverse engineers by identifying those duplicated or known parts. However, it is challenging to design a robust clone search engine, since there exist various compiler optimization options and code obfuscation techniques that make logically similar assembly functions appear to be very different. A practical clone search engine relies on a robust vector representation of assembly code. However, the existing clone search approaches, which rely on a manual feature engineering process to form a feature vector for an assembly function, fail to consider the relationships between features and identify those unique patterns that can statistically distinguish assembly functions. To address this problem, we propose to jointly learn the lexical semantic relationships and the vector representation of assembly functions based on assembly code. We have developed an assembly code representation learning model emph{Asm2Vec}. It only needs assembly code as input and does not require any prior knowledge such as the correct mapping between assembly functions. It can find and incorporate rich semantic relationships among tokens appearing in assembly code. We conduct extensive experiments and benchmark the learning model with state-of-the-art static and dynamic clone search approaches. We show that the learned representation is more robust and significantly outperforms existing methods against changes introduced by obfuscation and optimizations.
机译:逆向工程是一项人工密集型工作,但它是一项必要的技术,可用于了解新恶意软件的内部工作原理,查找现有系统中的漏洞以及检测已发布软件中的专利侵权。装配体克隆搜索引擎通过识别那些重复或已知的零件来促进逆向工程师的工作。但是,设计健壮的克隆搜索引擎具有挑战性,因为存在各种编译器优化选项和代码混淆技术,它们使逻辑上相似的汇编函数看起来非常不同。实用的克隆搜索引擎依赖于汇编代码的强大矢量表示形式。但是,现有的克隆搜索方法依赖于手动的特征工程过程来为装配函数形成特征向量,却无法考虑特征之间的关系并无法识别那些可以统计地区分装配函数的独特模式。为了解决这个问题,我们建议基于汇编代码共同学习汇编程序的词汇语义关系和向量表示。我们已经开发了汇编代码表示学习模型\ emph {Asm2Vec}。它只需要汇编代码作为输入,不需要任何先验知识,例如汇编函数之间的正确映射。它可以在汇编代码中出现的标记之间找到并合并丰富的语义关系。我们进行了广泛的实验,并使用最新的静态和动态克隆搜索方法对学习模型进行了基准测试。我们表明,学习的表示形式更鲁棒,并且相对于混淆和优化所引入的变化,其性能明显优于现有方法。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号