应用名称相似度的确定方法、异常应用检测方法及系统与流程

文档序号:16263390发布日期:2018-12-14 21:45阅读:303来源:国知局
应用名称相似度的确定方法、异常应用检测方法及系统与流程

本发明涉及移动安全、图像处理等领域,尤其涉及一种应用名称相似度的确定方法、异常应用检测方法及系统。

背景技术

随着计算机技术和电子商务的飞速发展,信息安全成为人们越来越关注的重点。目前应用市场上的有很多仿冒正常应用的异常应用,异常应用可以通过应用名称来仿冒正常应用,以对用户产生误导。

目前,可以基于正常应用的应用名称,在大量应用中检测出仿冒正常应用的异常应用。但是,由于一部分异常应用与正常应用的应用名称不一致,所以现有技术直接利用应用名称进行检测,会遗漏一部分仿冒正常应用的异常应用。



技术实现要素:

本申请提供了一种应用名称相似度的确定方法、异常应用检测方法及系统,本申请可以提高异常应用的检测准确率。

为了实现上述目的本申请提供了以下技术特征:

一种异常应用检测系统,包括:

应用提供设备,用于向应用检测设备上传待检测应用和与所述待检测应用的应用名称对应的关键词集;

应用检测设备,用于接收所述待检测应用和与所述待检测应用的应用名称对应的关键词集,基于所述关键词集,计算全网应用库中应用与所述待检测应用针对应用名称的相似度,若全网应用库中应用满足预设条件,则确定该应用为所述待检测应用的异常应用;其中,所述预设条件包括全网应用库中应用与所述待检测应用针对应用名称的相似度大于预设相似度。

可选的,所述预设条件还包括:全网应用库中的应用不在正常应用库中。

一种异常应用检测方法,包括:

确定待检测应用的关键词集;其中,所述关键词集包括一个或多个与所述待检测应用的应用名称类似的关键词;

基于所述关键词集,计算全网应用库中应用与所述待检测应用针对应用名称的相似度;

若全网应用库中应用满足预设条件,则确定该应用为所述待检测应用的异常应用;其中,所述预设条件包括全网应用库中应用与所述待检测应用针对应用名称的相似度大于预设相似度。

可选的,所述基于所述关键词集,计算全网应用库中应用与所述待检测应用针对应用名称的相似度,包括:

采用模糊匹配算法,计算全网应用库中应用的应用名称与所述关键词集中关键词的相似度;

基于至少一个相似度,确定全网应用库中应用与所述待检测应用针对应用名称的相似度。

可选的,还包括:

确定异常应用的异常类型为应用名称异常;

获取异常应用的应用信息;

发送异常应用的应用信息和异常类型至应用提供设备。

一种异常应用检测方法,包括:

计算全网应用库中应用与待检测应用的多个针对属性的相似度;其中,所述多个针对属性的相似度包括:针对应用名称的相似度和针对应用图标的相似度;所述针对应用名称的相似度由全网应用库中应用的应用名称与关键词集中关键词的相似度确定;

将多个针对属性的相似度输入至预设异常应用模型,经预设异常应用模型计算后输出多个针对属性的相似度的综合相似度;其中,所述预设异常应用模型为对多个属性的相似度进行综合计算的模型;

若所述综合相似度大于预设相似度,且,该应用非所述待检测应用对应的正常应用,则确定该应用为所述待检测应用的异常应用。

可选的,所述多个针对属性的相似度还包括:针对包名的相似度;则在将多个针对属性的相似度输入至预设异常应用模型之前,还包括:

判断全网应用库中应用是否在正常应用库中;

若是,则基于所述针对包名的相似度,判断该应用的包名与待检测应用的包名是否完全一致;

若两者包名完全一致,则确定该应用为异常应用;

若两者包名不完全一致,则将该应用的多个属性的相似度输入至预设异常应用模型。

可选的,在将多个针对属性的相似度输入至预设异常应用模型之前,还包括:

判断全网应用库中应用与是否在正常应用库中;

若是,则确定该应用为待检测应用对应的正常应用;

若否,则将该应用针对多个属性的相似度输入至预设异常应用模型。

可选的,所述多个针对属性的相似度还包括:针对包名的相似度,则所述计算全网应用库中的应用与待检测应用的多个针对属性的相似度,包括:

