基于Dalvik 虚拟机的Android Application 脱壳技术
2017-04-22王李松方勇
现代计算机 2017年7期
王李松,方勇
(四川大学电子信息学院,成都 610065)
基于Dalvik 虚拟机的Android Application 脱壳技术
王李松,方勇
(四川大学电子信息学院,成都 610065)
随着移动应用的飞速发展,移动端频频爆发的恶意代码日益严重地困扰着每一个用户的隐私和财产安全。同时大量的恶意程序采用加壳保护,躲避杀毒引擎的扫描。无论是分析木马病毒,还是寻找正常程序的漏洞,首先都要从加壳的程序中得到原始的可执行文件。基于对Android平台加固技术以及Dalvik虚拟机的机制进行研究,提出并实现一种通用的脱壳方案DexUnpack。
Dalvik;Android;加壳;脱壳
0 引言
目前Android已经成为最流行的移动操作系统,巨大的市场占有率带来了极大的利润,大量的攻击者也将目光投到了Android平台。阿里移动安全2016年第二季度的报告显示,该季度感染恶意代码的Android设备总量高达2877万,比上一季度增长96.2%。与此同时,原本用来防止应用程序被逆向分析、破解修改、重打包的加壳技术也被恶意程序利用。攻击者利用加壳技术隐藏木马病毒程序的真正代码来躲避安全软件杀毒引擎的扫描与移动安全研究人员的分析。Android平台常用的加壳技术主要包括:虚拟机检测,代码动态加载,代码动态修改,反调试。无论是安全人员分析应用还是各种杀毒引擎扫描查杀恶意程序,首先都必须获得原始的可执行文件(Dex)。
由于脱壳技术对于Android应用安全的重要作用,百度移动安全的研究人员提出并实现了基于Xp osed框架的脱壳工具ZjDroid,安全研究员瘦蛟舞基于Cydia Substrate框架实现了Dex Memory Dump Tools。……
登录APP查看全文
