Android恶意应用家族分类方法、装置与电子设备制造方法及图纸

技术编号:21247536 阅读:19 留言:0更新日期:2019-06-01 07:42
本发明专利技术实施例提供一种Android恶意应用家族分类方法、装置与电子设备,其中所述方法包括:对Android恶意应用的APK文件进行预处理,获取所述APK文件对应的smali文件;基于所述smali文件,通过统计不同包含敏感元素的方法块,并基于Opcode的语义信息,将Opcode用形式化的操作码统一表示,生成敏感操作码序列;基于所述敏感操作码序列,生成文本特征向量,并基于所述文本特征向量,对所述Android恶意应用进行分类。本发明专利技术实施例能够更准确的刻画恶意应用的行为,从而更有效的提高对恶意应用的分类精度。

Android Malicious Applications Family Classification, Devices and Electronic Devices

The embodiment of the present invention provides a family classification method, device and electronic device for Android malicious applications, which includes: pretreatment of APK files of Android malicious applications to obtain SmalI files corresponding to the APK files; based on the SmalI files, by counting different method blocks containing sensitive elements, and formalizing Opcode based on the semantic information of Opcode. The operation codes are uniformly represented to generate a sequence of sensitive operation codes; the text feature vectors are generated based on the sequence of sensitive operation codes, and the malicious Android applications are classified based on the text feature vectors. The embodiment of the invention can more accurately depict the behavior of malicious applications, thereby effectively improving the classification accuracy of malicious applications.

【技术实现步骤摘要】
Android恶意应用家族分类方法、装置与电子设备
本专利技术实施例涉及数据信息安全
,更具体地,涉及一种Android恶意应用家族分类方法、装置与电子设备。
技术介绍
移动互联网的发展和智能手机的大范围使用,使得恶意代码对智能手机的系统安全及信息安全的威胁日益增加。因此,对恶意代码的检测与识别对保障智能手机的系统安全及信息安全具有重要意义,有利于对恶意应用的有效识别与拦截,保障用户数据安全。目前,针对恶意代码和恶意应用的检测与识别受到越来越多的重视,其中在一种android恶意代码检测方法中,首先对dex文件格式解析,识别dex文件中的结构体,扫描各结构体中的类和函数,记录函数对应OpCode代码段内容;再对得到的OpCode代码段内容进行反汇编,获取有API调用或数据赋值行为的OpCode代码段的OP段数据及index段对应数据;最后计算OP段数据的特征码,和/或OP段数据及index段对应数据的特征码,将计算得到的特征码与恶意代码段特征库中的特征码匹配,若特征码匹配成功,且特征类型一致,则输出恶意代码名称。在上述检测方法中,需要获取有API调用或数据赋值行为的OpCode代码段的OP段数据及index段所对应的数据,这种方式很容易通过简单修改这些字段的数值而将检测方法绕过。更重要的是,单单获取有API调用和数据赋值的行为不能准确地刻画恶意应用的行为,在多分类的任务中出现较高的误报,且因为只使用简单的匹配算法作为后续的决策算法,容易因为过拟合导致分类精度的降低。
技术实现思路
为了克服上述问题或者至少部分地解决上述问题,本专利技术实施例提供一种Android恶意应用家族分类方法、装置与电子设备,用以更准确的刻画恶意应用的行为,从而更有效的提高对恶意应用的分类精度。第一方面,本专利技术实施例提供一种Android恶意应用家族分类方法,包括:对Android恶意应用的APK文件进行预处理,获取所述APK文件对应的smali文件;基于所述smali文件,通过统计不同包含敏感元素的方法块,并基于Opcode的语义信息,将Opcode用形式化的操作码统一表示,生成敏感操作码序列;基于所述敏感操作码序列,生成文本特征向量,并基于所述文本特征向量,对所述Android恶意应用进行分类。第二方面,本专利技术实施例提供一种Android恶意应用家族分类装置,包括:预处理模块,用于对Android恶意应用的APK文件进行预处理,获取所述APK文件对应的smali文件;分析计算模块,用于基于所述smali文件,通过统计不同包含敏感元素的方法块,并基于Opcode的语义信息,将Opcode用形式化的操作码统一表示,生成敏感操作码序列;分类输出模块,用于基于所述敏感操作码序列,生成文本特征向量,并基于所述文本特征向量,对所述Android恶意应用进行分类。第三方面,本专利技术实施例提供一种电子设备,包括:至少一个存储器、至少一个处理器、通信接口和总线;所述存储器、所述处理器和所述通信接口通过所述总线完成相互间的通信,所述通信接口用于所述电子设备与Android恶意应用服务器设备之间的信息传输;所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上第一方面所述的Android恶意应用家族分类方法。第四方面,本专利技术实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如上第一方面所述的Android恶意应用家族分类方法。本专利技术实施例提供的Android恶意应用家族分类方法、装置与电子设备,通过将敏感操作码生成语义相关的向量,基于更多的敏感元素构建分类特征,能够更全面准确地刻画Android恶意应用的行为特征。同时,将Android恶意应用家族分类的问题转换成文本语义分析的问题,能够有效提高系统的泛化能力,从而更有效的提高对恶意应用的分类精度。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术一实施例提供的Android恶意应用家族分类方法的流程示意图;图2为根据本专利技术实施例提供的Android恶意应用家族分类方法中Opcode与操作码对应关系示意图;图3为根据本专利技术实施例提供的Android恶意应用家族分类方法中生成的敏感操作码序列示例图;图4为本专利技术另一实施例提供的Android恶意应用家族分类方法的流程示意图;图5为本专利技术实施例提供的Android恶意应用家族分类装置的结构示意图;图6为本专利技术实施例提供的电子设备的实体结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术实施例的一部分实施例,而不是全部的实施例。基于本专利技术实施例中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术实施例保护的范围。本专利技术实施例针对现有技术对恶意应用行为刻画不准确以及对恶意应用分类精度不高的问题,通过将敏感操作码生成语义相关的向量,基于更多的敏感元素构建分类特征,能够更全面准确地刻画Android恶意应用的行为特征。同时,将Android恶意应用家族分类的问题转换成文本语义分析的问题,能够有效提高系统的泛化能力,从而更有效的提高对恶意应用的分类精度。以下将具体通过多个实施例对本专利技术实施例进行展开说明和介绍。图1为本专利技术一实施例提供的Android恶意应用家族分类方法的流程示意图,如图1所示,该方法包括:S101,对Android恶意应用的APK文件进行预处理,获取APK文件对应的smali文件。本专利技术实施例在对Android恶意应用进行分类时,首先针对该Android恶意应用的APK文件进行分析,以从中提取该Android恶意应用的相关特征信息,再根据这些相关特征信息来对Android恶意应用进行准确分类。具体而言,先会获取待分类的Android恶意应用的APK文件,之后对该APK文件进行给定流程的预处理,生成smali文件的集合。可以理解的是,该预处理过程可以采用现有的处理方法,也可以采用改进的处理算法。其中可选的,对Android恶意应用的APK文件进行预处理,获取APK文件对应的smali文件的步骤具体包括:将APK文件进行解压缩,提取dex文件,并利用反编译工具,将dex文件反编译成smali文件的集合。S102,基于smali文件,通过统计不同包含敏感元素的方法块,并基于Opcode的语义信息,将Opcode用形式化的操作码统一表示,生成敏感操作码序列。在根据上述步骤得到APK文件对应的smali文件的基础上,可以统计这些smali文件中各不同包含敏感元素的方法块,同时可以提取smali文件中的Opcode和敏感元素。其中,操作码(OperationCode)表示,描述机器语言指令中,指定要执行某种操作的机器码。本专利技术实施例中指的是AndroidDalvi本文档来自技高网...