采用模糊匹配算法,计算全网应用库中应用的应用名称与所述待检测应用的关键词集中关键词的相似度,基于至少一个相似度确定全网应用库中应用与待检测应用针对应用名称的第一相似度;

计算全网应用库中应用的应用图标与所述待检测应用的应用图标的第二相似度;

计算全网应用库中应用的包名与所述待检测应用的包名的第三相似度。

可选的,所述经预设异常应用模型计算后输出多个属性的相似度的综合相似度,包括:

计算针对应用名称的第一相似度与第一预设权重的第一乘积;

计算针对应用图标的第二相似度与第二预设权重的第二乘积;

计算针对包名的第三相似度与第三预设权重的第三乘积;

将所述第一乘积、所述第二乘积、所述第三乘积的和值,确定为所述综合相似度。

可选的,所述预设异常应用模型的训练过程包括:

获得若干个训练样本,训练样本包括应用与待检测应用分别针对应用名称、应用图标和包名的相似度,以及,人工标注的应用与待检测应用的综合相似度;

构建异常应用模型;

基于若干个训练样本对所述异常应用模型进行训练,获得所述第一预设权重、所述第二预设权重和所述第三预设权重。

一种应用名称相似度的确定方法,包括:

确定待检测应用的关键词集;其中,所述关键词集包括与所述待检测应用的应用名称类似的至少一个关键词;

采用模糊匹配算法,计算应用的应用名称与所述关键词集中至少一个关键词的相似度;

基于至少一个相似度,确定应用与待检测应用针对应用名称的相似度。

可选的,还包括:

若针对应用名称的相似度大于预设相似度,则确定该应用与所述待检测应用的应用名称相似。

可选的,所述基于至少一个相似度,确定应用与待检测应用针对应用名称的相似度,包括:

将所述至少一个相似度中的最大值,确定为应用与待检测应用针对应用名称的相似度;或,

在所述至少一个相似度筛选多个相似度,将多个相似度的平均值确定为应用与待检测应用针对应用名称的相似度。

一种应用检测方法,包括:

获取待检测应用对应的关键词集;

获取所述关键词集与已知应用名称的相似度;

若所述相似度超过判断阈值,确定所述待检测应用为目标应用。

可选的,所述关键词集包括一个或多个与所述待检测应用对应的关键词。通过以上技术手段,可以实现以下有益效果:

本申请中不再直接通过待检测应用的应用名称来确定与待检测应用名称类似的异常应用,而是采用与待检测应用的应用名称相近或类似的关键词集来确定与待检测应用类似的异常应用。

由于关键词集扩展了待检测应用的应用名称的范围,所以,可以在全网应用库中搜索到尽可能多与待检测应用的应用名称类似的应用,从而避免遗漏一部分异常应用。

同时,本申请中将应用名称和应用图标结合来确定待检测应用的异常应用,从而使得检测结果更加准确。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种异常应用检测系统的结构示意图;

图2为本申请实施例提供的一种异常应用检测方法的流程图;

图3为本申请实施例提供的又一种异常应用检测方法的流程图;

图4为本申请实施例提供的又一种异常应用检测方法的流程图;

图5a-5b为本申请实施例提供的异常应用检测方法中确定可疑应用集的图示;

图6为本申请实施例提供的应用检测方法的流程图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

术语解释:

关键词:与待检测应用的应用名称相近或相关的词语作为关键词,各个关键词组成关键词集。

包名(packagename):一个包名代表一个应用。在大多数应用商店中通常使用包名作为应用的唯一标识,即:包名必须唯一,不允许两个应用使用同样的包名。包名主要用于系统识别应用,几乎不会被最终用户看到。

为了便于本领域技术人员了解本申请的应用场景,首先介绍本申请提供的一种异常应用检测系统。参见图1,根据本申请的一个实施例,异常应用检测系统具体包括:应用提供设备100和应用检测设备200。

参见图2,下面介绍异常应用检测系统的执行过程。

步骤s101:应用提供设备100用于向应用检测设备200上传待检测应用和与所述待检测应用的应用名称对应的关键词集。

应用提供设备100可以向应用检测设备200上传待检测应用,以便应用检测设备200可以对待检测应用进行检测。

本申请可以在全网应用库中检测仿冒一个应用的异常应用,为了便于描述待检测的应用称为待检测应用。即本申请可以在全网应用库中确定仿冒待检测应用的异常应用。

