CN104091131B - 应用程序与权限的关系确定方法及确定装置 - Google Patents
应用程序与权限的关系确定方法及确定装置 Download PDFInfo
- Publication number
- CN104091131B CN104091131B CN201410325784.5A CN201410325784A CN104091131B CN 104091131 B CN104091131 B CN 104091131B CN 201410325784 A CN201410325784 A CN 201410325784A CN 104091131 B CN104091131 B CN 104091131B
- Authority
- CN
- China
- Prior art keywords
- application
- authority
- application program
- relation
- constraint
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例公开了一种应用程序与权限的关系确定方法及确定装置,包括:确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一申请关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权限中的一权限;确定所述至少一申请关系中每个申请关系的权值。本申请实施例的实施方案通过确定应用程序与权限之间的申请关系以及所述申请关系的权值建立应用程序与权限的二部图模型,为应用程序和/或权限的进一步分析提供了基础,特别的,在一种可能的实施方案中,为应用程序的安全风险评估提供了基础。
Description
技术领域
本申请涉及一种数据处理方法,尤其涉及一种应用程序与权限的关系确定技术方案。
背景技术
近年来随着移动设备与移动互联网的高速发展,移动应用程序的数量出现了爆炸式的增长。与此同时,移动应用程序的功能被极大的扩展,用以丰富和满足用户各种各样的需求,例如:基于位置的服务(Location Based Services,LBS),基于社交平台的服务(Social Networking Services,SNS),等等。事实上,这些丰富的功能依赖于各种用户数据和设备的使用权限,例如位置访问权、通讯录访问权、短信访问权等等。这些访问权限的使用,使得用户产生了对于自身隐私、安全的担心,因而越来越多的用户希望能了解应用程序的权限访问安全性。
发明内容
本申请的目的是:提供一种确定应用程序与权限的关系技术方案。
第一方面,本申请一个实施方案提供了一种应用程序与权限的关系确定方法,包括:
确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一申请关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权限中的一权限;
确定所述至少一申请关系中每个申请关系的权值。
第二方面,本申请一个实施方案提供了一种应用程序与权限的关系确定装置,包括:
申请关系确定模块,用于确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一申请关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权限中的一权限;
权值确定模块,用于确定所述至少一申请关系中每个申请关系的权值。
本申请实施例的至少一个实施方案通过确定应用程序与权限之间的申请关系以及所述申请关系的权值建立应用程序与权限的二部图模型,为应用程序和/或权限的进一步分析提供了基础,特别的,在一种可能的实施方案中,为应用程序的安全风险评估提供了基础。
附图说明
图1为本申请实施例的一种应用程序与权限的关系确定方法的流程图;
图2为本申请实施例的一种关系确定方法中应用程序与权限的二部图示意图;
图3为本申请实施例另一种应用程序与权限的关系确定方法的流程图;
图4为本申请实施例一种应用程序与权限的关系确定装置的结构示意框图;
图5a为本申请实施例另一种应用程序与权限的关系确定装置的结构示意框图;
图5b和5c分别为本申请实施例两种关系确定装置的第一确定单元的结构示意框图;
图6为本申请实施例又一种应用程序与权限的关系确定装置的结构示意框图;
图7为本申请实施例一种电子设备的结构示意框图;
图8为本申请实施例再一种应用程序与权限的关系确定装置的结构示意框图。
具体实施方式
下面结合附图(若干附图中相同的标号表示相同的元素)和实施例,对本申请的具体实施方式作进一步详细说明。以下实施例用于说明本申请,但不用来限制本申请的范围。
本领域技术人员可以理解,本申请中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
对于应用于一用户设备的一应用程序来说,其可能会申请使用该用户设备的至少一数据使用的权限,例如一桌面应用程序申请用户设备中存储的照片数据的使用权限。本申请的发明人发现,在对应用程序的安全风险进行评估时,结合考虑应用程序与权限之间潜在的关系会提高评估的准确性。
如图1所示,本申请实施例提供了一种应用程序与权限的关系确定方法,包括:
S110确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一申请关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权限中的一权限;
S120确定所述至少一申请关系中每个申请关系的权值。
本申请实施例中所述至少一应用程序可以为一个应用程序,也可以为多个应用程序,本申请实施例下面的实施方式以所述至少一应用程序为多个应用程序进行描述。所述多个应用程序与所述多个权限之间具有多个申请关系。
如图2所示,在本申请实施例中,发明人考虑到应用程序和权限的特性,提出了基于二部图的模型,来确定应用程序与权限之间的关系。其中,将多个应用程序作为二部图中的第一组节点,将多个权限作为二部图中的第二组节点,两组节点之间的连接由应用程序与权限的申请关系确定,即,当且仅当一应用程序申请了一权限时,所述应用程序与所述权限之间具有申请关系,建立有连接。
举例来说,本发明提供的应用程序与权限的关系确定装置作为本实施例的执行主体,执行S110~S120。具体地,所述确定装置可以以软件、硬件或软硬件结合的方式设置在用户设备或服务器设备中。
本申请实施例的实施方案通过确定应用程序与权限之间的申请关系以及所述申请关系的权值建立应用程序与权限的二部图模型,为应用程序和/或权限的进一步分析提供了基础,特别的,在一种可能的实施方案中,为应用程序的安全风险评估提供了基础。
下面的实施例中,以将本申请实施例应用在应用程序的安全风险评估方面为例进一步说明本申请实施例的方法。
如图3所示,为了帮助用户根据自己的安全隐私需要选择合适的应用程序,在本申请实施例的一种可能的实施方式中,除了上面所述的步骤S110和S120以外,还包括:
S130根据所述每个申请关系对应的所述权值确定所述多个应用程序中每个应用程序的应用安全风险值。
当然,图1所示的方法除了可以被用于进行所述多个应用程序的应用安全风险值的评估外,还可以用于其他方面,例如,通过所述应用程序与权限之间的申请关系以及对应的权值对应用程序和/或权限进行基于所述申请关系的聚类划分等。
下面结合图2所示的二部图进一步说明本申请实施例方法的各步骤:
在本申请实施例中,通过图2所示的二部图表示本申请实施例多个应用程序与多个权限之间的关系,其中所述二部图G可以表示为:G={V,E,W},其中,
V为节点集,有V={Va,Vp},
Va为应用程序集,包括所述多个应用程序a1~aM,即Va={a1,···,aM},M为所述多个应用程序的个数,为正整数;
Vp为权限集,包括所述多个权限p1~pN,即Vp={p1,···,pN};N为所述多个权限的个数,为正整数;
E为申请关系集,其中,当且仅当所述多个应用程序中的一应用程序ai申请了所述多个权限中的一权限pj时,存在一申请关系eij∈E;
W为权值集,一权值wij∈W表示所述申请关系eij的权值。
如图2所示的实施方式中,二部图包括4个应用程序a1~a4,3个权限p1~p3,(在图2所示实施例中,所述应用程序a1~a4分别为:愤怒的小鸟(游戏类)、切水果(游戏类)、脸谱(社交类)以及麦块(游戏类);所述权限p1为读取手机状态、权限p2为访问精确位置、权限p3表示读取联系人);申请关系集包含8个申请关系(图2中通过应用程序与权限之间的连线表示):e11,e12,e21,e22,e32,e33,e42以及e43,它们分别对应的权值为0.3,0.7,0.2,0.8,0.5,0.5,0.4以及0.6。
本申请实施例中,所述权值wij表示所述应用程序ai与所述权限pj的相关性。在一种可能的实施方式中,所述权值wij表示所述应用程序ai申请所述权限pj的概率。这里应用程序ai申请权限pj的概率指的是,在确定所述应用程序ai申请了哪些权限之前,其申请权限pj的可能性。例如,对于图2中的申请关系e11来说,0.3表示应用程序a1申请权限p1的概率为0.3。
当然,在其它可能的实施方式中,所述权值还可以根据其它依据确定,来表示应用程序与权限之间的相关程度,特别的,在一种可能的实施方式中,可以根据用户的设定指令确定所述权值。
如上面所述的,在本申请实施例一种可能的实施方式中,所述步骤S120在确定所述权值时,可以根据所述每个申请关系对应的所述应用程序申请所述权限的概率确定所述每个申请关系的权值。
在本申请实施例中,可以根据历史数据获取所述概率。可选地,在一种可能的实施方式中,可以根据所述每个申请关系对应的所述应用程序所属的一应用分类中所有应用程序的权限申请历史数据确定对应的所述权值。在本实施方式中,所述应用分类可以是根据所述应用程序的功能划分的分类,例如游戏、办公、地图等;还可以是根据应用程序的开发商进行的分类,或者还可以是根据应用程序其它方面的相似性等进行的聚类分类等等。当然,本领域的技术人员可以知道,所述应用分类还可以是其它的分类标准进行的分类。
可选地,在本申请实施例一种可能的实施方式中,可以根据所述应用程序所属的所述应用分类中所有应用程序申请所述权限的频率与所述所有应用程序分别申请所述多个权限的多个频率之和的比值得到所述权值。可以通过下面的公式表示:
其中fij表示所述应用程序ai所属的所述应用分类中的应用程序申请权限pj的频率。
在本申请实施例一种可能的实施方式中,为了得到归一化的频率,可以通过所述应用分类中申请了一权限的应用程序的数量与该应用分类中所有应用程序的比值得到所述权限对应的所述频率。当然,在本申请实施例其它可能的实施方式中,还可以通过其它方式确定所述频率。
在本申请实施例其它可能的实施方式中,除了上述根据权限的申请频率确定所述每个申请关系的权值外,还可以根据其它参数确定所述权值,例如外部的先验知识,所述先验知识例如可以为本领域专家的意见、其它方法计算出了应用程序与权限之间的相关值等。
在本申请实施例一种可能的实施方式中,可选地,所述步骤S130可以通过至少一约束来使得得到的应用程序的应用安全风险值更加准确。
在一种可能的实施方式中,所述至少一约束包括一第一约束,所述第一约束包括:
所述多个申请关系中一申请关系对应的权值越高,所述申请关系对应的应用程序的应用安全风险值与所述申请关系对应的权限的权限安全风险值越相近。
在本申请实施例中,所述应用安全风险值表示对应的应用程序的安全风险大小,所述权限安全风险值表示对应的权限的安全风险大小。
本领域技术人员可以知道,所述第一约束考虑了应用程序与权限之间的主导关系。其中,一应用程序与一权限的权值越高,二者之间的相关性越强,当其中一个的风险高时,另一个必然也会高,反之亦然。以图2所示的实施例为例,对于权限p2来说,其对应的4个申请关系e12,e22,e32和e42分别对应的权值为0.7、0.8、0.5和0.4,因此,根据所述第一约束可以知道,权限p2的权限安全风险值应该与应用程序a2的应用安全风险值最接近。
可选的,在一种可能的实施方式中,所述至少一约束还包括一第二约束,所述第二约束包括:
所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序的应用安全风险值越相近。
在本实施方式中,所述权限申请状况包括:应用程序申请的权限和应用程序申请权限的申请关系对应的权值。其中,当两个应用程序申请的权限越相似,同时申请相同权限的权值越相似,二者的应用安全风险值应该越相近。如图2所示的应用程序a1和应用程序a1都申请了权限p1和权限p2,与应用程序a3或应用程序a4相比,此时,这两个应用程序的应用安全风险值应该是更接近的;此外,该两个应用程序不但申请了相同的权限,其分别申请权限p1和权限p2的权值也相近,因此可以预见的是,应用程序a1和应用程序a2的应用安全风险值应该是更相近的。同样,应用程序a3和应用程序a4的应用安全风险值也应该是更相近的。当然,应用程序a1或应用程序a2与应用程序a3或应用程序a4的应用安全风险值应该是比较不相近的。
可选地,在一种可能的实施方式中,可以通过一应用程序对应的所有申请关系的权值来向量表示所述应用程序,例如应用程序ai表示为其中,所述向量包含N个元素,依次分别对应于N个权限,其中,当所述应用程序申请一权限时,对应的元素为对应的权值;当所述应用程序ai没有申请一权限时,用0代替该元素(此时可以看成所述应用程序ai申请该权限的权值为0);应用程序aj表示为例如,图2所示的实施例中,应用程序a1对应的向量此时可以通过这两个应用程序对应的向量的余弦距离来确定这两个应用程序的相似度:
当然,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法也可以用于本申请实施例确定两个应用程序的相似程度,例如可以通过两个向量之间的欧式距离或KL距离(Kullback-Leibler Divergence)来确定所述两个向量的相似度。
可选的,在一种可能的实施方式中,所述至少一约束还包括一第三约束,所述第三约束包括:
对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个权限的权限安全风险值越相近。
在本申请实施例中,所述权限的被申请状况包括申请所述权限的应用程序以及所述应用程序申请所述权限对应申请关系的权值。其中,申请两个权限的应用程序越相似、同时相同的应用程序分别申请所述两个权限的申请关系的权值越相似,所述两个权限对应的权限安全风险值越相近。仍然以图2所示的实施方式为例,可以看出,权限p1与权限p2同时被应用程序a1和应用程序a2申请了,同时二者分别被应用程序a1和应用程序a2申请的权值相似,权限p2与权限p3又同时被应用程序a3和应用程序a4申请,而权限p1和权限p3没有被相同的应用程序申请,因此可以知道的是,在权限p2和权限p3中,权限p1的权限安全风险值更接近权限p2的权限安全风险值。本领域的技术人员可以知道,如果权限p3仅被应用程序a1和应用程序a2申请,则权限p1与权限p3的权限安全风险值会更接近。
同样可选的,在一种可能的实施方式中,可以通过一权限对应的所有申请关系的权值来向量表示所述权限,例如权限pi表示为 其中,所述向量包含M个元素,依次分别对应于M个应用程序,其中,当一应用程序申请所述权限pi时,对应的元素为对应的权值;当一应用程序没有申请所述权限pi时,用0代替该元素(此时可以看成所述应用程序申请所述权限的权值为0);权限pj表示为例如,图2所示的实施例中,权限p1对应的向量这里的两个0分别表示应用程序a3和a4没有申请权限p1。此时可以通过这两个权限对应的向量的余弦距离来确定这两个权限的相似度:
同样的,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法也可以用于本申请实施例确定两个权限的相似程度,例如上面所述的欧式距离。
为了使得到的应用安全风险值更加准确,还可以将外部的先验知识引入到应用安全风险值的计算中,因此,可选地,在一种可能的实施方式中,所述至少一约束还包括一第四约束,所述第四约束包括:
所述多个应用程序的应用安全风险值分别与所述多个应用程序的先验应用安全风险值一致;
所述多个权限的权限安全风险值分别与所述多个权限的先验权限安全风险值一致。
在本申请实施例中,所述多个应用程序的应用安全风险值和多个权限的权限安全风险值分别与先验应用安全风险值和先验权限安全风险值一致的意思是所述应用和权限安全风险值应满足先验知识,例如:第一应用程序的先验应用安全风险值大于第二应用程序的先验应用安全风险值,则所述第一应用程序的应用安全风险值一般也应大于所述第二应用程序的应用安全风险值。本申请实施例中,引入所述第四约束可以使得获取的应用安全风险值可以尽快的收敛到合适的范围。在一种可能的实施方式中,对于一应用程序,可能会有多个应用安全风险值满足上面的第一、第二和第三约束,那么所述第四约束可以帮助确定所述应用程序对应的多个应用安全风险值中哪个才是该应用程序更合适的应用安全风险值。
在本申请实施例中,所述先验应用安全风险值和先验权限安全风险值分别可以是通过多种方式获得,例如,在一些可能的实施方式中,可以采用领域专家设置的安全风险值、也可以根据外部风险报告构建一安全分类得到对应的安全风险值、或者还可以采用相关领域最先进的安全模式得到对应的安全风险值。特别的,在一种可能的实施方式中,可以通过用户的预设来获得所述述先验应用安全风险值和先验权限安全风险值。
在本申请实施例一种可能的实施方式中,为了使得对应的应用和权限安全风险值的获取效率更高,可以采用信息先验的朴素贝叶斯(Naive Bayes with informationPriors,PNB)来得到所述先验应用安全风险值和先验权限安全风险值。
在本申请实施例一种可能的实施方式中,可以根据所述每个申请关系对应的所述权值以及上面所述的第一至第四约束来确定所述多个应用程序中每个应用程序的应用安全风险值。
例如,在一种可能的实施方式中,定义一结合上面四个约束的成本函数,例如表示为:
其中,表示应用程序ai的应用安全风险值,表示应用程序ai的先验应用安全风险值,表示权限pj的权限安全风险值,表示权限pj的先验权限安全风险值,上面第一部分(第一个大括号内的部分)表示了上面所述的第四约束,第二部分(第二个大括号内的部分)表示了所述第二和第三约束,第三部分表示了所述第一约束。参数λ和μ分别为所述第四约束的参数和所述第二和第三约束的参数,用于控制上述的第一部分和第二部分,用户可以根据需要设置这两个参数。可以看出,当λ和μ为零时,本申请实施例的成本函数不受所述第二、第三和第四约束的约束,而仅需要考虑所述第一约束。
可以看出,为了满足上面所述的约束,必须得到合适的和使得所述成本函数尽可能小。因此,在一种可能的实施方式中,可以先给所述和赋初始值,例如0到1之间的值,在一种可能的实施方式中,例如可以令: 再通过梯度下降法不断的迭代更新这两个值,直到使得所述成本函数小于一设定的阈值。
当然,本领域技术人员可以知道,上面的成本函数仅是本申请实施例用于求取所述应用安全风险值的一种可能的方式,还可以通过其它方法来得到本申请实施例的所述应用安全风险值。
在本申请实施例中,在得到了所述多个应用程序的应用安全风险值之后,就可以根据所述多个应用程序的安全风险进行进一步的操作。例如,在一种可能的实施方式中,用户可以根据一应用程序的安全风险值来判断该应用程序会给用户设备带来安全问题的可能性,进而确定是否要安装或卸载所述应用程序。又例如,在另一种可能的实施方式中,一应用分发平台可以根据所述应用安全风险值对所述多个应用程序进行排序;例如,在应用分发平台上可以根据所述排序对应用程序进行基于安全风险的推荐。
其中,在一种可能的实施方式中,所述多个应用程序为应用于移动用户设备(例如手机、平板电脑等)上的移动应用程序,所述应用分发平台也为一些应用市场,例如可以为Google Play等安卓应用市场、以及苹果的App Store应用市场。
本领域技术人员可以理解,在本申请具体实施方式的上述方法中,各步骤的序号大小并不意味着执行顺序的先后,各步骤的执行顺序应以其功能和内在逻辑确定,而不应对本申请具体实施方式的实施过程构成任何限定。
如图4所示,本申请实施例一种可能的实施方式提供了一种应用程序与权限的关系确定装置400,包括:
申请关系确定模块410,用于确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一申请关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权限中的一权限;
权值确定模块420,用于确定所述至少一申请关系中每个申请关系的权值。
与上面所述的方法实施例中类似的,本申请实施例下面的实施方式以所述至少一应用程序为多个应用程序为例进行进一步的描述。此时,所述申请关系确定模块410用于确定所述多个应用程序与所述多个权限之间的多个申请关系。
本申请实施例的装置400通过基于一二部图的模型确定所述多个应用程序和多个权限之间的关系。具体参见图1所示实施例中对应的描述。
本申请实施例的实施方案通过确定应用程序与权限之间的申请关系以及所述申请关系的权值建立应用程序与权限的二部图模型,为应用程序和/或权限的进一步分析提供了基础,特别的,在一种可能的实施方案中,为应用程序的安全风险评估提供了基础。
本申请实施例通过下面的实施方式进一步说明本申请实施例的各模块。
在本申请实施例一种可能的实施方式中,对于所述多个应用程序与多个权限之间的多个申请关系以及每个申请关系对应的权值的进一步描述参见上述方法实施例中对图2所示实施方式的描述,这里不再赘述。
在本申请实施例中,所述申请关系的权值对应于所述申请关系对应的应用程序与权限之间的相关性,一般来说,所述相关性越强,所述权值的大小越大。因此,所述权值确定模块420根据所述应用程序与权值之间的相关性就可以确定所述权值的大小。在一种可能的实施方式中,可以通过所述应用程序申请所述权限的概率的大小来获得所述相关性。当然,本领域的技术人员可以知道,在其它可能的实施方式中,除了所述概率外,还可以通过其它方式确定所述应用程序与权限之间的相关性。
因此,可选地,如图5a所示,在本申请实施例一种可能的实施方式中,所述权值确定模块420可以包括:
第一确定子模块421,用于根据所述每个申请关系对应的所述应用程序申请所述权限的概率确定所述每个申请关系的权值。
在本申请实施例一种可能的实施方式中,可以根据历史数据获取所述概率。进一步的,在本实施方式中,所述第一确定子模块421可以包括:
第一确定单元4211,用于根据所述每个申请关系对应的所述应用程序所属的一应用分类中所有应用程序的权限申请历史数据确定对应的所述权值。
在本实施方式中,所述应用分类可以是根据应用程序的功能划分的分类,例如游戏、办公、地图等;还可以是根据应用程序的开发商进行的分类,或者还可以是根据应用程序其它方面的相似性等进行的聚类分类等等。当然,本领域的技术人员可以知道,所述应用分类还可以是以其它的分类标准进行的分类。
如图5b所示,在一种可能的实施方式中,所述第一确定单元4211包括:
第一确定子单元4211a,用于根据所述应用分类中所述所有应用程序申请所述权限的频率来确定所述权值。
如图5c所示,在另一种可能的实施方式中,为了计算方便,所述第一确定单元4211包括:
第二确定子单元4211b,用于根据所述应用分类中所有应用程序申请所述权限的频率与所述所有应用程序分别申请所述多个权限的多个频率之和的比值得到所述权值。具体参见图2所示方法实施例中对应的描述。
在本申请实施例一种可能的实施方式中,为了得到归一化的频率,可以通过所述应用分类中申请了一权限的应用程序的数量与该应用分类中所有应用程序的比值得到所述权限对应的所述频率。当然,在本申请实施例其它可能的实施方式中,还可以通过其它方式确定所述频率。
如图6所示,在本申请实施例的一种可能的实施方式中,所述装置400用于为应用程序进行安全风险评估,因此,除了图4所示的实施例中记载的申请关系确定模块410和权值确定模块420外,所述装置400还包括:
一风险值确定模块430,用于根据所述每个申请关系对应的所述权值确定所述多个应用程序中每个应用程序的应用安全风险值。
为了更快更准确的确定所述每个应用程序的应用安全风险值,可选地,在一种可能的实施方式中,所述风险值确定模块430包括:
风险值确定子模块431,用于根据所述每个申请关系对应的所述权值以及至少一约束确定所述每个应用程序的所述应用安全风险值;
其中,所述至少一约束包括一第一约束,所述第一约束包括:
所述多个申请关系中一申请关系对应的权值越高,所述申请关系对应的应用程序的应用安全风险值与所述申请关系对应的权限的权限安全风险值越相近。
在本申请实施例中,所述应用安全风险值表示对应的应用程序的安全风险大小,所述权限安全风险值表示对应的权限的安全风险大小。
本领域技术人员可以知道,所述第一约束考虑了应用程序与权限之间的主导关系。其中,一应用程序与一权限的权值越高,二者之间的相关性越强,当其中一个的风险高时,另一个必然也会高,反之亦然。具体参见上述方法实施例中对应的描述。
可选的,在一种可能的实施方式中,所述至少一约束还包括一第二约束,所述第二约束包括:
所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序的应用安全风险值越相近。
在本实施方式中,所述权限申请状况包括:应用程序申请的权限和应用程序申请权限的申请关系对应的权值。其中,当两个应用程序申请的权限越相似,同时申请相同权限的权值越相似,二者的应用安全风险值应该越相近。具体参见上述方法实施例中对应的描述。
可选地,在一种可能的实施方式中,可以通过一应用程序对应的所有申请关系的权值来向量表示所述应用程序,此时可以通过两个应用程序的余弦距离来确定两个应用程序的相似度。具体参见上述方法实施例中对应的描述。
当然,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法也可以用于本申请实施例确定两个应用程序的相似程度。
可选的,在一种可能的实施方式中,所述至少一约束还包括一第三约束,所述第三约束包括:
对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个权限的权限安全风险值越相近。
在本申请实施例中,所述权限的被申请状况包括申请所述权限的应用程序以及所述应用程序申请所述权限对应申请关系的权值。其中,申请两个权限的应用程序越相似、同时相同的应用程序分别申请所述两个权限的申请关系的权值越相似,所述两个权限对应的权限安全风险值越相近。
同样可选的,在一种可能的实施方式中,可以通过一权限对应的所有申请关系的权值来向量表示所述权限,此时可以通过两个权限的余弦距离来确定两个权限的相似度。具体参见上述方法实施例中对应的描述。
同样的,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法也可以用于本申请实施例确定两个权限的相似程度。
为了使得到的应用安全风险值更加准确,还可以将外部的先验知识引入到应用安全风险值的计算中,因此,可选地,在一种可能的实施方式中,所述至少一约束还包括一第四约束,所述第四约束包括:
所述多个应用程序的应用安全风险值分别与所述多个应用程序的先验应用安全风险值一致;
所述多个权限的权限安全风险值分别与所述多个权限的先验权限安全风险值一致。
在本申请实施例中,所述多个应用程序的应用安全风险值和多个权限的权限安全风险值分别与先验应用安全风险值和先验权限安全风险值一致的意思是所述应用和权限安全风险值应满足先验知识。例如,在同时满足其它约束的前提下,所述应用安全风险值应该尽量接近所述先验应用安全风险值,所述权限安全风险值应该尽量接近所述先验权限安全风险值。本申请实施例中,引入所述第四约束可以使得获取的应用安全风险值可以尽快的收敛到合适的范围,具体参见上述方法实施例中对应的描述。
在本申请实施例中,所述先验应用安全风险值和先验权限安全风险值分别可以是通过多种方式获得,例如,在一些可能的实施方式中,可以采用领域专家设置的安全风险值、也可以根据外部风险报告构建一安全分类得到对应的安全风险值、或者还可以采用相关领域最先进的安全模式得到对应的安全风险值。特别的,在一种可能的实施方式中,可以通过用户的预设来获得所述述先验应用安全风险值和先验权限安全风险值。
在本申请实施例一种可能的实施方式中,为了使得对应的应用和权限安全风险值的获取效率更高,可以采用PNB来得到所述先验应用安全风险值和先验权限安全风险值。
在本申请实施例一种可能的实施方式中,可以根据所述每个申请关系对应的所述权值以及上面所述的第一至第四约束来确定所述多个应用程序中每个应用程序的应用安全风险值。
例如,在一种可能的实施方式中,可通过上面方法实施例中的成本函数来获取所述每个应用程序的应用安全风险值。
当然,本领域技术人员可以知道,上面的成本函数仅是本申请实施例用于求取所述应用安全风险值和权限安全风险值的一种可能的方式,还可以通过其它的公式或函数来得到本申请实施例的所述应用安全风险值和权限安全风险值。
在本申请实施例中,在得到了所述多个应用程序的应用安全风险值之后,就可以根据所述多个应用程序的安全风险进行进一步的操作。例如,在一种可能的实施方式中,用户可以根据一应用程序的安全风险值来判断该应用程序会给用户设备带来安全问题的可能性,进而确定是否要安装或卸载所述应用程序。又例如,在另一种可能的实施方式中,一应用分发平台可以根据所述应用安全风险值对所述多个应用程序进行排序;例如,在应用分发平台上可以根据所述排序对应用程序进行基于安全风险的推荐。
其中,在一种可能的实施方式中,所述多个应用程序为应用于移动用户设备(例如手机、平板电脑等)上的移动应用程序,所述应用分发平台也为一些应用市场,例如可以为Google Play等安卓应用市场、以及苹果的App Store应用市场。
因此,在一种可能的实施方式中,所述装置400还包括:
一应用排序模块440,用于根据所述应用安全风险值对所述多个应用程序进行排序。
如图7所示,在本申请实施例一种可能的实施方式中提供了一种电子设备700,包括上面所述的关系确定装置710。
其中,在一种可能的实施方式中,所述电子设备700可以为一用户设备,可选的,可以为一移动用户设备。在另一种可能的实施方式中,所述电子设备700还可以为一服务器。
图8为本申请实施例提供的又一种应用程序与权限的关系确定装置800的结构示意图,本申请具体实施例并不对应用程序与权限的关系确定装置800的具体实现做限定。如图8所示,该应用程序与权限的关系确定装置800可以包括:
处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830、以及通信总线840。其中:
处理器810、通信接口820、以及存储器830通过通信总线840完成相互间的通信。
通信接口820,用于与比如客户端等的网元通信。
处理器810,用于执行程序832,具体可以执行上述方法实施例中的相关步骤。
具体地,程序832可以包括程序代码,所述程序代码包括计算机操作指令。
处理器810可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。
存储器830,用于存放程序832。存储器830可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序832具体可以用于使得所述应用程序与权限的关系确定装置800执行以下步骤:
确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一申请关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权限中的一权限;
确定所述至少一申请关系中每个申请关系的权值。
程序832中各步骤的具体实现可以参见上述实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上实施方式仅用于说明本申请,而并非对本申请的限制,有关技术领域的普通技术人员,在不脱离本申请的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本申请的范畴,本申请的专利保护范围应由权利要求限定。
Claims (19)
1.一种应用程序与权限的关系确定方法,其特征在于,包括:
确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一申请关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权限中的一权限;
确定所述至少一申请关系中每个申请关系的权值;
根据所述每个申请关系对应的所述权值以及至少一约束确定所述至少一应用程序中每个应用程序的应用安全风险值,其中,所述至少一约束包括一第一约束,所述第一约束包括:
所述至少一申请关系中一申请关系对应的权值越高,所述申请关系对应的一应用程序的应用安全风险值与所述申请关系对应的一权限的权限安全风险值越相近。
2.如权利要求1所述的方法,其特征在于,根据所述每个申请关系对应的所述应用程序申请所述权限的概率确定所述每个申请关系的权值。
3.如权利要求1所述的方法,其特征在于,根据所述每个申请关系对应的所述应用程序所属的一应用分类中所有应用程序的权限申请历史数据确定对应的所述权值。
4.如权利要求3所述的方法,其特征在于,根据所述应用分类中所述所有应用程序申请所述权限的频率来确定所述权值。
5.如权利要求3所述的方法,其特征在于,根据所述应用分类中所述所有应用程序申请所述权限的频率与所述所有应用程序分别申请所述多个权限的多个频率之和的比值得到所述权值。
6.如权利要求1所述的方法,其特征在于,所述至少一应用程序为多个应用程序,所述至少一约束还包括一第二约束,所述第二约束包括:
所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序的应用安全风险值越相近。
7.如权利要求1所述的方法,其特征在于,所述至少一约束还包括一第三约束,所述第三约束包括:
对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个权限的权限安全风险值越相近。
8.如权利要求1所述的方法,其特征在于,所述至少一约束还包括一第四约束,所述第四约束包括:
所述至少一应用程序的应用安全风险值分别与所述至少一应用程序的先验应用安全风险值一致;
所述多个权限的权限安全风险值分别与所述多个权限的先验权限安全风险值一致。
9.如权利要求5所述的方法,其特征在于,所述至少一应用程序为多个应用程序,所述方法还包括:根据所述应用安全风险值对所述多个应用程序进行排序。
10.一种应用程序与权限的关系确定装置,其特征在于,包括:
申请关系确定模块,用于确定至少一应用程序与多个权限之间的至少一申请关系;其中,所述至少一申请关系中的每个申请关系对应于所述至少一应用程序中的一应用程序申请所述多个权限中的一权限;
权值确定模块,用于确定所述至少一申请关系中每个申请关系的权值;
风险值确定模块,用于根据所述每个申请关系对应的所述权值确定所述至少一应用程序中每个应用程序的应用安全风险值;
所述风险值确定模块包括:
风险值确定子模块,用于根据所述每个申请关系对应的所述权值以及至少一约束确定所述每个应用程序的所述应用安全风险值;
其中,所述至少一约束包括一第一约束,所述第一约束包括:
所述至少一申请关系中一申请关系对应的权值越高,所述申请关系对应的一应用程序的应用安全风险值与所述申请关系对应的一权限的权限安全风险值越相近。
11.如权利要求10所述的装置,其特征在于,所述权值确定模块包括:
第一确定子模块,用于根据所述每个申请关系对应的所述应用程序申请所述权限的概率确定所述每个申请关系的权值。
12.如权利要求11所述的装置,其特征在于,所述第一确定子模块包括:
第一确定单元,用于根据所述每个申请关系对应的所述应用程序所属的一应用分类中所有应用程序的权限申请历史数据确定对应的所述权值。
13.如权利要求12所述的装置,其特征在于,所述第一确定单元包括:
第一确定子单元,用于根据所述应用分类中所述所有应用程序申请所述权限的频率来确定所述权值。
14.如权利要求12所述的装置,其特征在于,所述第一确定单元包括:
第二确定子单元,用于根据所述应用分类中所述所有应用程序申请所述权限的频率与所述所有应用程序分别申请所述多个权限的多个频率之和的比值得到所述权值。
15.如权利要求10所述的装置,其特征在于,所述至少一应用程序为多个应用程序,所述至少一约束还包括一第二约束,所述第二约束包括:
所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序的应用安全风险值越相近。
16.如权利要求10所述的装置,其特征在于,所述至少一约束还包括一第三约束,所述第三约束包括:
对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个权限的权限安全风险值越相近。
17.如权利要求10所述的装置,其特征在于,所述至少一约束还包括一第四约束,所述第四约束包括:
所述至少一应用程序的应用安全风险值分别与所述至少一应用程序的先验应用安全风险值一致;
所述多个权限的权限安全风险值分别与所述多个权限的先验权限安全风险值一致。
18.如权利要求14所述的装置,其特征在于,所述至少一应用程序为多个应用程序,所述装置还包括:
应用排序模块,用于根据所述应用安全风险值对所述多个应用程序进行排序。
19.一种电子设备,其特征在于,包括权利要求10-18中任一项所述的关系确定装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410325784.5A CN104091131B (zh) | 2014-07-09 | 2014-07-09 | 应用程序与权限的关系确定方法及确定装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410325784.5A CN104091131B (zh) | 2014-07-09 | 2014-07-09 | 应用程序与权限的关系确定方法及确定装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104091131A CN104091131A (zh) | 2014-10-08 |
CN104091131B true CN104091131B (zh) | 2017-09-12 |
Family
ID=51638846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410325784.5A Active CN104091131B (zh) | 2014-07-09 | 2014-07-09 | 应用程序与权限的关系确定方法及确定装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104091131B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106570390A (zh) * | 2016-10-27 | 2017-04-19 | 努比亚技术有限公司 | 一种设备权限的控制方法和装置 |
CN108270746B (zh) * | 2016-12-31 | 2021-03-16 | 中国移动通信集团河北有限公司 | 用户访问请求处理方法及装置 |
CN108809775B (zh) * | 2018-06-01 | 2020-07-10 | 上海掌门科技有限公司 | 对智能设备进行控制的方法及设备 |
CN110505348B (zh) * | 2019-08-27 | 2020-10-09 | 烟台中科网络技术研究所 | 一种app收集用户个人敏感信息的风险评估方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100306834A1 (en) * | 2009-05-19 | 2010-12-02 | International Business Machines Corporation | Systems and methods for managing security and/or privacy settings |
US20120096435A1 (en) * | 2010-10-18 | 2012-04-19 | Microsoft Corporation | Capability-based application recommendation |
CN102467642B (zh) * | 2010-11-17 | 2015-02-25 | 北大方正集团有限公司 | 用于应用软件的权限控制方法和装置 |
CN102098306B (zh) * | 2011-01-27 | 2013-08-28 | 北京信安天元科技有限公司 | 基于关联矩阵的网络攻击路径分析方法 |
CN103024606B (zh) * | 2012-12-10 | 2016-02-10 | 乐视网信息技术(北京)股份有限公司 | 网络视频播放器中添加扩展应用的方法和装置 |
CN103617397B (zh) * | 2013-12-13 | 2016-11-16 | 北京邮电大学 | 智能终端中应用的安全性评估方法及系统 |
-
2014
- 2014-07-09 CN CN201410325784.5A patent/CN104091131B/zh active Active
Non-Patent Citations (1)
Title |
---|
基于类别以及权限的Android恶意程序检测;张叶慧;《计算机工程与设计》;20140531;第35卷(第5期);第1568-1571页,图2、3 * |
Also Published As
Publication number | Publication date |
---|---|
CN104091131A (zh) | 2014-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104090967B (zh) | 应用程序推荐方法及推荐装置 | |
CN104091071B (zh) | 应用程序的风险确定方法及确定装置 | |
CN105468742B (zh) | 恶意订单识别方法及装置 | |
US11809955B2 (en) | Processing images using deep neural networks | |
CN107688823B (zh) | 一种图像特征获取方法及装置,电子设备 | |
CN107438050B (zh) | 识别网站的潜在恶意用户的方法和装置 | |
US8843492B2 (en) | Record linkage based on a trained blocking scheme | |
US9875294B2 (en) | Method and apparatus for classifying object based on social networking service, and storage medium | |
CN104156467B (zh) | Api推荐方法及api推荐装置 | |
CN110378731A (zh) | 获取用户画像的方法、装置、服务器及存储介质 | |
CN106776662A (zh) | 一种照片的分类整理方法和装置 | |
CN104091131B (zh) | 应用程序与权限的关系确定方法及确定装置 | |
CN108228844A (zh) | 一种图片筛选方法及装置、存储介质、计算机设备 | |
CN107577786B (zh) | 一种基于联合聚类的矩阵分解推荐方法 | |
CN106599194A (zh) | 标签确定方法及装置 | |
CN104077723A (zh) | 一种社交网络推荐系统及方法 | |
CN104091117B (zh) | 基于安全风险的聚类方法及聚类装置 | |
CN104156468B (zh) | Api推荐方法及api推荐装置 | |
CN110163245A (zh) | 业务类别预测方法及系统 | |
CN109598513B (zh) | 一种风险识别方法和装置 | |
CN104035978B (zh) | 社团发现方法及系统 | |
CN108764374A (zh) | 图像分类方法、系统、介质和电子设备 | |
Wu et al. | Network classification using adjacency matrix embeddings and deep learning | |
CN111667018B (zh) | 一种对象聚类的方法、装置、计算机可读介质及电子设备 | |
TW201926087A (zh) | 問題推送方法及裝置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |