应用程序的风险确定方法及确定装置制造方法

文档序号:6619672阅读:215来源:国知局
应用程序的风险确定方法及确定装置制造方法
【专利摘要】本申请实施例公开了一种应用程序的风险确定方法及确定装置,所述方法包括:确定至少一应用程序与多个权限之间的至少一申请关系;确定所述至少一申请关系中每个申请关系的权值;根据所述每个申请关系对应的所述权值确定所述至少一应用程序中每个应用程序的应用安全风险值;根据所述每个应用程序的所述应用安全风险值对所述至少一应用程序进行安全等级划分。本申请实施例的技术方案根据二部图模型确定应用程序的应用安全风险值;并且本申请实施例还对应用程序进行安全等级划分,方便用户根据自己的安全隐私需要选择合适的安全等级的应用程序。
【专利说明】应用程序的风险确定方法及确定装置

【技术领域】
[0001] 本申请涉及一种数据处理方法,尤其涉及一种应用程序的风险确定技术方案。

【背景技术】
[0002] 近年来随着移动设备与移动互联网的高速发展,移动应用程序的数量出现了爆 炸式的增长。与此同时,移动应用程序的功能被极大的扩展,用以丰富和满足用户各种各 样的需求,例如:基于位置的服务(Location Based Services, LBS),基于社交平台的服务 (Social Networking Services, SNS),等等。事实上,这些丰富的功能依赖于各种用户数据 和设备的使用权限,例如位置访问权、通讯录访问权、短信访问权等等。这些访问权限的使 用,使得用户产生了对于自身隐私、安全的担心,因而越来越多的用户希望能了解应用程序 的权限访问安全性。


【发明内容】

[0003] 本申请的目的是:提供一种确定应用程序的风险等级的技术方案。
[0004] 第一方面,本申请一个实施方案提供了一种应用程序的风险确定方法,包括:
[0005] 确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一申请 关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权限中 的一权限;
[0006] 确定所述至少一申请关系中每个申请关系的权值;
[0007] 根据所述每个申请关系对应的所述权值确定所述至少一应用程序中每个应用程 序的应用安全风险值;
[0008] 根据所述每个应用程序的所述应用安全风险值对所述至少一应用程序进行安全 等级划分。
[0009] 第二方面,本申请一个实施方案提供了一种应用程序的风险确定装置,包括: [0010] 申请关系确定模块,用于确定至少一应用程序与多个权限之间的至少一申请关 系;其中,所述至少一申请关系中的每个申请关系对应于所述至少一应用程序中的一应用 程序申请所述多个权限中的一权限;
[0011] 权值确定模块,用于确定所述至少一申请关系中每个申请关系的权值;
[0012] 风险值确定模块,用于根据所述每个申请关系对应的所述权值确定所述至少一应 用程序中每个应用程序的应用安全风险值;
[0013] 等级划分模块,用于根据所述每个应用程序的所述应用安全风险值对所述至少一 应用程序进行安全等级划分。
[0014] 本申请实施例的至少一个实施方案通过确定应用程序与权限之间的申请关系以 及所述申请关系的权值建立应用程序与权限的二部图模型,根据该二部图模型确定应用程 序的应用安全风险值;此外,为了避免用户根据应用安全风险值难以明确的感知应用程序 的安全风险,本申请实施例还对应用程序进行安全等级划分,方便用户根据自己的安全隐 私需要选择合适的安全等级的应用程序。

【专利附图】

【附图说明】
[0015] 图1为本申请实施例的一种应用程序的风险确定方法的流程图;
[0016] 图2为本申请实施例的一种应用程序的风险确定方法中应用程序与权限的二部 图不意图;
[0017] 图3为本申请实施例一种应用程序的风险确定装置的结构示意框图;
[0018] 图4为本申请实施例另一种应用程序的风险确定装置的结构示意框图;
[0019] 图5为本申请实施例一种应用程序的风险确定装置的权值确定单元的结构示意 框图;
[0020] 图6a和图6b分别为本申请实施例两种种应用程序的风险确定装置的等级划分模 块的结构示意框图;
[0021] 图7为本申请实施例一种电子设备的结构示意框图;
[0022] 图8为本申请实施例又一种应用程序的风险确定装置的结构示意框图。

【具体实施方式】
[0023] 下面结合附图(若干附图中相同的标号表示相同的元素)和实施例,对本申请的