可以理解的是,一些异常应用会可以通过应用名称来仿冒待检测应用。以“中国银行”为例,异常应用也可能采用“中国银行”来命名应用。此外还有一些异常应用,其应用名称会使用与待检测应用相关或相近的词语来命名。继续以“中国银行”为例,异常应用可以采用“中国银行正版”、“中国银行app”等词语来命名。

为了可以识别出采用与待检测应用的应用名称相近或相关的词语命名的异常应用,可以确定与待检测应用的应用名称相近或相关的词语作为关键词。各个关键词组成关键词集。

关键词集至少包括一个关键词,各个关键词可以由用户根据待检测应用的应用名称来设定。应用名称不同,关键词集中的关键词的内容和数量也不相同,在此不做限定。

为了避免将与待检测应用对应正常应用误判为异常应用,应用提供设备100还可以向应用检测设备200上传与待检测应用对应的正常应用,以便将与待检测应用对应的正常应用添加至正常应用库中,以便后续可以排除正常应用,避免将正常应用误认为异常应用。

例如,在应用检测设备100上传“唯品会”应用时,可以一并上传“唯品会手机版”、“唯品会hd”等与“唯品会”对应的正常应用。

可以理解的是,若应用检测设备200上的正常应用库中已有与待检测应用对应的正常应用可以不必执行该操作。

步骤s102:应用检测设备200接收所述待检测应用和所述关键词集。

应用检测设备200接收待检测应用和关键词集。可选地,应用检测设备200为了确保所述待检测应用为正常应用,可以对待检测应用进行检测。

应用检测设备200上预先构建有正常应用库,应用检测设备200判断待检测应用是否存在于正常应用库中。若存在于正常应用库中,则确定待检测应用为正常应用。

若待检测应用不存在于正常应用库中,则对待检测应用进行官方认证(或人工审核)。若通过官方认证(或人工审核),则确定待检测应用为正常应用,否则确定待检测应用为异常应用。

在确定待检测应用为正常应用后,可以执行检测待检测应用的异常应用的过程,并将待检测应用添加至正常应用库中,以完善正常应用库。

若确定待检测应用为异常应用后,则不再执行检测待检测应用的异常应用的过程,并向应用提供设备100发送待检测应用为异常应用的提示信息。

此外,在步骤s101中应用提供设备100向应用检测设备200上传与待检测应用对应的正常应用后,也判断正常应用库中是否存在与待检测应用对应的正常应用。

若不存在,则对与待检测应用对应的正常应用进行官方认证(或人工审核),在确定与待检测应用对应的正常应用为正常应用后,将与待检测应用对应的正常应用添加至正常应用库中,以完善正常应用库。

可以理解的是,通常情况下正常应用库已经较为完善,所以在步骤s101中,应用提供设备100可以根据待检测应用的具体情况,来决定是否上传与待检测应用对应的正常应用。

当然,在应用提供设备100未执行上传与待检测应用对应的正常应用的步骤后,应用检测设备200也不执行相应的过程。

步骤s103:应用检测设备200基于关键词集并利用模糊匹配算法,计算全网应用库中应用与待检测应用针对应用名称的相似度。

s1:应用检测设备200采用模糊匹配算法,计算全网应用库中应用的应用名称与所述关键词集中关键词的相似度。

应用检测设备200对全网应用库中应用进行检测,由于对每个应用的执行过程均是一致的,所以以一个应用的处理过程为例进行描述,其他应用的处理过程不再赘述。

关键词集包括一个或多个关键词,应用检测设备200可以利用模糊匹配算法,分别计算各个关键词与全网应用库中应用的应用名称的相似度,并得到全网应用库中应用的应用名称与各个关键词的相似度。

s2:基于至少一个相似度,确定全网应用库中应用与待检测应用针对应用名称的相似度。

根据本申请提供的一个实施例,可以将至少一个相似度中的最大值,确定为应用与待检测应用针对应用名称的相似度。

每个关键词均对应一个相似度,可以对多个相似度的大小进行排序,从而在多个相似度中选择最大相似度,将最大相似度确定为全网应用库中应用与待检测应用的相似度。

根据本申请的另一实施例,可以在所述至少一个相似度筛选多个相似度,将多个相似度的平均值确定为应用与待检测应用针对应用名称的相似度。

