应用程序安装包的特征信息提取方法、装置与客户端设备制造方法及图纸

技术编号:7996347 阅读:413 留言:0更新日期:2012-11-22 05:10
本发明专利技术公开了一种应用程序安装包的特征信息提取方法、装置与客户端设备,属于安全技术领域。所述方法包括:对应用程序安装包中不大于阈值的数据进行解压缩;对解压缩得到的解压缩数据进行分析,获取包括所述应用程序安装包的特征信息的关键数据;重复上述两个步骤,直到对所述应用程序安装包解压缩完毕,获取到所述应用程序安装包中的所有关键数据;对所述所有关键数据进行解析从所述所有关键数据中提取所述应用程序安装包的特征信息。通过采用本发明专利技术的技术方案,能够有效地减少内存占用空间,缩短提取应用程序安装包的特征信息的时间,提高从应用程序安装包中获取特征信息的效率。

【技术实现步骤摘要】

本专利技术涉及安全
,特别涉及一种应用程序安装包的特征信息提取方法、装置与客户端设备
技术介绍
应用程序安装包通常为ー个压缩文件,该压缩文件中通常可以包括资源文件、配置文件以及可执行文件等等。例如,Android系统的应用程序安装包可以称为apk文件,例如该压缩格式的apk文件中可以包括可执行文件dex文件以及其他文件等等。现有技术中,为了检测应用程序的安装包是否为流氓软件或者病毒,需要对应用程序的安装包进行解压缩,获取到完整的可执行文件。然后在内存中对完整可执行文件进行解析,提取出特征信息;并将提取出的特征信息与预设的病毒特征库中的病毒样本所包 含的特征信息进行比对,从而检测出该应用程序安装包是否为流氓程序或者病毒文件。例如对于Android系统的apk文件,可以对apk文件解压缩,从中获取dex文件,再对dex文件进行解析,从中提取类名、方法名以及常量字符串等特征信息,当提取出的特征信息与预设的病毒特征库中的某病毒样本所包含的特征信息相同时,该apk文件为流氓程序或病毒文件。在实现本专利技术的过程中,专利技术人发现现有技术至少存在以下问题现有技术中,当需要对应用程序安装包进行检测时,需要对应用程序安装包解压缩后得到完整的可执行文件,然后在内存中对得到的完整的可执行文件进行解析提取特征信息,当可执行文件较大,完整的可执行文件放在内存中,会占用大量的内存,导致内存不足,延长提取特征信息的时间,严重影响从应用程序安装包中获取特征信息的效率。
技术实现思路
为了解决现有技术的问题,本专利技术实施例提供了一种应用程序安装包的特征信息提取方法、装置与客户端设备。所述技术方案如下一方面,提供了一种应用程序安装包的特征信息提取方法,所述方法包括对应用程序安装包中不大于一阈值的数据进行解压缩;对解压缩得到的解压缩数据进行分析,获取包括所述应用程序安装包的特征信息的关键数据;重复上述两个步骤,直到对所述应用程序安装包解压缩完毕,获取到所述应用程序安装包中的所有关键数据;对所述所有关键数据进行解析,从所述所有关键数据中提取所述应用程序安装包的特征信息。可选地,如上所述方法中,阈值为一预设值或根据所述应用程序安装包的大小进行确定。可选地,如上所述方法中,所述应用程序安装包的特征信息包括类名、方法名和常量字符串中的至少ー种。另ー方面,提供了一种应用程序安装包的特征信息提取装置,所述装置包括解压缩模块,用于对应用程序安装包中不大于一阈值的数据进行解压缩;获取模块,用于对所述解压缩模块解压缩得到的解压缩数据进行分析,获取包括所述应用程序安装包的特征信息的关键数据;控制模块,用于控制所述解压缩模块和所述获取模块重复执行相应操作,直到对所述应用程序安装包解压缩完毕,所述获取模块获取到所述应用程序安装包中的所有关键数据;提取模块,用于对所述所有关键数据进行解析,从所述获取模块获取到的所述所有关键数据中提取所述应用程序安装包的特征信息。可选地,如上所述装置中,还包括阈值确定模块所述阈值确定模块,用于预设所述阈值或者根据所述应用程序安装包的大小确定 所述阈值。可选地,如上所述装置中,所述应用程序安装包的特征信息包括类名、方法名和常量字符串中的至少ー种。再一方面,提供了ー种apk文件中特征信息提取方法,其采用如上任一所述的方法。又一方面,提供了一种客户端设备,在所述客户端设备上包括如上任一所述的应用程序安装包的特征信息提取装置。可选地,如上所述的客户端设备中,所述客户端设备包括移动终端。可选地,如上所述的客户端设备中,所述客户端设备包括安装安卓系统的移动终端。本专利技术实施例的应用程序安装包的特征信息提取方法、装置与客户端设备,通过对应用程序安装包中不大于一阈值的数据进行解压缩;并对解压缩得到的解压缩数据进行分析,获取包括特征信息的关键数据;重复上述两个步骤,直到对所述应用程序安装包解压缩完毕,获取到应用程序安装包中的所有关键数据,并对所有关键数据进行解析,从所有关键数据中提取应用程序安装包的特征信息。采用本专利技术实施例的技术方案,能够在内存中分别对大小等于阈值的数据进行解压缩,并在解压缩之后对解压缩数据进行分析获取其中包括特征信息的关键数据,解压过程中不会占用较大的内存,而且由于本专利技术实施例的技术方案中,在每次解压缩之后,仅获取解压缩数据中的关键数据,因此本专利技术技术方案中,仅需要从获取的所有关键数据中提取应用程序安装包的特征信息,与现有技术中的从整个可执行文件中获取应用程序安装包的特征信息相比,本专利技术实施例的技术方案在实施吋,能够有效地減少内存占用空间,缩短提取应用程序安装包的特征信息的时间,提高从应用程序安装包中获取特征信息的效率。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图I为本专利技术实施例一提供的应用程序安装包的特征信息提取方法的流程图;图2为本专利技术实施例ニ提供的应用程序安装包的特征信息提取方法的流程图3为本专利技术实施例三提供的应用程序安装包的特征信息提取装置的结构示意图;图4为本专利技术实施例四提供的应用程序安装包的特征信息提取装置;图5为本专利技术实施例五提供的客户端设备的结构示意图。具体实施例方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进ー步地详细描述。实施例一图I为本专利技术实施例一提供的应用程序安装包的特征信息提取方法的流程图。本实施例的应用程序安装包的特征信息提取方法的执行主体为ー应用程序安装包的特征信 息提取装置,该应用程序安装包的特征信息提取装置具体可以设置在ー客户端设备上。如图I所示,本实施例的应用程序安装包的特征信息提取方法,具体可以包括如下步骤100、对应用程序安装包中不大于一阈值的数据进行解压缩;101、对解压缩得到的解压缩数据进行分析,获取包括应用程序安装包的特征信息的关键数据;例如,其中的关键数据即为包括应用程序安装包的特征信息的数据。102、重复上述100和101两个步骤,直到对应用程序安装包解压缩完毕,获取到应用程序安装包中的所有关键数据;本实施例中的关键数据为应用程序安装包的可执行文件中包括特征信息的数据。需要说明的是,可执行文件中除了包括该关键数据,还包括有其他数据,这些其他数据中不包括应用程序安装包的特征信息。因此解压缩完毕获取的所有关键数据的大小之和小于应用程序安装包中的可执行文件的大小。103、对所有关键数据进行解析,从所有关键数据中提取应用程序安装包的特征信O本实施例的应用程序安装包可以为各种系统下的应用程序安装包,例如可以为windows系统的应用程序安装包,还可以为Android系统的应用程序安装包。例如具体可以为Android系统的应用程序安装包可以称为apk文件。当应用程序安装包为apk文件,对应的可执行文件为dex文件,此时,本实施例中所有关键数据的大小之和小于dex文件的大小。还可以为ios系统下的应用程序安装包。例如本实施例中阈值可以为ー预设值,或还可以为根据应用程序安装包的大小进行确定,例如为了减少实施例时占用的内存空间,可以设置阈值为很小的几十K。本实施例本文档来自技高网...

【技术保护点】
一种应用程序安装包的特征信息提取方法,其特征在于,所述方法包括:对应用程序安装包中不大于一阈值的数据进行解压缩;对解压缩得到的解压缩数据进行分析,获取包括所述应用程序安装包的特征信息的关键数据;重复上述两个步骤,直到对所述应用程序安装包解压缩完毕,获取到所述应用程序安装包中的所有关键数据,对所述所有关键数据进行解析,从所述所有关键数据中提取所述应用程序安装包的特征信息。

【技术特征摘要】

【专利技术属性】
技术研发人员:李伟韩景维
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1