【具体实施方式】作进一步详细说明。以下实施例用于说明本申请,但不用来限制本申请的范 围。
[0024] 本领域技术人员可以理解,本申请中的"第一"、"第二"等术语仅用于区别不同步 骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
[0025] 对于应用于一用户设备的一应用程序来说,其可能会申请使用该用户设备的至少 一数据使用的权限,例如一桌面应用程序申请用户设备中存储的照片数据的使用权限。本 申请的发明人发现,在对应用程序的安全风险进行评估时,结合考虑应用程序与权限之间 潜在的关系会提高评估的准确性。
[0026] 如图1所示,本申请实施例提供了一种应用程序的风险确定方法,包括:
[0027] S110确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一 申请关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权 限中的一权限;
[0028] S120确定所述至少一申请关系中每个申请关系的权值;
[0029] S130根据所述每个申请关系对应的所述权值确定所述至少一应用程序中每个应 用程序的应用安全风险值;
[0030] S140根据所述每个应用程序的所述应用安全风险值对所述至少一应用程序进行 安全等级划分。
[0031] 本申请实施例中所述至少一应用程序可以为一个应用程序,也可以为多个应用程 序,本申请实施例下面的实施方式以所述至少一应用程序为多个应用程序进行描述。所述 多个应用程序与所述多个权限之间具有多个申请关系。
[0032] 如图2所示,在本申请实施例中,发明人考虑到应用程序和权限的特性,提出了基 于二部图的模型,来确定应用程序与权限之间的关系。其中,将多个应用程序作为二部图中 的第一组节点,将多个权限作为二部图中的第二组节点,两组节点之间的连接由应用程序 与权限的申请关系确定,即,当且仅当一应用程序申请了一权限时,所述应用程序与所述权 限之间具有申请关系,建立有连接。
[0033] 举例来说,本发明提供的应用程序的风险确定装置作为本实施例的执行主体,执 行S110?S140。具体地,所述确定装置可以以软件、硬件或软硬件结合的方式设置在用户 设备或服务器设备中。
[0034] 本申请实施例的实施方案通过确定应用程序与权限之间的申请关系以及所述申 请关系的权值建立应用程序与权限的二部图模型,根据该二部图模型确定应用程序的应用 安全风险值;此外,为了避免用户根据应用安全风险值难以明确的感知应用程序的安全风 险,本申请实施例还对应用程序进行安全等级划分,方便用户根据自己的安全隐私需要选 择合适的安全等级的应用程序。
[0035] 下面结合图2所示的二部图进一步说明本申请实施例方法的各步骤:
[0036] 在本申请实施例中,通过图2所示的二部图表示本申请实施例多个应用程序与多 个权限之间的关系,其中所述二部图G可以表示为:G= {V,E,W},其中,
[0037] V 为节点集,有 V = {Va,Vp},
[0038] Va为应用程序集,包括所述多个应用程序ai?aM,即Va = {叫,· · ·,aM},Μ为所 述多个应用程序的个数,为正整数;
[0039] Vp为权限集,包括所述多个权限Pi?ρΝ,即Vp = {ρ^ · · ·,ρΝ} ;Ν为所述多个权 限的个数,为正整数;
[0040] Ε为申请关系集,其中,当且仅当所述多个应用程序中的一应用程序%申请了所述 多个权限中的一权限h时,存在一申请关系e E ;
[0041] W为权值集,一权值e W表示所述申请关系eij的权值。
[0042] 如图2所示的实施方式中,二部图包括4个应用程序?a4,3个权限Pl?p 3, (在图2所示实施例中,所述应用程序ai?a4分别为:愤怒的小鸟(游戏类)、切水果(游 戏类)、脸谱(社交类)以及麦块(游戏类);所述权限pl为读取手机状态、权限P2为访问 精确位置、权限P3表示读取联系人);申请关系集包含8个申请关系(图2中通过应用程序 与权限之间的连线表示):e n,e12, e21,e22, e32, e33, e42以及e43,它们分别对应的权值为0. 3, 0· 7,0· 2,0· 8,0· 5,0· 5,0· 4 以及 0· 6。
[0043] 本申请实施例中,所述权值Wij表示所述应用程序ai与所述权限Pj的相关性。在 一种可能的实施方式中,所述权值表示所述应用程序%申请所述权限?的概率。这里 应用程序%申请权限&的概率指的是,在确定所述应用程序%申请了哪些权限之前,其申 请权限h的可能性。例如,对于图2中的申请关系e n来说,0. 3表示应用程序申请权限 Pi的概率为0.3。
[0044] 当然,在其它可能的实施方式中,所述权值还可以根据其它依据确定,来表示应用 程序与权限之间的相关程度,特别的,在一种可能的实施方式中,可以根据用户的设定指令 确定所述权值。
[0045] 如上面所述的,在本申请实施例一种可能的实施方式中,所述步骤S120在确定所 述权值时,可以根据所述每个申请关系对应的所述应用程序申请所述权限的概率确定所述 每个申请关系的权值。
[0046] 在本申请实施例中,可以根据历史数据获取所述概率。可选地,在一种可能的实施 方式中,可以根据所述每个申请关系对应的所述应用程序所属的一应用分类中所有应用程 序的权限申请历史数据确定对应的所述权值。在本实施方式中,所述应用分类可以是根据 所述应用程序的功能划分的分类,例如游戏、办公、地图等;还可以是根据应用程序的开发 商进行的分类,或者还可以是根据应用程序其它方面的相似性等进行的聚类分类等等。当 然,本领域的技术人员可以知道,所述应用分类还可以是其它的分类标准进行的分类。
[0047] 可选地,在本申请实施例一种可能的实施方式中,可以根据所述应用程序所属的 所述应用分类中所有应用程序申请所述权限的频率与所述所有应用程序分别申请所述多 个权限的多个频率之和的比值得到所述权值。可以通过下面的公式表示: fr
[0048] Wij = V J f, Z-(PjeKp Ifl
[0049] 其中表示所述应用程序%所属的所述应用分类中的应用程序申请权限的频 率。
[0050] 在本申请实施例一种可能的实施方式中,为了得到归一化的频率,可以通过所述 应用分类中申请了一权限的应用程序的数量与该应用分类中所有应用程序的比值得到所 述权限对应的所述频率。当然,在本申请实施例其它可能的实施方式中,还可以通过其它方 式确定所述频率。
[0051] 在本申请实施例其它可能的实施方式中,除了上述根据权限的申请频率确定所述 每个申请关系的权值外,还可以根据其它参数确定所述权值,例如外部的先验知识,所述先 验知识例如可以为本领域专家的意见、其它方法计算出了应用程序与权限之间的相关值 等。
[0052] 在本申请实施例一种可能的实施方式中,可选地,所述步骤S130可以通过至少一 约束来使得得到的应用程序的应用安全风险值更加准确。
[0053] 在一种可能的实施方式中,所述至少一约束包括一第一约束,所述第一约束包 括:
[0054] 所述多个申请关系中一申请关系对应的权值越高,所述申请关系对应的应用程序 的应用安全风险值与所述申请关系对应的权限的权限安全风险值越相近。
[0055] 在本申请实施例中,所述应用安全风险值表示对应的应用程序的安全风险大小, 所述权限安全风险值表示对应的权限的安全风险大小。
[0056] 本领域技术人员可以知道,所述第一约束考虑了应用程序与权限之间的主导关 系。其中,一应用程序与一权限的权值越高,二者之间的相关性越强,当其中一个的风险高 时,另一个必然也会高,反之亦然。以图2所示的实施例为例,对于权限p 2来说,其对应的4 个申请关系e12, e22, e32和e42分别对应的权值为0. 7、0. 8、0. 5和0. 4,因此,根据所述第一 约束可以知道,权限P2的权限安全风险值应该与应用程序a2的应用安全风险值最接近。
[0057] 可选的,在一种可能的实施方式中,所述至少一约束还包括一第二约束,所述第二 约束包括:
[0058] 所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序 的应用安全风险值越相近。
[0059] 在本实施方式中,所述权限申请状况包括:应用程序申请的权限和应用程序申请 权限的申请关系对应的权值。其中,当两个应用程序申请的权限越相似,同时申请相同权限 的权值越相似,二者的应用安全风险值应该越相近。如图2所示的应用程序 &1和应用程序 %都申请了权限Pl和权限p2,与应用程序a 3或应用程序a4相比,此时,这两个应用程序的 应用安全风险值应该是更接近的;此外,该两个应用程序不但申请了相同的权限,其分别申 请权限 Pl和权限P2的权值也相近,因此可以预见的是,应用程序%和应用程序a2的应用安 全风险值应该是更相近的。同样,应用程序a 3和应用程序a4的应用安全风险值也应该是更 相近的。当然,应用程序%或应用程序a2与应用程序a 3或应用程序a4的应用安全风险值 应该是比较不相近的。
[0060] 可选地,在一种可能的实施方式中,可以通过一应用程序对应的所有申请关系 的权值来向量表示所述应用程序,例如应用程序8 1表示为\ =彳Wii,...,WiN}, 其中,所述向量I包含N个元素,依次分别对应于N个权限,其中,当所述应用程序申 请一权限时,对应的元素为对应的权值;当所述应用程序%没有申请一权限时,用0代 替该元素(此时可以看成所述应用程序%申请该权限的权值为0);应用程序&」表 不为aj = {Wj 1,...,WjN)·。例如,图2所不的实施例中,应用程序ai对应的向量 \ =丨0.3,0.7,0丨,这里的〇表示应用程序没有申请权限p3。此时可以通过这两个应 用程序对应的向量的余弦距离来确定这两个应用程序的相似度:
[0061] S-= Cos (a^ Sj) = - ΚΙ · a3
[0062] 当然,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法也 可以用于本申请实施例确定两个应用程序的相似程度,例如可以通过两个向量之间的欧式 距离或KL距离(Kullback-Leibler Divergence)来确定所述两个向量的相似度。
[0063] 可选的,在一种可能的实施方式中,所述至少一约束还包括一第三约束,所述第三 约束包括:
[0064] 对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个 权限的权限安全风险值越相近。
[0065] 在本申请实施例中,所述权限的被申请状况包括申请所述权限的应用程序以及所 述应用程序申请所述权限对应申请关系的权值。其中,申请两个权限的应用程序越相似、同 时相同的应用程序分别申请所述两个权限的申请关系的权值越相似,所述两个权限对应的 权限安全风险值越相近。仍然以图2所示的实施方式为例,可以看出,权限 Pl与权限p2同 时被应用程序%和应用程序a2申请了,同时二者分别被应用程序和应用程序a 2申请的 权值相似,权限P2与权限P3又同时被应用程序a3和应用程序a 4申请,而权限Pi和权限p3 没有被相同的应用程序申请,因此可以知道的是,在权限P2和权限P3中,权限Pl的权限安 全风险值更接近权限P 2的权限安全风险值。本领域的技术人员可以知道,如果权限P3仅被 应用程序%和应用程序a 2申请,则权限Pl与权限p3的权限安全风险值会更接近。
[0066] 同样可选的,在一种可能的实施方式中,可以通过一权限对应的所有申请关系的 权值来向量表示所述权限,例如权限Pi表示为$ ...,WMi丨,其中,所述向量民包 含Μ个元素,依次分别对应于Μ个应用程序,其中,当一应用程序申请所述权限Pi时,对应 的元素为对应的权值;当一应用程序没有申请所述权限Pi时,用0代替该元素(此时可以 看成所述应用程序申请所述权限的权值为〇);权限h表示为$ = {W& ...,wMj}。例 如,图2所示的实施例中,权限Pl对应的向量瓦=彳0.3, 0.2, 0 〇i这里的两个0分别表 示应用程序a3和a4没有申请权限Pl。此时可以通过这两个权限对应的向量的余弦距离来 确定这两个权限的相似度:
[0067] s|=Q)S (Pi, P,)= hll· Pj
[0068] 同样的,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法 也可以用于本申请实施例确定两个权限的相似程度,例如上面所述的欧式距离。
[0069] 为了使得到的应用安全风险值更加准确,还可以将外部的先验知识引入到应用安 全风险值的计算中,因此,可选地,在一种可能的实施方式中,所述至少一约束还包括一第 四约束,所述第四约束包括:
[0070] 所述多个应用程序的应用安全风险值分别与所述多个应用程序的先验应用安全 风险值一致;
[0071] 所述多个权限的权限安全风险值分别与所述多个权限的先验权限安全风险值一 致。
[0072] 在本申请实施例中,所述多个应用程序的应用安全风险值和多个权限的权限安全 风险值分别与先验应用安全风险值和先验权限安全风险值一致的意思是所述应用和权限 安全风险值应满足先验知识,例如:第一应用程序的先验应用安全风险值大于第二应用程 序的先验应用安全风险值,则所述第一应用程序的应用安全风险值一般也应大于所述第二 应用程序的应用安全风险值。本申请实施例中,引入所述第四约束可以使得获取的应用安 全风险值可以尽快的收敛到合适的范围。在一种可能的实施方式中,对于一应用程序,可能 会有多个应用安全风险值满足上面的第一、第二和第三约束,那么所述第四约束可以帮助 确定所述应用程序对应的多个应用安全风险值中哪个才是该应用程序更合适的应用安全 风险值。
[0073] 在本申请实施例中,所述先验应用安全风险值和先验权限安全风险值分别可以是 通过多种方式获得,例如,在一些可能的实施方式中,可以采用领域专家设置的对应的安全 风险值、也可以根据外部风险报告构建一安全分类得到对应的安全风险值、或者还可以采 用相关领域最先进的安全模式得到对应的安全风险值。特别的,在一种可能的实施方式中, 可以通过用户的预设来获得所述述先验应用安全风险值和先验权限安全风险值。
[0074] 在本申请实施例一种可能的实施方式中,为了使得对应的应用和权限安全风险 值的获取效率更高,可以采用信息先验的朴素贝叶斯(Naive Bayes with information Priors,PNB)来得到所述先验应用安全风险值和先验权限安全风险值。
[0075] 在本申请实施例一种可能的实施方式中,可以根据所述每个申请关系对应的所述 权值以及上面所述的第一至第四约束来确定所述多个应用程序中每个应用程序的应用安 全风险值。
[0076] 例如,在一种可能的实施方式中,定义一结合上面四个约束的成本函数,例如表不 为: β (a,f ·|?|< -无 If+ Σlb -句||2} +
[。。77] f. {? 411? f + Σ f}+ Z ij
[0078] 其中,表示应用程序ai的应用安全风险值,及;1表示应用程序ai的先验应用安 全风险值,表示权限h的权限安全风险值,表示权限h的先验权限安全风险值,上面 第一部分(第一个大括号内的部分)表示了上面所述的第四约束,第二部分(第二个大括 号内的部分)表示了所述第二和第三约束,第三部分表示了所述第一约束。参数λ和μ 分别为所述第四约束的参数和所述第二和第三约束的参数,用于控制上述的第一部分和第 二部分,用户可以根据需要设置这两个参数。可以看出,当λ和μ为零时,本申请实施例 的成本函数不受所述第二、第三和第四约束的约束,而仅需要考虑所述第一约束。
[0079] 可以看出,为了满足上面所述的约束,必须得到合适的和使得所述成本函数 尽可能小。因此,在一种可能的实施方式中,可以先给所述巧'和赋初始值,例如〇到1之 间的值,在一种可能的实施方式中,例如可以令:< ,巧=l/iV,再通过梯度下降 法不断的迭代更新这两个值,直到使得所述成本函数小于一设定的阈值。
[0080] 当然,本领域技术人员可以知道,上面的成本函数仅是本申请实施例用于求取所 述应用安全风险值的一种可能的方式,还可以通过其它方法来得到本申请实施例的所述应 用安全风险值。
[0081] 可选地,在本申请实施例一种可能的实施方式中,所述步骤S130可以是:
[0082] 对于所述多个应用程序中的每个应用程序:
[0083] 比较预设的至少一第二阈值与所述每个应用程序的所述应用安全风险值,确定所 述每个应用程序的安全等级。
[0084] 例如,在一种可能的实施方式中,所述至少一第二阈值例如可以包括一低第二阈 值和一高第二阈值,其中,所述低第二阈值小于所述高第二阈值;当一应用程序的应用安全 风险值小于所述低第二阈值,则可以确定所述应用程序的安全等级为低;当一应用程序的 应用安全风险值大于等于所述低第二阈值,同时小于所述高第二阈值,则可以确定所述应 用程序的安全等级为中;当一应用程序的应用安全风险值大于等于所述高第二阈值,则可 以确定所述应用程序的安全等级为高。
[0085] 其中,在本申请实施例中定义,所述应用程序的安全等级越高,其安全风险越小, 反之越大。
[0086] 上述实施方式中,应用程序的安全等级被划分为高、中、低三级,当然,本领域的技 术人员可以知道,根据需要,所述应用程序的安全等级还可以为其它数目,例如两级、五级 等等。
[0087] 可选地,在本申请实施例的另一种可能的实施方式中,为了使得应用程序的等级 划分更加平滑,所述步骤S130还可以为:
[0088] 根据所述多个应用程序的所述应用安全风险值的离散度对所述多个应用程序进 行安全等级划分。
[0089] 在一种可能的实施方式中,可以通过变异系数来确定安全等级的等级数以及各应 用程序都属于哪个等级。即:根据所述多个应用程序的所述应用安全风险值的变异系数将 所述多个应用程序划分在至少一个安全等级,其中,属于同一安全等级的至少一应用程序 的所述应用安全风险值的变异系数在预设的一第一阈值范围内。
[0090] 这里,所述至少一应用程序的所述应用安全风险值的变异系数即为所述至少一应 用程序的应用安全风险值的方差与均值的比值。
[0091] 例如,可以通过下面的步骤来根据多个应用程序的应用安全风险值来进行所述安 全等级划分:
[0092] 根据应用安全风险值对所述多个应用程序进行降序排序;
[0093] 从排名第一的应用程序开始,计算其变异系数,并判断该变异系数是否大于一 变异系数阈值,如果不大于则继续再加入第二个应用程序a2,继续计算第一应用程序和 第二个应用程序a 2的应用安全风险值的变异系数并判断,如果还是不大于所述变异系数阈 值,则继续依次加入后续的应用程序,直到得到的变异系数大于所述变异系数阈值,此时, 再判断当前应用程序的应用安全风险值是否与上一个应用程序的应用安全风险值相等,如 果相等则继续加入后续的应用程序并判断;如果不相等,则将从第一应用程序 ai到当前应 用程序an的所有应用程序划分为第一安全等级中;然后接着从下一个应用程序a n+1重新开 始计算变异系数并判断,直到加入一应用程序an+m满足从所述下一个应用程序a n+1到所述 应用程序an+m的应用安全风险值的变异系数大于所述变异系数阈值并且当前应用程序与前 一个应用程序的应用安全风险值不相等,此时,将所述下一个应用程序a n+1到所述应用程序 an+m的所有应用程序划分到第二安全等级中…依此类推,直到所有的应用程序都被划分完。 [0094] 可以看出,与上面的设定至少一第二阈值来对所述多个应用程序进行等级确定相 t匕,本申请实施例不需要事先确定所述应用程序的等级数,而是可以根据所述多个应用程 序的应用安全风险值的离散程度来确定所述安全等级的级数,使得应用安全风险值变化较 大的部分被更细化的划分。
[0095] 当然,本领域技术人员可以知道,除了通过所述第二阈值以及变异系数来确定所 述多个应用程序的安全等级外,还可根据其它方式来确定,例如,可以通过所述多个应用程 序的应用安全风险值的变化梯度来确定所述多个应用程序中每个应用程序的安全等级,但 是与通过变异系数的方法相比,梯度方法受个别点的波动影响较大。
[0096] 在一种可能的实施方式中,本申请实施例的上述方法可以应用在用户设备侧,用 于确定所述用户设备上的应用程序的安全等级,用户可以根据一应用程序的安全等级来判 断该应用程序会给用户设备带来安全问题的可能性,进而确定是否要安装或卸载所述应用 程序。可选地,在另一种可能的实施方式中,本申请实施例的上述方法可以应用分发平台 侦牝应用分发平台可以根据所述多个应用程序的安全等级来对应用程序进行分类,进而方 便用户根据自己的安全隐私需要选择合适安全等级的应用程序。
[0097] 其中,在一种可能的实施方式中,所述多个应用程序为应用于移动用户设备(例 如手机、平板电脑等)上的移动应用程序,所述应用分发平台也为一些应用市场,例如可以 为Google Play等安卓应用市场、以及苹果的App Store应用市场。
[0098] 本领域技术人员可以理解,在本申请【具体实施方式】的上述方法中,各步骤的序号 大小并不意味着执行顺序的先后,各步骤的执行顺序应以其功能和内在逻辑确定,而不应 对本申请【具体实施方式】的实施过程构成任何限定。
[0099] 如图3所示,本申请实施例一种可能的实施方式提供了一种应用程序的风险确定 装置400,包括:
[0100] 申请关系确定模块410,用于确定至少一应用程序与多个权限之间的至少一申请 关系;其中,所述至少一申请关系中的每个申请关系对应于所述至少一应用程序中的一应 用程序申请所述多个权限中的一权限;
[0101] 权值确定模块420,用于确定所述至少一申请关系中每个申请关系的权值;
[0102] 风险值确定模块430,用于根据所述每个申请关系对应的所述权值确定所述至少 一应用程序中每个应用程序的应用安全风险值;
[0103] 等级划分模块440,用于根据所述每个应用程序的所述应用安全风险值对所述至 少一应用程序进行安全等级划分。
[0104] 与上面所述的方法实施例中类似的,本申请实施例下面的实施方式以所述至少一 应用程序为多个应用程序为例进行进一步的描述。此时,所述申请关系确定模块410用于 确定所述多个应用程序与所述多个权限之间的多个申请关系。
[0105] 本申请实施例的装置400通过基于一二部图的模型确定所述多个应用程序和多 个权限之间的关系。具体参见图1所示实施例中对应的描述。
[0106] 本申请实施例的实施方案通过确定应用程序与权限之间的申请关系以及所述申 请关系的权值建立应用程序与权限的二部图模型,根据该二部图模型确定应用程序的应用 安全风险值;此外,为了避免用户根据应用安全风险值难以明确的感知应用程序的安全风 险,本申请实施例还对应用程序进行安全等级划分,方便用户根据自己的安全隐私需要选 择合适的安全等级的应用程序。
[0107] 本申请实施例通过下面的实施方式进一步说明本申请实施例的各模块。
[0108] 在本申请实施例一种可能的实施方式中,对于所述多个应用程序与多个权限之间 的多个申请关系以及每个申请关系对应的权值的进一步描述参见上述方法实施例中对图2 所示实施方式的描述,这里不再赘述。
[0109] 在本申请实施例中,所述申请关系的权值对应于所述申请关系对应的应用程序与 权限之间的相关性,一般来说,所述相关性越强,所述权值的大小越大。因此,所述权值确定 模块420根据所述应用程序与权值之间的相关性就可以确定所述权值的大小。在一种可能 的实施方式中,可以通过所述应用程序申请所述权限的概率的大小来获得所述相关性。当 然,本领域的技术人员可以知道,在其它可能的实施方式中,除了所述概率外,还可以通过 其它方式确定所述应用程序与权限之间的相关性。
[0110] 因此,可选地,如图4所示,在本申请实施例一种可能的实施方式中,所述权值确 定模块420可以包括:
[0111] 权值确定子模块421,用于根据所述每个申请关系对应的所述应用程序申请所述 权限的概率确定所述每个申请关系的权值。
[0112] 在本申请实施例一种可能的实施方式中,可以根据历史数据获取所述概率。进一 步的,在本实施方式中,所述权值确定子模块421可以包括:
[0113] 权值确定单元4211,用于根据所述每个申请关系对应的所述应用程序所属的一应 用分类中所有应用程序的权限申请历史数据确定对应的所述权值。
[0114] 在本实施方式中,所述应用分类可以是根据应用程序的功能划分的分类,例如游 戏、办公、地图等;还可以是根据应用程序的开发商进行的分类,或者还可以是根据应用程 序其它方面的相似性等进行的聚类分类等等。当然,本领域的技术人员可以知道,所述应用 分类还可以是以其它的分类标准进行的分类。
[0115] 如图5所示,在一种可能的实施方式中,为了计算方便,所述权值确定单元4211包 括:
[0116] 权值确定子单元4211a,用于根据所述应用分类中所有应用程序申请所述权限的 频率与所述所有应用程序分别申请所述多个权限的多个频率之和的比值得到所述权值。具 体参见图2所示方法实施例中对应的描述。
[0117] 在本申请实施例一种可能的实施方式中,为了得到归一化的频率,可以通过所述 应用分类中申请了一权限的应用程序的数量与该应用分类中所有应用程序的比值得到所 述权限对应的所述频率。当然,在本申请实施例其它可能的实施方式中,还可以通过其它方 式确定所述频率。
[0118] 为了更快更准确的确定所述每个应用程序的应用安全风险值,可选地,在一种可 能的实施方式中,所述风险值确定1吴块430包括:
[0119] 风险值确定子模块431,用于根据所述每个申请关系对应的所述权值以及至少一 约束确定所述每个应用程序的所述应用安全风险值;
[0120] 其中,所述至少一约束包括一第一约束,所述第一约束包括:
[0121] 所述多个申请关系中一申请关系对应的权值越高,所述申请关系对应的应用程序 的应用安全风险值与所述申请关系对应的权限的权限安全风险值越相近。
[0122] 在本申请实施例中,所述应用安全风险值表示对应的应用程序的安全风险大小, 所述权限安全风险值表示对应的权限的安全风险大小。
[0123] 本领域技术人员可以知道,所述第一约束考虑了应用程序与权限之间的主导关 系。其中,一应用程序与一权限的权值越高,二者之间的相关性越强,当其中一个的风险高 时,另一个必然也会高,反之亦然。具体参见上述方法实施例中对应的描述。
[0124] 可选的,在一种可能的实施方式中,所述至少一约束还包括一第二约束,所述第二 约束包括:
[0125] 所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序 的应用安全风险值越相近。
[0126] 在本实施方式中,所述权限申请状况包括:应用程序申请的权限和应用程序申请 权限的申请关系对应的权值。其中,当两个应用程序申请的权限越相似,同时申请相同权限 的权值越相似,二者的应用安全风险值应该越相近。具体参见上述方法实施例中对应的描 述。
[0127] 可选地,在一种可能的实施方式中,可以通过一应用程序对应的所有申请关系的 权值来向量表示所述应用程序,此时可以通过两个应用程序的余弦距离来确定两个应用程 序的相似度。具体参见上述方法实施例中对应的描述。
[0128] 当然,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法也 可以用于本申请实施例确定两个应用程序的相似程度。
[0129] 可选的,在一种可能的实施方式中,所述至少一约束还包括一第三约束,所述第三 约束包括:
[0130] 对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个 权限的权限安全风险值越相近。
[0131] 在本申请实施例中,所述权限的被申请状况包括申请所述权限的应用程序以及所 述应用程序申请所述权限对应申请关系的权值。其中,申请两个权限的应用程序越相似、同 时相同的应用程序分别申请所述两个权限的申请关系的权值越相似,所述两个权限对应的 权限安全风险值越相近。
[0132] 同样可选的,在一种可能的实施方式中,可以通过一权限对应的所有申请关系的 权值来向量表示所述权限,此时可以通过两个权限的余弦距离来确定两个权限的相似度。 具体参见上述方法实施例中对应的描述。
[0133] 同样的,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法 也可以用于本申请实施例确定两个权限的相似程度。
[0134] 为了使得到的应用安全风险值更加准确,还可以将外部的先验知识引入到应用安 全风险值的计算中,因此,可选地,在一种可能的实施方式中,所述至少一约束还包括一第 四约束,所述第四约束包括:
[0135] 所述多个应用程序的应用安全风险值分别与所述多个应用程序的先验应用安全 风险值一致;
[0136] 所述多个权限的权限安全风险值分别与所述多个权限的先验权限安全风险值一 致。
[0137] 在本申请实施例中,所述多个应用程序的应用安全风险值和多个权限的权限安全 风险值分别与先验应用安全风险值和先验权限安全风险值一致的意思是所述应用和权限 安全风险值应满足先验知识。例如,在同时满足其它约束的前提下,所述应用安全风险值应 该尽量接近所述先验应用安全风险值,所述权限安全风险值应该尽量接近所述先验权限安 全风险值。本申请实施例中,引入所述第四约束可以使得获取的应用安全风险值可以尽快 的收敛到合适的范围,具体参见上述方法实施例中对应的描述。
[0138] 在本申请实施例中,所述先验应用安全风险值和先验权限安全风险值分别可以是 通过多种方式获得,例如,在一些可能的实施方式中,可以采用领域专家设置的安全风险 值、也可以根据外部风险报告构建一安全分类得到对应的安全风险值、或者还可以采用相 关领域最先进的安全模式得到对应的安全风险值。特别的,在一种可能的实施方式中,可以 通过用户的预设来获得所述述先验应用安全风险值和先验权限安全风险值。
[0139] 在本申请实施例一种可能的实施方式中,为了使得对应的应用和权限安全风险值 的获取效率更高,可以采用PNB来得到所述先验应用安全风险值和先验权限安全风险值。
[0140] 在本申请实施例一种可能的实施方式中,可以根据所述每个申请关系对应的所述 权值以及上面所述的第一至第四约束来确定所述多个应用程序中每个应用程序的应用安 全风险值。
[0141] 例如,在一种可能的实施方式中,可通过上面方法实施例中的成本函数来获取所 述每个应用程序的应用安全风险值。
[0142] 当然,本领域技术人员可以知道,上面的成本函数仅是本申请实施例用于求取所 述应用安全风险值和权限安全风险值的一种可能的方式,还可以通过其它的公式或函数来 得到本申请实施例的所述应用安全风险值和权限安全风险值。
[0143] 如图6a所示,可选地,在本申请实施例一种可能的实施方式中,所述等级划分模 块440可以包括:
[0144] 第二划分子模块442,用于:
[0145] 对于所述至少一应用程序中的每个应用程序:
[0146] 比较预设的至少一第二阈值与所述每个应用程序的所述应用安全风险值,确定所 述每个应用程序的安全等级。
[0147] 本实施方式中,根据所述应用程序的应用安全风险值及所述至少一第二阈值对所 述多个应用程序进行分级的进一步描述参见上述方法实施例中对应的描述,这里不再赘 述。
[0148] 本申请实施例中,所述安全等级可以根据需要划分为两级、或三级…或更多。
[0149] 如图6b所示,可选地,在本申请实施例另一种可能的实施方式中,为了使得应用 程序的等级划分更加平滑,所述等级划分模块440可以包括:
[0150] 第一划分子模块441,用于根据所述多个应用程序的所述应用安全风险值的离散 度对所述多个应用程序进行安全等级划分。
[0151] 可选地,在本申请实施例一种可能的实施方式中,所述第一划分子模块441包括:
[0152] 等级划分单元4411,用于根据所述多个应用程序的所述应用安全风险值的变异系 数将所述至少一应用程序划分在至少一个安全等级,其中,属于同一安全等级的至少一应 用程序的所述应用安全风险值的变异系数在预设的一第一阈值范围内。
[0153] 这里,所述至少一应用程序的所述应用安全风险值的变异系数即为所述至少一应 用程序的应用安全风险值的方差与均值的比值。
[0154] 根据所述变异系数来对所述多个应用程序进行安全等级划分的进一步描述参见 上述方法实施例中对应的描述,这里不再赘述。
[0155] 同样,本领域技术人员可以知道,除了通过所述第一划分子模块441和所述第一 划分子模块442来确定所述多个应用程序的安全等级外,还可根据其它模块来确定所述多 个应用程序的安全等级,例如,可以通过上述排序后的所述多个应用程序的应用安全风险 值的变化梯度来确定所述多个应用程序中每个应用程序的安全等级。
[0156] 在一种可能的实施方式中,本申请实施例的装置可以应用在用户设备上,例如应 用在手机、平板电脑、笔记本电脑等用户设备上用于确定所述用户设备上的应用程序的安 全等级,使得用户可以根据一应用程序的安全等级来判断该应用程序会给用户设备带来安 全问题的可能性,进而确定是否要安装或卸载所述应用程序。可选地,在另一种可能的实施 方式中,本申请实施例的装置还可以应用在应用分发平台的服务器上,用于获取所述应用 分发平台上应用程序的安全等级,使得应用分发平台可以根据所述多个应用程序的安全等 级来对应用程序进行分类,进而方便用户根据自己的安全隐私需要选择合适安全等级的应 用程序。
[0157] 其中,在一种可能的实施方式中,所述多个应用程序为应用于移动用户设备(例 如手机、平板电脑等)上的移动应用程序,所述应用分发平台也为一些应用市场,例如可以 为Google Play等安卓应用市场、以及苹果的App Store应用市场。
[0158] 如图7所示,在本申请实施例一种可能的实施方式中提供了一种电子设备700,包 括上面所述的应用程序的风险确定装置710。
[0159] 其中,在一种可能的实施方式中,所述电子设备700可以为一用户设备,可选的, 可以为一移动用户设备。在另一种可能的实施方式中,所述电子设备700还可以为一服务 器,例如为一应用分发平台的服务器。
[0160] 图8为本申请实施例提供的又一种应用程序的风险确定装置800的结构示意图, 本申请具体实施例并不对应用程序的风险确定装置800的具体实现做限定。如图8所示, 该应用程序的风险确定装置800可以包括:
[0161] 处理器(processor) 810、通信接口(Communications Interface) 820、存储器 (memory)830、以及通信总线840。其中:
[0162] 处理器810、通信接口 820、以及存储器830通过通信总线840完成相互间的通信。
[0163] 通信接口 820,用于与比如客户端等的网元通信。
[0164] 处理器810,用于执行程序832,具体可以执行上述方法实施例中的相关步骤。
[0165] 具体地,程序832可以包括程序代码,所述程序代码包括计算机操作指令。
[0166] 处理器810可能是一个中央处理器CPU,或者是特定集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电 路。
[0167] 存储器830,用于存放程序832。存储器830可能包含高速RAM存储器,也可能还 包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序832具体可 以用于使得所述应用程序的风险确定装置800执行以下步骤:
[0168] 确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一申请 关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权限中 的一权限;
[0169] 确定所述至少一申请关系中每个申请关系的权值;
[0170] 根据所述每个申请关系对应的所述权值确定所述至少一应用程序中每个应用程 序的应用安全风险值;
[0171] 根据所述每个应用程序的所述应用安全风险值对所述至少一应用程序进行安全 等级划分。
[0172] 程序832中各步骤的具体实现可以参见上述实施例中的相应步骤和单元中对应 的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述 描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不 再赘述。
[0173] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单 元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟 以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员 可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出 本申请的范围。
[0174] 所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以 存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说 对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计 算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个 人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。 而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取 存储器(RAM, Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0175] 以上实施方式仅用于说明本申请,而并非对本申请的限制,有关【技术领域】的普通 技术人员,在不脱离本申请的精神和范围的情况下,还可以做出各种变化和变型,因此所有 等同的技术方案也属于本申请的范畴,本申请的专利保护范围应由权利要求限定。
【权利要求】
1. 一种应用程序的风险确定方法,其特征在于,包括: 确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一申请关系 中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权限中的一 权限; 确定所述至少一申请关系中每个申请关系的权值; 根据所述每个申请关系对应的所述权值确定所述至少一应用程序中每个应用程序的 应用安全风险值; 根据所述每个应用程序的所述应用安全风险值对所述至少一应用程序进行安全等级 划分。
2. 如权利要求1所述的方法,其特征在于,根据所述每个申请关系对应的所述应用程 序申请所述权限的概率确定所述每个申请关系的权值。
3. 如权利要求1所述的方法,其特征在于,根据所述每个申请关系对应的所述应用程 序所属的一应用分类中所有应用程序的权限申请历史数据确定对应的所述权值。
4. 如权利要求3所述的方法,其特征在于,根据所述应用分类中所述所有应用程序申 请所述权限的频率与所述所有应用程序分别申请所述多个权限的多个频率之和的比值得 到所述权值。
5. 如权利要求1所述的方法,其特征在于,所述根据所述每个申请关系对应的所述权 值确定所述至少一应用程序中每个应用程序的所述应用安全风险值包括: 根据所述每个申请关系对应的所述权值以及至少一约束确定所述每个应用程序的所 述应用安全风险值; 其中,所述至少一约束包括一第一约束,所述第一约束包括: 所述至少一申请关系中一申请关系对应的权值越高,所述申请关系对应的一应用程序 的应用安全风险值与所述申请关系对应的一权限的权限安全风险值越相近。
6. 如权利要求5所述的方法,其特征在于,所述至少一应用程序为多个应用程序,所述 至少一约束还包括一第二约束,所述第二约束包括: 所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序的应 用安全风险值越相近。
7. 如权利要求5所述的方法,其特征在于,所述至少一约束还包括一第三约束,所述第 三约束包括: 对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个权限 的权限安全风险值越相近。
8. 如权利要求5所述的方法,其特征在于,所述至少一约束还包括一第四约束,所述第 四约束包括: 所述至少一应用程序的应用安全风险值分别与所述至少一应用程序的先验应用安全 风险值一致; 所述多个权限的权限安全风险值分别与所述多个权限的先验权限安全风险值一致。
9. 如权利要求1所述的方法,其特征在于,所述根据所述每个应用程序的所述应用安 全风险值对所述至少一应用程序进行安全等级划分包括: 根据所述至少一应用程序的所述应用安全风险值的离散度对所述多个应用程序进行 安全等级划分。
10. 如权利要求9所述的方法,其特征在于,所述根据所述至少一应用程序的所述应用 安全风险值的离散度对所述多个应用程序进行安全等级划分包括: 根据所述至少一应用程序的所述应用安全风险值的变异系数将所述至少一应用程序 划分在至少一个安全等级,其中,属于同一安全等级的至少一应用程序的所述应用安全风 险值的变异系数在预设的一第一阈值范围内。
11. 如权利要求1所述的方法,其特征在于,所述根据所述每个应用程序的所述应用安 全风险值对所述至少一应用程序进行安全等级划分包括: 对于所述至少一应用程序中的每个应用程序: 比较预设的至少一第二阈值与所述每个应用程序的所述应用安全风险值,确定所述每 个应用程序的安全等级。
12. -种应用程序的风险确定装置,其特征在于,包括: 申请关系确定模块,用于确定至少一应用程序与多个权限之间的至少一申请关系;其 中,所述至少一申请关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申 请所述多个权限中的一权限; 权值确定模块,用于确定所述至少一申请关系中每个申请关系的权值; 风险值确定模块,用于根据所述每个申请关系对应的所述权值确定所述至少一应用程 序中每个应用程序的应用安全风险值; 等级划分模块,用于根据所述每个应用程序的所述应用安全风险值对所述至少一应用 程序进行安全等级划分。
13. 如权利要求12所述的装置,其特征在于,所述权值确定模块包括: 权值确定子模块,用于根据所述每个申请关系对应的所述应用程序申请所述权限的概 率确定所述每个申请关系的权值。
14. 如权利要求13所述的装置,其特征在于,所述权值确定子模块包括: 权值确定单元,用于根据所述每个申请关系对应的所述应用程序所属的一应用分类中 所有应用程序的权限申请历史数据确定对应的所述权值。
15. 如权利要求14所述的装置,其特征在于,所述权值确定单元包括: 权值确定子单元,用于根据所述应用分类中所述所有应用程序申请所述权限的频率与 所述所有应用程序分别申请所述多个权限的多个频率之和的比值得到所述权值。
16. 如权利要求12所述的装置,其特征在于,所述风险值确定模块包括: 风险值确定子模块,用于根据所述每个申请关系对应的所述权值以及至少一约束确定 所述每个应用程序的所述应用安全风险值; 其中,所述至少一约束包括一第一约束,所述第一约束包括: 所述至少一申请关系中一申请关系对应的权值越高,所述申请关系对应的一应用程序 的应用安全风险值与所述申请关系对应的一权限的权限安全风险值越相近。
17. 如权利要求16所述的装置,其特征在于,所述至少一应用程序为多个应用程序,所 述至少一约束还包括一第二约束,所述第二约束包括: 所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序的应 用安全风险值越相近。
18. 如权利要求16所述的装置,其特征在于,所述至少一约束还包括一第三约束,所述 第三约束包括: 对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个权限 的权限安全风险值越相近。
19. 如权利要求16所述的装置,其特征在于,所述至少一约束还包括一第四约束,所述 第四约束包括: 所述至少一应用程序的应用安全风险值分别与所述至少一应用程序的先验应用安全 风险值一致; 所述多个权限的权限安全风险值分别与所述多个权限的先验权限安全风险值一致。
20. 如权利要求12所述的装置,其特征在于,所述等级划分模块包括: 第一划分子模块,用于根据所述至少一应用程序的所述应用安全风险值的离散度对所 述多个应用程序进行安全等级划分。
21. 如权利要求20所述的装置,其特征在于,所述第一划分子模块包括: 等级划分单元,用于根据所述至少一应用程序的所述应用安全风险值的变异系数将所 述至少一应用程序划分在至少一个安全等级,其中,属于同一安全等级的至少一应用程序 的所述应用安全风险值的变异系数在预设的一第一阈值范围内。
22. 如权利要求12所述的方法,其特征在于,所述等级划分模块包括: 第二划分子模块,用于: 对于所述至少一应用程序中的每个应用程序: 比较预设的至少一第二阈值与所述每个应用程序的所述应用安全风险值,确定所述每 个应用程序的安全等级。
23. -种电子设备,其特征在于,包括权利要求12-22中任一项所述的应用程序的风险 确定装置。
【文档编号】G06F19/00GK104091071SQ201410326061
【公开日】2014年10月8日 申请日期:2014年7月9日 优先权日:2014年7月9日
【发明者】祝恒书, 于魁飞 申请人:北京智谷睿拓技术服务有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1