每个关键词对应一个相似度,可以对多个相似度进行排序,并按相似度由高至低的顺序选择一个或多个相似度。然后,计算多个相似度的平均值,将平均值确定为全网应用库中应用与待检测应用的相似度。本实施例中可以综合考虑多个相似度,因此准确性较高。

本申请中不再直接通过待检测应用的应用名称来确定与待检测应用名称类似的异常应用,而是采用与待检测应用的应用名称相近或类似的关键词集来确定与待检测应用类似的异常应用。

由于关键词集扩展了待检测应用的应用名称的范围,所以,可以在全网应用库中搜索到尽可能多与待检测应用的应用名称类似的应用,从而避免遗漏一部分异常应用。

步骤s104:应用检测设备200判断全网应用库中应用与待检测应用针对应用名称的相似度是否大于预设相似度,若是,则进入步骤s105。

应用检测设备200中预先存储有预设相似度,预设相似度为区分两个应用名称是否相似的界限值。

应用检测设备200将全网应用库中应用与待检测应用针对应用名称的相似度与预设相似度进行对比,若全网应用库中应用与待检测应用针对应用名称的相似度大于预设相似度,则表明全网应用库中应用与待检测应用的应用名称相似,否则表明应用名称不相似。

步骤s105:判断该应用是否在正常应用库中,若是则确定该应用为待检测应用的正常应用;若否,则确定该应用为仿冒待检测应用的异常应用。

由于全网应用库既具有正常应用又具有异常应用,所以在步骤s104中与待检测应用针对应用名称的相似度大于预设相似度的应用,可能为异常应用也可能为与待检测应用对应的正常应用。

针对一个应用,若正常应用库中具有该证书签名,则说明该应用为正常应用。若正常应用库中不具有该证书签名,则说明该应用为非正常应用。

为了避免产生误判(将正常应用误认为异常应用),所以获取该应用的证书签名,并判断正常应用库中是否具有该证书签名。若正常应用库具有该证书签名,则确定该应用为待检测应用对应的正常应用,否则确定该应用为仿冒待检测应用的异常应用。

步骤s106:应用检测设备200发送异常应用的应用信息和异常类型至应用提供设备100。

应用检测设备200确定异常应用的异常类型为应用名称异常。应用检测设备200还可以在全网应用库中获取异常应用的应用信息,例如异常应用的应用名称、应用图标、异常应用的来源等等应用信息。

步骤s107:应用提供设备100用于接收并显示异常应用的应用信息和异常类型。

上述实施例中在应用名称和证书签名两个维度上判断应用是否为仿冒待检测应用的异常应用,下面本申请又提供一种异常应用检测方法,可以在多个维度上判断应用是否为仿冒待检测应用的异常应用。在增加维度后可以更加全面的检测仿冒待检测应用的异常应用。

本申请在图1所示的异常应用检测系统,又提供了一种异常应用检测方法。参见图3,具体包括以下步骤:

步骤s201:应用提供设备100用于向应用检测设备200上传待检测应用和与所述待检测应用的应用名称对应的关键词集。

本步骤的详细过程可以参见步骤s101的描述,在此不再赘述。

步骤s202:应用检测设备200接收所述待检测应用和所述关键词集。

步骤s203:应用检测设备200计算全网应用库中的应用与待检测应用针对多个属性的相似度;多个属性包括应用名称、应用图标和包名。

对于应用名称而言:应用检测设备200计算全网应用库中的应用与待检测应用针对应用名称的相似度。详细过程可以参见步骤s103的执行过程,在此不再赘述。

为了便于描述将应用名称的相似度称为第一相似度,并采用vname表示,0≤vname≤1。

对于应用图标而言:应用检测设备200可以基于图像处理技术来计算全网应用库中的应用与待检测应用针对应用图标的相似度。基于图像处理技术来计算两个图像的相似度已为成熟技术,在此不再赘述。

为了便于描述将应用图标的相似度称为第二相似度,并采用vicon表示,0≤vicon≤1。

通过研究发现一些异常应用还可以通过包名仿冒正常应用,为此,本申请增加了包名。一个包名代表一个应用,在大多数应用商店中通常使用包名作为应用的唯一标识,不允许两个应用使用同样的包名。

对于包名而言:应用检测设备200可以基于模糊匹配算法,来计算全网应用库中的包名与待检测应用的包名的相似度。