【技术保护点】
1.一种Android恶意应用家族分类方法,其特征在于,包括:对Android恶意应用的APK文件进行预处理,获取所述APK文件对应的smali文件;基于所述smali文件,通过统计不同包含敏感元素的方法块,并基于Opcode的语义信息,将Opcode用形式化的操作码统一表示,生成敏感操作码序列;基于所述敏感操作码序列,生成文本特征向量,并基于所述文本特征向量,对所述Android恶意应用进行分类。

【技术特征摘要】
1.一种Android恶意应用家族分类方法,其特征在于,包括:对Android恶意应用的APK文件进行预处理,获取所述APK文件对应的smali文件;基于所述smali文件,通过统计不同包含敏感元素的方法块,并基于Opcode的语义信息,将Opcode用形式化的操作码统一表示,生成敏感操作码序列;基于所述敏感操作码序列,生成文本特征向量,并基于所述文本特征向量,对所述Android恶意应用进行分类。2.根据权利要求1所述的方法,其特征在于,在所述基于所述文本特征向量,对所述Android恶意应用进行分类的步骤之前,还包括:通过对比多种给定算法的分类结果,选取分类效果最好的分类算法,并对一定数量的Android恶意应用样本,执行所述预处理至所述生成文本特征向量的处理步骤,获取样本文本特征向量;利用所述样本文本特征向量,对所述分类效果最好的分类算法进行训练和测试,获取训练好的分类模型。3.根据权利要求1或2所述的方法,其特征在于,所述对Android恶意应用的APK文件进行预处理,获取所述APK文件对应的smali文件的步骤具体包括:将所述APK文件进行解压缩,提取dex文件,并利用反编译工具,将所述dex文件反编译成smali文件的集合。4.根据权利要求1或2所述的方法,其特征在于,所述基于所述smali文件,通过统计不同包含敏感元素的方法块,并基于Opcode的语义信息,将Opcode用形式化的操作码统一表示,生成敏感操作码序列的步骤具体包括:统计所述smali文件中的所述包含敏感元素的方法块,并提取所述包含敏感元素的方法块中的Opcode和敏感元素;基于Opcode的语义信息,将所有Opcode用形式化的操作码表示;基于所述敏感元素和所述操作码表示,生成所述敏感操作码序列。5.根据权利要求4所述的方法,其特征在于,所述统计所述smali文件中的所述包含...

【专利技术属性】
技术研发人员:刘超喻民李松姜建国黄伟庆朱大立
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:北京,11

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

1