Cross-Language Binary-Source Code Matching Based on Rust and Intermediate Representation

Jiacheng Mao, Zukai Tang, Wenbi Rao
{"title":"Cross-Language Binary-Source Code Matching Based on Rust and Intermediate Representation","authors":"Jiacheng Mao, Zukai Tang, Wenbi Rao","doi":"10.1109/CCAI57533.2023.10201266","DOIUrl":null,"url":null,"abstract":"Binary-source code matching is a crucial task in computer security and software engineering, enabling reverse engineering by matching binary code with its corresponding source code and aiding vulnerability detection by searching for binary code given its source code. However, cross-language binary-source code matching remains largely unexplored, with existing research mostly focusing on C/C++ and Java due to a lack of suitable datasets. This paper attempts to address this gap by introducing a new language, Rust, and conducting experiments on it for the task. Rust offers several advantages, such as being commonly compiled to LLVM-IR and binary files, and its compiler performs various transformations during compilation to ensure memory safety, thread safety, and null safety of programs, resulting in an increased prevalence of function clones. Matching binary-source code across Rust and C/C++ poses greater challenges and research opportunities. Moreover, in this paper, we also re-trained the OSCAR model on the CodeNet dataset and evaluated its performance, which we call XLOSCAR. We designed a series of experiments to analyze cross-language binary-source code matching between Rust and C/C++, and compared XLOSCAR with the general OSCAR model.","PeriodicalId":285760,"journal":{"name":"2023 IEEE 3rd International Conference on Computer Communication and Artificial Intelligence (CCAI)","volume":"24 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-05-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2023 IEEE 3rd International Conference on Computer Communication and Artificial Intelligence (CCAI)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CCAI57533.2023.10201266","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Binary-source code matching is a crucial task in computer security and software engineering, enabling reverse engineering by matching binary code with its corresponding source code and aiding vulnerability detection by searching for binary code given its source code. However, cross-language binary-source code matching remains largely unexplored, with existing research mostly focusing on C/C++ and Java due to a lack of suitable datasets. This paper attempts to address this gap by introducing a new language, Rust, and conducting experiments on it for the task. Rust offers several advantages, such as being commonly compiled to LLVM-IR and binary files, and its compiler performs various transformations during compilation to ensure memory safety, thread safety, and null safety of programs, resulting in an increased prevalence of function clones. Matching binary-source code across Rust and C/C++ poses greater challenges and research opportunities. Moreover, in this paper, we also re-trained the OSCAR model on the CodeNet dataset and evaluated its performance, which we call XLOSCAR. We designed a series of experiments to analyze cross-language binary-source code matching between Rust and C/C++, and compared XLOSCAR with the general OSCAR model.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
基于Rust和中间表示的跨语言二进制源代码匹配
二进制源代码匹配是计算机安全和软件工程中的一项重要任务,通过将二进制代码与其对应的源代码进行匹配,实现逆向工程,并通过查找给定源代码的二进制代码来辅助漏洞检测。然而,由于缺乏合适的数据集,现有的研究主要集中在C/ c++和Java上,跨语言的二进制源代码匹配在很大程度上仍未被探索。本文试图通过引入一种新的语言Rust来解决这一问题,并针对该任务对其进行实验。Rust提供了几个优点,例如通常被编译为LLVM-IR和二进制文件,并且它的编译器在编译期间执行各种转换,以确保程序的内存安全性、线程安全性和null安全性,从而导致函数克隆的增加。在Rust和C/ c++之间匹配二进制源代码带来了更大的挑战和研究机会。此外,在本文中,我们还在CodeNet数据集上重新训练OSCAR模型并评估其性能,我们称之为XLOSCAR。我们设计了一系列实验来分析Rust与C/ c++之间的跨语言二进制源代码匹配,并将XLOSCAR与通用OSCAR模型进行了比较。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Survey of Neuromorphic Computing: A Data Science Perspective Towards Accurate Crowd Counting Via Smoothed Dilated Convolutions and Transformer Optimization UUV Self-localization Method Based on Distributed Network Machine Learning Approach to Sentiment Recognition from Periodic Reports Research on Lightweight 5G Core Network on Cloud Native Technology
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1