为了便于描述将包名的相似度称为第三相似度,并采用vpkg表示,0≤vpkg≤1。

步骤s204:应用检测设备200将多个针对属性的相似度输入至预设异常应用模型,经预设异常应用模型计算后输出多个针对属性的相似度的综合相似度;其中,所述预设异常应用模型为对多个属性的相似度进行综合计算的模型。

预设异常应用模型预先由多个训练样本进行有监督的训练,并获得与应用名称对应的第一预设权重,与应用图标对应的第二预设权重,与包名对应的第三预设权重。

在应用检测设备200将多个针对属性的相似度输入至预设异常应用模型后,异常应用模型会计算多个属性相似度的综合相似度。

根据本申请的一个实施例,预设异常应用模型可以计算针对应用名称的第一相似度与第一预设权重的第一乘积;计算针对应用图标的第二相似度与第二预设权重的第二乘积;计算针对包名的第三相似度与第三预设权重的第三乘积;将第一乘积、第二乘积、第三乘积的和值,确定为综合相似度。

预设异常应用模型的计算公式如下:

vapp=w1vname+w2vicon+w3vpkg+b

其中,vapp为综合相似度,w1为第一预设权重,w2为第二预设权重,w3为第三预设权重,其中,b为预设常数,可以根据实际情况而定。

步骤s205:应用检测设备200判断综合相似度是否大于预设相似度;若是,则进入步骤s206,否则说明该应用与待检测应用不相似。

步骤s206:判断该应用是否在正常应用库中,若是则确定该应用为待检测应用的正常应用;若否,则确定该应用为仿冒待检测应用的异常应用。

该步骤的详细执行过程可以参见步骤s105,在此不再赘述。本步骤也可以在s204之前执行,若判定该应用在正常应用库中,则确定该应用为正常应用,不再执行后续过程;若判定该应用不在正常应用库中,则可以进入步骤s204。

根据本申请另一实施例,在判定该应用不在正常应用库之后,还可以判断该应用的包名与待检测应用的包名是否完全一致;若两者包名完全一致,则确定该应用为异常应用;若两者包名不完全一致,则进入步骤s204继续进行判断。

步骤s207:应用检测设备200发送异常应用的应用信息至应用提供设备100。

应用检测设备200可以在全网应用库中获取异常应用的应用信息,例如异常应用的应用名称、应用图标、异常应用的来源等等应用信息。

步骤s208:应用提供设备100用于接收并显示异常应用的应用信息。

关于步骤s204中的预设异常应用模型的训练过程包括:

s11:获得若干个训练样本,训练样本包括应用与待检测应用分别针对应用名称、应用图标和包名的相似度,以及,人工标注的应用与待检测应用的综合相似度。

获取若干个训练样本,并将若干个训练样本分别与待检测应用在应用名称、应用图标和包名上计算相似度,并人工标注各个训练样本与待检测应用的综合相似度。

s12:构建异常应用模型。

构建异常应用模型,异常应用模型中计算综合相似度的公式为:vapp=w1vname+w2vicon+w3vpkg+b。

s13:基于若干个训练样本对所述异常应用模型进行训练,获得所述第一预设权重、所述第二预设权重和所述第三预设权重。

通过vapp=w1vname+w2vicon+w3vpkg+b和代价函数共同训练异常应用模型,,训练过程为通过机器学习的方式不断调整第一权重、第二权重和第三权重,以便按vapp=w1vname+w2vicon+w3vpkg+b计算后得到综合相似度与用户设定的综合相似度在一定误差范围内。

在训练结束后,可以得到最优的第一权重、第二权重和第三权重。将训练结束后的异常应用模型确定为预设异常应用模型。预设异常应用模型中,将训练结束后的当前的第一权重确定为第一预设权重、当前的第二权重确定为第二预设权重,当前的第三权重确定为第三预设权重。

下面本申请又提供一种异常应用检测方法,可以在多个维度上判断应用是否为仿冒待检测应用的异常应用。

本申请在图1所示的异常应用检测系统,又提供了一种异常应用检测方法。参见图4,具体包括以下步骤:

步骤s301:应用提供设备100用于向应用检测设备200上传待检测应用和与所述待检测应用的应用名称对应的关键词集。

步骤s302:应用检测设备200接收所述待检测应用和所述关键词集。

