一种基于结构相似性的Android公用库检测方法
2021-05-18慕志颖李智虎李晓宇
西北工业大学学报 2021年2期
慕志颖, 李智虎, 李晓宇
(1.西北工业大学 网络安全学院, 陕西 西安 710072; 2.中国电力科学研究院有限公司, 北京 100192)
近年来,移动应用需求增长迅速,移动操作系统市场获得了快速增长。Android的市场份额日渐提高,已占据移动操作系统过半市场份额[1]。但Android平台的应用安全问题也越来越严重,用户隐私窃取、设备吸费等安全事件层出不穷,恶意应用程序泛滥。
为达到运行时用户无感知的目的,大部分Android恶意应用程序通过重打包方式(即将恶意代码加入反编译的正常应用程序后重新组装并签名)实现恶意功能隐藏。普通用户下载并安装该类“正常”应用后可能会在完全不知情的情况下泄漏隐私信息或遭受经济损失。因此,Android应用程序重打包检测已成为Android应用安全领域的一个研究热点[2-3]。
基于多种目的(提高开发效率、提供广告等),大量Android应用会在开发过程中使用公用代码库。绝大部分重打包检测方法[4-5]在检测前尝试排除公用代码,降低这部分代码对检测结果的影响。但在当前应用程序不断涌现、公用代码库总量不断提高的背景下,现有公用库检测方法的效率已无法满足检测的需求。
针对现有方法的不足,本文提出一种基于结构相似性的公用代码库检测方法,结合粗粒度的应用程序安装包结构分析与细粒度的代码特征比较,对应用程序安装包进行检测,快速分析并定位应用中使用的公用代码库,降低对后续重打包检测过程中的干扰。
1 相关工作
现有Android应用重打包检测方法的基本原理是将反编译后的应用安装包模块解耦,分析并提取部分模块进行下一步检测。……
登录APP查看全文
