APP下载

基于模式切换的ARM汇编代码混淆算法

2021-09-26乐德广龚声蓉

计算机工程与应用 2021年18期
关键词:指令程序

乐德广,赵 杰,龚声蓉

1.常熟理工学院 计算机科学与工程学院,江苏 常熟215500

2.苏州同程网络科技股份有限公司,江苏 苏州215123

ARM架构的处理器以其高速度、低功耗等许多优异的特性而在智能手机中得到非常广泛的应用。目前大部分的安卓智能手机都采用ARM处理器。与此同时,ARM应用程序的数量每年呈现指数式的增长。2019年,全球手机APP下载量高达2040亿次[1],在休闲、娱乐、社交、办公、投资、购物、生活和医疗等方面都有手机APP的身影,它们不仅影响着人们的日常生活,而且推动着经济发展。

在各类ARM应用呈井喷式增长,为用户带来便利和促进经济增长的同时,针对ARM架构的程序攻击日益突出,如ARM指令形式化变换逆向工程、静态分析和动态调试等[2],带来了巨大的隐私信息泄露的隐患,也造成各种恶意软件和盗版应用泛滥。因此,如何保护基于ARM处理器的应用程序,成为软件安全研究的重点。

代码混淆是一种保留语义的程序变换技术,其目的是使程序逻辑变得难以理解,增加逆向工程的难度,从而有效保护软件[3]。文献[4]在分析安卓软件遭受恶意攻击的基础上,提出一种基于Java的安卓应用代码混淆技术,旨在提高安卓应用代码的隐蔽性,进而使安卓应用得到更有效的保护。但是该技术工作在Java层,很容易被逆向反编译。文献[5]通过研究市场上流行的软件混淆技术,开发了一种主要针对Smali代码的混淆算法,研究其控制流混淆,变量混淆和虚假代码的注入,通过分析反编译工具的弱点,其混淆之后的代码可以免受反编译工具的静态分析。……

登录APP查看全文

猜你喜欢

指令程序
听我指令:大催眠术
试论我国未决羁押程序的立法完善
ARINC661显控指令快速验证方法
LED照明产品欧盟ErP指令要求解读
失能的信仰——走向衰亡的民事诉讼程序
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序
杀毒软件中指令虚拟机的脆弱性分析
创卫暗访程序有待改进
一种基于滑窗的余度指令判别算法