步骤s301和步骤s302的执行过程可以参见步骤s101和步骤s102的执行过程,在此不再赘述。

步骤s303:应用检测设备200对所述待检测应用执行属性提取操作获得属性集,所述属性集包括:应用名称、包名、应用图标和证书签名。

应用检测设备200对待检测应用进行属性提取操作,从而获得后续检测过程中所需的属性集。

步骤s304:应用检测设备200在全网应用库中,确定与所述属性集中至少一个属性相似的各个应用,并删除所述各个应用中与待检测应用对应的各个正常应用,获得可疑应用集。

应用检测设备200上具有全网应用库,全网应用库中具有全网的各个应用。即,全网应用库包括正常应用(正常应用中具有与待检测应用对应的正常应用)和异常应用。

本步骤可以分为两种具体实现方式:

参见图5a,为第一种实现方式:基于属性集中的应用名称、包名证书签名和应用图标来确定可疑应用集。

应用检测设备200分别将应用名称、包名和应用图标与全网应用库中应用进行对比。

(1)针对应用名称而言:应用检测设备200计算全网应用库中各个应用的应用名称与所述待检测应用的应用名称的第一相似度,将所述第一相似度大于第一预设相似度的各个应用作为第一应用集。

应用检测设备200采用模糊匹配算法,计算各个应用的应用名称与待检测应用的应用名称的第一相似度。针对应用名称的相似度的计算过程可以参见步骤s103的描述过程,在此不再赘述。

判断第一相似度与第一预设相似度的大小,若一个应用的第一相似度大于第一预设相似度,则说明该应用可能是采用应用名称来仿冒待检测应用;否则,说明该应用未通过应用名称来仿冒待检测应用。

在对全网应用库中各个应用均执行上述过程后,获取全网应用库中第一相似度大于第一预设相似度的各个应用。为了方便叙述,将其称为第一应用集。

(2)针对应用图标而言:应用检测设备200计算全网应用库中各个应用的应用图标与所述待检测应用的应用图标的第二相似度,将所述第二相似度大于第二预设相似度的各个应用作为第二应用集。

应用检测设备200基于图像处理技术来计算各个应用的应用图标与待检测应用的应用图标的第二相似度,并判断第二相似度与第二预设相似度的大小。

若一个应用的第二相似度大于第二预设相似度,则表示该应用可能通过应用图标来仿冒待检测应用的应用图标;否则表示该应用未通过应用图标来仿冒待检测应用。

在对全网应用库中各个应用均执行上述过程后,获取全网应用库中第二相似度大于第二预设相似度的各个应用。为了方便叙述,将其称为第二应用集。

(3)针对包名而言:应用检测设备200计算全网应用库中各个应用的包名与所述待检测应用的包名的第三相似度,将所述第三相似度大于第三预设相似度的各个应用作为第三应用集。

应用检测设备200采用模糊匹配算法,计算各个应用的包名与待检测应用的包名的第三相似度,并判断第三相似度与第三预设相似度的大小。

若一个应用的第三相似度大于第三预设相似度,则说明该应用可能是采用包名来仿冒待检测应用;否则,说明该应用未通过包名来仿冒待检测应用。

在对全网应用库中各个应用均执行上述过程后,获取全网应用库中第三相似度大于第三预设相似度的各个应用。为了方便叙述,将其称为第三应用集。

(4)计算所述第一应用集、所述第二应用集、所述第三应用集的并集。

第一应用集、第二应用集和第三应用集均为可能仿冒待检测应用的应用,因此,计算第一应用集、第二应用集和第三应用集取并集,从而得到全网应用库中与属性集中至少一个属性相似的各个应用。

(5)删除并集中与待检测应用对应的各个正常应用,获得可疑应用集。

由于全网应用库既具有正常应用又具有异常应用,所以上述并集中可能具有与待检测应用对应的正常应用。为了避免产生误判(将正常应用误认为异常应用),所以获取并集中各个应用的证书签名,并判断正常应用库中是否具有该证书签名。

针对一个应用,若正常应用库中具有该证书签名,则说明该应用为正常应用,在并集中删除。若正常应用库中不具有该证书签名,则说明该应用为可疑应用。

在将并集中各个应用与正常应用库进行对比后,将当前的并集(删除正常应用后剩余的各个应用),称为可疑应用集。

