【技术实现步骤摘要】
移动恶意程序相似模块提取方法
本申请涉及软件工程
,特别是涉及一种移动恶意程序相似模块提取方法。
技术介绍
不同的终端设备均具有操作系统,每个操作系统里均有不同类型的应用程序。随着移动互联网的发展,恶意应用程序数目与日俱增。以安卓系统为例,攻击者通过工具可方便的对非恶意应用程序解压缩,修改应用程序内容,如注入恶意代码,将应用程序图标修改为具有诱惑性的图片,修改完成后,重新打包并伪装成正常应用程序上传到各大应用市场。并且攻击者为了扩大攻击面,会批量向多种应用程序进行相似的恶意操作,导致多种应用程序之间具有许多相似的代码段。一旦用户运行恶意程序,根据攻击者意图,恶意代码可能会悄悄收集用户信息到服务器,直接锁定手机屏幕进行钱财勒索,恶意消耗手机资源进行挖矿等行为或者发送恶意短信进行扣费。安卓恶意软件不仅造成用户个人隐私信息的泄露,也给用户带来经济上的巨大损失,减缓安卓恶意软件对用户的攻击迫在眉睫。
技术实现思路
为了解决上述问题,本申请提供一种移动恶意程序相似模块提取方法,增加恶意应用程序同源性判断的准确性,以此来提高计算和分类的速度,极大地减少分类时间。本申请采用的一种技术方案是提供一种移动恶意程序相似模块提取方法,该方法包括:获取第一应用程序和第二应用程序;将第一应用程序去除非关键函数,以得到第一关键函数调用图,以及将第二应用程序去除非关键函数,以得到第二关键函数调用图;计算第一关键函数调用图和第二关键函数调用图的相似度;若相似度大于设定阈值,则确定第一应用程序和第二应用程序为同类型恶 ...
【技术保护点】
1.一种移动恶意程序相似模块提取方法,其特征在于,所述方法包括:/n获取第一应用程序和第二应用程序;/n将所述第一应用程序去除非关键函数,以得到第一关键函数调用图,以及将所述第二应用程序去除非关键函数,以得到第二关键函数调用图;/n计算所述第一关键函数调用图和所述第二关键函数调用图的相似度;/n若所述相似度大于设定阈值,则确定所述第一应用程序和所述第二应用程序为同类型恶意应用程序。/n
【技术特征摘要】
1.一种移动恶意程序相似模块提取方法,其特征在于,所述方法包括:
获取第一应用程序和第二应用程序;
将所述第一应用程序去除非关键函数,以得到第一关键函数调用图,以及将所述第二应用程序去除非关键函数,以得到第二关键函数调用图;
计算所述第一关键函数调用图和所述第二关键函数调用图的相似度;
若所述相似度大于设定阈值,则确定所述第一应用程序和所述第二应用程序为同类型恶意应用程序。
2.根据权利要求1所述的方法,其特征在于,
所述将所述第一应用程序去除非关键函数,以得到第一关键函数调用图,以及将所述第二应用程序去除非关键函数,以得到第二关键函数调用图之前,还包括:
将所述第一应用程序进行反编译,以得到反编译后的第一代码,以及将所述第二应用程序进行反编译,以得到反编译后的第二代码;
获取所述第一代码中的所有应用程序接口,以得到第一函数调用图,以及获取所述第二代码中的所有应用程序接口,以得到第二函数调用图。
3.根据权利要求2所述的方法,其特征在于,
所述获取所述第一代码中的所有应用程序接口,以得到第一函数调用图,以及获取所述第二代码中的所有应用程序接口,以得到第二函数调用图之前,包括:
对所述第一代码进行符号执行,移除所述第一代码中的第一无效代码;
对所述第二代码进行符号执行,移除所述第二代码中的第二无效代码。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
对所述第一函数调用图中的函数设置标志值;
对所述第二函数调用图中的函数设置标志值。
5.根据权利要求3所述的方法,其特征在于,
所述将所述第一应用程序去除非关键函数,以得到第一关键函数调用图,以及将所述第二应用程序去除非关键函数,以得到第二关键函数调用图,包括:
根据所述第一函数调用图中的函数标志值,判断所述第一函数调用图中的函数是否为关键函数,以及根据所述第二函数调用图中的函数标志值,判断所述第二函数调用图中的函数是否为关键函数;
若是,则去除所述第一函数调用图中的所有非关键函数,以得到第一关键函数,以及去除所述第二函数调用图中的所有非关键函数,以得到第二关键函数;
将所述第一关键函数和第二关键函数进行哈希处理,以分别得到所述第一关键函数调用图和所述第二关键函数调用图。
6.根据权利要求1所述的方法,其特征在于,
所述计算所述第一关键函数调用图和所述第二关键函数调用图的相似...
【专利技术属性】
技术研发人员:李正强,陈会,姜青山,
申请(专利权)人:中国科学院深圳先进技术研究院,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。