System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种结合动静态分析的Android恶意软件检测方法技术_技高网

一种结合动静态分析的Android恶意软件检测方法技术

技术编号:40600259 阅读:4 留言:0更新日期:2024-03-12 22:04
本发明专利技术涉及恶意软件检测技术领域,具体而言,涉及一种结合动静态分析的Android恶意软件检测方法,该方法的步骤包括:对待检测Android应用程序样本集文件进行反编译,并提取函数调用关系构建函数调用图,并对其敏感API和反射API进行标记,生成标记函数调用图;通过六度分隔理论对标记函数调用图进行挖掘,得到敏感子图及反射子图,基于TF‑IDF算法分别计算求得敏感API的恶意系数以及反射API的恶意系数,通过恶意系数分别将敏感子图映射为敏感特征向量,将反射子图映射为反射特征向量,构建Android应用程序的静态恶意分类模型;将Android应用程序的静态恶意分类模型与Android应用程序的动态恶意分类模型结合,完成Android恶意软件的精准检测。

【技术实现步骤摘要】

本专利技术涉及恶意软件检测,具体而言,涉及一种结合动静态分析的android恶意软件检测方法。


技术介绍

1、随着智能手机的普及,android系统已成为最受欢迎的移动操作系统之一。近年来,随着android系统用户数量的增加,恶意软件也日益增多,恶意软件不仅会窃取用户的个人隐私数据,甚至会控制用户的手机,造成用户的经济损失。因此,基于android系统的恶意软件检测已成为一个重要的研究领域。就目前而言,现有的研究主要通过分析恶意软件的应用程序行为、流量等动态特征以及权限、api调用、操作码等静态特征,结合机器学习和深度学习模型提出各种检测方法和工具,以保护用户的手机安全。然而,恶意软件开发者也在不断地提高其恶意软件的隐蔽性,因此导致了恶意软件的代码变得难以理解和分析,从而使检测工具难以识别其真正的行为,也难以被反汇编和分析。基于此,针对上述问题,我们设计了一种结合动静态分析的android恶意软件检测方法。


技术实现思路

1、本专利技术的目的在于提供一种结合动静态分析的android恶意软件检测方法,其通过结合动态分析手段及静态分析手段,不仅能够自动化运行android应用程序提取动态特征,消除混淆和加壳技术对应用程序的影响;而且能够分析apk文件的代码提取静态特征,保证代码的高覆盖率,进一步提高了恶意应用的检测能力。

2、本专利技术的实施例通过以下技术方案实现:

3、一种结合动静态分析的android恶意软件检测方法,该方法的步骤包括:

4、对待检测android应用程序样本集文件进行反编译,并提取函数调用关系,构建函数调用图,并对函数调用图的敏感api和反射api进行标记,生成标记函数调用图;

5、通过六度分隔理论对标记函数调用图进行挖掘,得到敏感子图及反射子图,基于tf-idf算法分别计算求得敏感api的恶意系数以及反射api的恶意系数,并通过敏感api的恶意系数将敏感子图映射为敏感特征向量,通过反射api的恶意系数将反射子图映射为反射特征向量,结合敏感特征向量、反射特征向量与全连接神经网络,构建android应用程序的静态恶意分类模型;

6、将android应用程序的静态恶意分类模型与预设的android应用程序的动态恶意分类模型进行结合,以完成android恶意软件的精准检测。

7、可选的,所述对待检测android应用程序样本集文件进行反编译,具体为通过apktool模块对待检测android应用程序样本集文件进行反编译。

8、可选的,所述标记函数调用图的数学表达式如下:

9、tfcg=(v,e)

10、

11、vi=(namei,typei)

12、其中,v为函数调用图的结点,e为函数调用图的边,namei为结点vi的函数名,typei为标记,代表该函数是否属于敏感api或者反射api。

13、可选的,所述基于tf-idf算法分别计算求得敏感api的恶意系数以及反射api的恶意系数,其中,在计算敏感api的恶意系数前,还包括将所述敏感api的功能归类到不同的敏感权限中,再基于所述tf-idf算法计算求得敏感权限的恶意系数,其计算公式为:

14、

15、其中,pi为某个敏感权限,mc(pi)为恶意应用数据集中敏感权限pi对应敏感api的数量,p为恶意应用数量,c为所有应用数量,bc(pi)为良性应用数据集中权限pi对应api的数量。

16、可选的,所述基于所述tf-idf算法计算求得反射api的恶意系数,其计算公式为:

17、

18、其中,mc(ari)为恶意应用数据集中rai的数量,bc(rai)为良性应用数据集中rai的数量。

19、可选的,所述通过敏感api的恶意系数将敏感子图映射为敏感特征向量,其计算公式为:

20、

21、

22、其中,vsl为敏感权限pi对应的敏感api结点集合,vk为vsi中的各个结点,vi为敏感特征向量中第i维特征值,malcoe(pi)为敏感权限pi的恶意系数,count(vk)为结点vk对应敏感api被调用的总次数,pred(vk)为结点vk的前驱结点集合,vj为每个前驱结点,e[vj,vk].w为源结点为vj且目标结点为vk的边e的权重w,表征为调用次数。