上述标号(1)(2)(3)和(4)的过程为全网应用库中执行第一次筛选的过程获得并集的过程,上述标号(5)为对并集进行第二次筛选获得可疑应用集的过程。

参见图5b为第二种实现方式:在获得并集后,再采用应用图标从并集中筛选应用。

可以理解的是,由于图标匹配会耗费应用检测设备200较多资源和时间,所以在从全网应用库中选择可疑应用集时,可以采用应用名称、包名和证书签名。

通过第一种实现方式中(1)和(3)获得第一应用集和第三应用集,并对第一应用集和第三应用集取并集。然后,判断并集中各个应用的证书签名是否存在于正常应用库中,在并集中删除证书签名存在于正常应用库中的各个正常应用。

对于当前的并集(并集中删除正常应用后剩余的应用),计算该并集中各个应用的应用图标与所述待检测应用的应用图标的第二相似度,将所述第二相似度大于第二预设相似度的各个应用,组成可疑应用集。

第二种实现方式相对于第一种实现方式而言,先通过应用名称和包名在全网应用库中进行第一次筛选,然后,通过证书签名在第一次筛选结果(并集)中进行第二次筛选(排除正常应用)。

相对于全网应用库而言在第二次筛选后得到的应用已经大大减少了不相关应用数量,所以对第二次筛选后得到的各个应用再执行应用图标的匹配,相对于第一种实现方式而言,可以大大提高执行效率。

步骤s305:应用检测设备200计算所述可疑应用集中各个可疑应用的综合相似度。

计算综合相似度的过程,可以参见步骤s204,在此不再赘述。

步骤s306:应用检测设备200将综合相似度与预设相似度进行对比,并将综合相似度大于预设相似度的各个应用,确定为所述待检测应用的异常应用集。

预设相似度为预先设定的判定可疑应用为异常应用一个临界值。

若可疑应用集中的一个应用的综合相似度大于预设相似度,则确定该应用为仿冒待检测应用的异常应用。若可疑应用集中的一个应用的综合相似度不大于预设相似度,则确定该应用为正常应用,即该应用并没有仿冒待检测应用。

步骤s307:应用检测设备200确定检测结果,并向应用提供设备发送检测结果。

(1)检测结果可以包括异常应用的数量,则应用检测设备200可以统计异常应用集的应用数量。

(2)检测结果可以包括异常应用的各个异常应用的应用信息,则应用检测设备200可以在全网应用库中,获取各个异常应用的应用信息。

异常应用的信息可以包括:应用名称、包名、应用目标、证书签名、下载链接等等。

(3)检测结果可以包括异常应用的异常类型,则应用检测设备200可以确定异常应用集中各个异常应用中异常类型。

应用检测设备200可以调用步骤s304中的相似度与预设相似度的比较结果,来确定应用的异常类型。一个应用的异常类型可以包括:应用名称异常、包名异常、应用图标异常中一种或多种。

执行过程可以包括:若在步骤s304中确定一个应用的应用名称对应的第一相似度大于第一预设相似度,则确定该应用的异常类型为应用名称异常类型。

若在步骤s304中确定一个应用的应用图标对应的第二相似度大于第二预设相似度,则确定该应用的异常类型为应用图标异常类型。

若在步骤s304中确定一个应用的包名对应的第三相似度大于第三预设相似度,则确定该应用的异常类型为包名异常类型。

步骤s307:应用提供设备100接收并显示检测结果。

应用提供设备100接收应用检测设备200发送的检测结果,并显示检测结果。

根据本申请的一个实施例,又提供了一种应用检测方法。参见图6,具体包括以下步骤:

步骤s401:获取待检测应用对应的关键词集,其中,所述关键词集包括一个或多个与所述待检测应用对应的关键词。

步骤s402:获取所述关键词集与已知应用名称的相似度。

本步骤采用模糊匹配算法,计算应用的应用名称与所述关键词集中至少一个关键词的相似度;基于至少一个相似度,确定应用与待检测应用针对应用名称的相似度。

可选的,可以将所述至少一个相似度中的最大值,确定为应用与待检测应用针对应用名称的相似度;或者,

在所述至少一个相似度筛选多个相似度,将多个相似度的平均值确定为应用与待检测应用针对应用名称的相似度。

步骤s403:若所述相似度超过判断阈值,确定所述应用为目标应用。

本实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1