Design and Performance Evaluation of Binary Code Packing for Protecting Embedded Software against Reverse Engineering

Min-Jae Kim, Jin-Young Lee, Hyeyoung Chang, Seong-je Cho, Yongsu Park, Minkyu Park, P. Wilsey
{"title":"Design and Performance Evaluation of Binary Code Packing for Protecting Embedded Software against Reverse Engineering","authors":"Min-Jae Kim, Jin-Young Lee, Hyeyoung Chang, Seong-je Cho, Yongsu Park, Minkyu Park, P. Wilsey","doi":"10.1109/ISORC.2010.23","DOIUrl":null,"url":null,"abstract":"Packing (or executable compression) is considered as one of the most effective anti-reverse engineering methods in the Microsoft Windows environment. Even though many reversing attacks are widely conducted in the Linux-based embedded system there is no widely used secure binary code packing tools for Linux. This paper presents two secure packing methods that use AES encryption and the UPX packer to protect the intellectual property (IP) of software from reverse engineering attacks on Linux-based embedded system. We call these methods: secure UPX and AES-encryption packing. Since the original UPX system is designed not for software protection but for code compression, we present two anti-debugging methods in the unpacking module of the secure UPX to detect or abort reverse engineering attacks. Furthermore, since embedded systems are highly resource constrained, minimizing unpacking overhead is important. Therefore, we analyze the performance of the two packing methods from the perspective of: (i) code size, (ii) execution time, and (iii) power consumption. Our analysis results show that the Secure UPX performs better than AES-encryption packing in terms of the code size, execution time, and power consumption.","PeriodicalId":142767,"journal":{"name":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2010-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"27","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISORC.2010.23","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 27

Abstract

Packing (or executable compression) is considered as one of the most effective anti-reverse engineering methods in the Microsoft Windows environment. Even though many reversing attacks are widely conducted in the Linux-based embedded system there is no widely used secure binary code packing tools for Linux. This paper presents two secure packing methods that use AES encryption and the UPX packer to protect the intellectual property (IP) of software from reverse engineering attacks on Linux-based embedded system. We call these methods: secure UPX and AES-encryption packing. Since the original UPX system is designed not for software protection but for code compression, we present two anti-debugging methods in the unpacking module of the secure UPX to detect or abort reverse engineering attacks. Furthermore, since embedded systems are highly resource constrained, minimizing unpacking overhead is important. Therefore, we analyze the performance of the two packing methods from the perspective of: (i) code size, (ii) execution time, and (iii) power consumption. Our analysis results show that the Secure UPX performs better than AES-encryption packing in terms of the code size, execution time, and power consumption.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
保护嵌入式软件免遭逆向工程的二进制码封装设计与性能评价
打包(或可执行压缩)被认为是Microsoft Windows环境中最有效的反逆向工程方法之一。尽管在基于Linux的嵌入式系统中广泛进行了许多反向攻击,但目前还没有广泛使用的用于Linux的安全二进制代码打包工具。针对基于linux的嵌入式系统,提出了两种采用AES加密和UPX封装的安全封装方法,以保护软件的知识产权免受逆向工程攻击。我们称这些方法为:安全UPX和aes加密封装。由于原始UPX系统不是为软件保护而设计的,而是为代码压缩而设计的,因此我们在安全UPX的解包模块中提出了两种反调试方法来检测或中止逆向工程攻击。此外,由于嵌入式系统是高度资源约束的,因此最小化拆包开销非常重要。因此,我们从(i)代码大小、(ii)执行时间和(iii)功耗的角度来分析两种打包方法的性能。我们的分析结果表明,在代码大小、执行时间和功耗方面,Secure UPX的性能优于aes加密封装。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
A MDE-Based Optimisation Process for Real-Time Systems Architectural and Behavioral Modeling with AADL for Fault Tolerant Embedded Systems VIS Analyzer: A Visual Assistant for VIS Verification and Analysis Design and Performance Evaluation of Binary Code Packing for Protecting Embedded Software against Reverse Engineering Implementing and Evaluating the AHS Organic Middleware - A First Approach
×
引用
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