【技术实现步骤摘要】
一种基于描述熵的大数据移动软件相似性智能检测方法
本专利技术涉及软件相似性检测的研究领域,特别涉及一种基于描述熵的大数据移动软件相似性智能检测方法。
技术介绍
随着互联网与智能手机的迅猛发展,移动互联网软件快速普及,尤其以移动为操作系统的应用软件尤为突出,每年发行的移动互联网软件数量庞大。然而移动互联网软件由于其开源性和流行性,安全问题也日益凸显,各个移动应用安全平台每天截获的恶意软件数以万计。恶意移动互联网软件会令手机中毒,账号信息被窃取,甚至恶意扣费、越权获取用户隐私等。面对严峻的移动应用安全事件,和海量的恶意软件,研究如何提高恶意软件检测效率成为一个值得探究的问题。目前多数恶意攻击者利用流行的移动应用软件,通过修改一部分源代码,注入恶意代码,添加混淆,再重新将APP发行出去,导致很多用户会基于对原生应用的信赖与支持,误下载安装了盗版的APP。对APP进行相似性检测是移动应用安全工程的一个突破口。
技术实现思路
本专利技术的主要目的在于克服现有技术的缺点与不足,提供一种基于描述熵分布的移动软件相似性检测方法。本专利技术的目的通过以下的技术方案实现:一种基于描述熵的 ...
【技术保护点】
1.一种基于描述熵的大数据移动软件相似性智能检测方法,其特征在于,包括以下步骤:S1、获取移动软件路径,按照路径读取移动软件;S2、对每个移动软件进行初步逆向工程反编译,获取每个移动软件的函数特征;S3、通过函数特征中的描述熵,统计每个移动软件描述熵的分布;S4、将每个移动软件描述熵进一步整合,通过整合后的移动软件描述熵分布情况,将移动软件两两之间的描述熵分布情况进行比较,计算相似性分数,得到两两移动软件之间的相似性分数;S5、输出所有移动软件的相似性分数,得到移动软件相似性结果。
【技术特征摘要】
1.一种基于描述熵的大数据移动软件相似性智能检测方法,其特征在于,包括以下步骤:S1、获取移动软件路径,按照路径读取移动软件;S2、对每个移动软件进行初步逆向工程反编译,获取每个移动软件的函数特征;S3、通过函数特征中的描述熵,统计每个移动软件描述熵的分布;S4、将每个移动软件描述熵进一步整合,通过整合后的移动软件描述熵分布情况,将移动软件两两之间的描述熵分布情况进行比较,计算相似性分数,得到两两移动软件之间的相似性分数;S5、输出所有移动软件的相似性分数,得到移动软件相似性结果。2.根据权利要求1所述的一种基于描述熵的大数据移动软件相似性智能检测方法,其特征在于,所述函数特征包括:哈希值、函数压缩编码、描述熵。3.根据权利要求1所述的一种基于描述熵的大数据移动软件相似性智能检测方法,其特征在于,步骤S2中,所述初步逆向工程反编译具体为:使用反编译工具获取移动软件源代码,通过源代码获取移动软件的函数压缩编码,根据移动软件的函数压缩编码计算出一个浮点数,表示该函数或类的信息量,即描述熵,计算如下:其中,设函数压缩编码共有n个子串,substri为函数压缩编码的第i个子串,p(substri)为第i个子串的出现概率;将移动软件的函数压缩编码、描述熵、哈希值存放在对应的文本文档中。4.根据权利要求3所述的一种基于描述熵的大数据移动软件相似性智能检测方法,其特征在于,所述函数或类,一个函数或类对应一个函数压缩编码、一个描述熵、一个哈希值;一个移动软件对应一组函数压缩编码、一组描述熵、一组对应函数的哈希值。5.根据权利要求3所述的一种基于描述熵的大数据移动软件相似性智能检测方法,其特征在于,所述反编译工具为Androguard。6.根据权利要求1所述的一种基于描述熵的大数据移动软件相似性智能检测方法,其特征在于,所述步骤S3具体为:从步骤S2中的移动软件对应的文本文档中提取描述熵集合,Hd={hd1,hd2,hd3,…,hdn};其描述熵对应个数的集合:N={n1,n2,n3,…,nn};其中,hd1至hdn为移动软件的第1个至第n个互不相等的描述熵值;n1至nn为对应第1个至第n个互不相等描述熵值对应个数。7.根据权利要求6所述的一种基于描述熵的大数据移动软件相似性智能检测方法,其特征在于,所述步骤S4具体为:获取所有的移动软件描述熵集合,然后对所有的移动软件描述熵进行两两整合,获取两两移动软件描述熵的并集;移动软件A和移动软件B的...
【专利技术属性】
技术研发人员:官全龙,罗伟其,刘楚莹,张焕明,崔林,李哲夫,李荣君,
申请(专利权)人:暨南大学,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。