23、可选的,所述预设的android应用程序的动态恶意分类模型,其构建过程为:

24、运行android应用程序样本集文件,并授予全部权限,监控并抓取明文请求流量以及行为日志;

25、对明文请求流量进行url解码,并提取明文请求流量中的有效载荷,将有效载荷转换为二维图像,并对二维图像进行填充;

26、基于tf-idf算法分别计算行为日志中各个行为的敏感系数,通过阈值机制对敏感行为进行识别,并统计敏感行为在行为日志中的执行次数,求得固定维度向量,将固定维度向量与二维图像进行拼接,形成特征向量;

27、结合特征向量与机器学习算法,构建android应用程序的动态恶意分类模型。

28、可选的,所述基于tf-idf算法分别计算行为日志中各个行为的敏感系数,其计算公式为:

29、

30、其中,sencoe(ai)为某个行为ai的敏感系数,fre in mal(ai)、fre in ben(ai)分别为行为ai分别在恶意应用数据集和良性应用数据集中的出现频率。

31、可选的,所述通过阈值机制对敏感行为进行识别,具体为:给定阈值θ,并设定敏感系数sencoe(ai)≥θ的行为作为敏感行为。

32、可选的,所述将有效载荷转换为二维图像,具体为:通过ascii码十六进制将有效载荷转换为二维图像。

33、本专利技术实施例的技术方案至少具有如下优点和有益效果:

34、本专利技术实施例通过结合动态分析手段及静态分析手段,不仅能够自动化运行android应用程序提取动态特征,消除混淆和加壳技术对应用程序的影响;而且能够分析apk文件的代码提取静态特征,保证代码的高覆盖率,进一步提高了恶意应用的检测能力。

本文档来自技高网...

【技术保护点】

1.一种结合动静态分析的Android恶意软件检测方法,其特征在于,该方法的步骤包括:

2.根据权利要求1所述的结合动静态分析的Android恶意软件检测方法,其特征在于,所述对待检测Android应用程序样本集文件进行反编译,具体为通过apktool模块对待检测Android应用程序样本集文件进行反编译。

3.根据权利要求1所述的结合动静态分析的Android恶意软件检测方法,其特征在于,所述标记函数调用图的数学表达式如下:

4.根据权利要求1所述的结合动静态分析的Android恶意软件检测方法,其特征在于,所述基于TF-IDF算法分别计算求得敏感API的恶意系数以及反射API的恶意系数,其中,在计算敏感API的恶意系数前,还包括将所述敏感API的功能归类到不同的敏感权限中,再基于所述TF-IDF算法计算求得敏感权限的恶意系数,其计算公式为:

5.根据权利要求4所述的结合动静态分析的Android恶意软件检测方法,其特征在于,所述基于所述TF-IDF算法计算求得反射API的恶意系数,其计算公式为:

6.根据权利要求5所述的结合动静态分析的Android恶意软件检测方法,其特征在于,所述通过敏感API的恶意系数将敏感子图映射为敏感特征向量,其计算公式为:

7.根据权利要求1-6任一项所述的结合动静态分析的Android恶意软件检测方法,其特征在于,所述预设的Android应用程序的动态恶意分类模型,其构建过程为:

8.根据权利要求7所述的结合动静态分析的Android恶意软件检测方法,其特征在于,所述基于TF-IDF算法分别计算行为日志中各个行为的敏感系数,其计算公式为:

9.根据权利要求7所述的结合动静态分析的Android恶意软件检测方法,其特征在于,所述通过阈值机制对敏感行为进行识别,具体为:给定阈值θ,并设定敏感系数sencoe(ai)≥θ的行为作为敏感行为。

10.根据权利要求7所述的结合动静态分析的Android恶意软件检测方法,其特征在于,所述将有效载荷转换为二维图像,具体为:通过ASCII码十六进制将有效载荷转换为二维图像。

...

【技术特征摘要】

1.一种结合动静态分析的android恶意软件检测方法,其特征在于,该方法的步骤包括:

2.根据权利要求1所述的结合动静态分析的android恶意软件检测方法,其特征在于,所述对待检测android应用程序样本集文件进行反编译,具体为通过apktool模块对待检测android应用程序样本集文件进行反编译。

3.根据权利要求1所述的结合动静态分析的android恶意软件检测方法,其特征在于,所述标记函数调用图的数学表达式如下:

4.根据权利要求1所述的结合动静态分析的android恶意软件检测方法,其特征在于,所述基于tf-idf算法分别计算求得敏感api的恶意系数以及反射api的恶意系数,其中,在计算敏感api的恶意系数前,还包括将所述敏感api的功能归类到不同的敏感权限中,再基于所述tf-idf算法计算求得敏感权限的恶意系数,其计算公式为:

5.根据权利要求4所述的结合动静态分析的android恶意软件检测方法,其特征在于,所述基于所述tf-idf算法计算求得反射api的恶意...

【专利技术属性】
技术研发人员:崔艳鹏胡建伟胡业晗
申请(专利权)人:成都西电网络安全研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1