System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于密度聚类权重分配的APP风险估测方法及系统技术方案_技高网
当前位置: 首页 > 专利查询>武汉大学专利>正文

一种基于密度聚类权重分配的APP风险估测方法及系统技术方案

技术编号:42394858 阅读:3 留言:0更新日期:2024-08-16 16:18
本发明专利技术提出了一种基于密度聚类权重分配的APP风险估测方法及系统。本发明专利技术通过聚类分析得到功能相似的良性APP权限申请向量的聚类中心,计算该中心与目标APP的权限申请向量的差值作为该属性风险值;通过将动态获取的API调用序列转化为有向图的形式来计算目标APP与恶意APP的API调用序列之间的相似度,并将该相似度作为API调用序列属性风险值;根据APP接收Intent对象后可能执行操作的风险等级来计算Intent属性风险值。最后基于OPTICS聚类算法为不同的评估属性合理分配权重,以综合各个属性风险值计算出APP总体风险值。本发明专利技术可以有效地评估APP的风险,保障用户的隐私安全和设备安全。

【技术实现步骤摘要】

本专利技术属于移动终端安全,具体涉及一种基于密度聚类权重分配的app风险估测方法及系统。


技术介绍

1、随着android系统用户规模日益庞大,app的数量也不断增长,app成为了大多数人日常生活中必不可少的重要工具。数量众多的app在为用户提供丰富功能的同时,也需要访问用户设备上的各种敏感数据和资源,给用户隐私和设备安全带来了威胁。用户获取app最大的渠道就是应用市场,现有的android应用市场包括google play等,通常有大量开发者在其平台上传应用,导致了app的质量参差不齐,安全性难以保障。

2、现有的风险评估方法中用于评估的属性不够全面,评估方法过于简单,没有考虑app实际的功能需求,属性权重分配存在一定的主观性,不够准确,因此难以合理的评估app的风险。


技术实现思路

1、为了解决上述技术问题,本专利技术提出了一种基于密度聚类权重分配的app风险估测方法及系统,以合理评估app存在的风险,更好的维护移动终端的安全。

2、本专利技术方法的技术方案为一种基于密度聚类权重分配的app风险估测方法,具体包括以下步骤:

3、步骤1:反编译应用apk包得到源码及androidmanifest.xml配置文件,获取app的评估属性包括权限申请向量、api调用序列以及接收的intent对象;

4、步骤2:采用聚类分析方法计算对应app类别的中心向量,计算待评估app的权限申请向量与对应app类别的中心向量之间的差值做为权限申请向量属性风险值;

5、步骤3:采用图相似度计算方法来计算api调用序列属性风险值;

6、步骤4:根据app接收intent对象后预计执行的操作将intent对象的风险等级分类并获取对应的风险值,计算intent属性风险值;

7、步骤5:计算数据集中每个app的归一化后权限申请向量属性风险值、归一化后api调用序列属性风险值、归一化后intent属性风险值,以构建数据集中每个app的风险分布向量,根据数据集中所有app的风险分布向量构成风险分布矩阵,计算待测app综合风险值;

8、作为优选,步骤2所述采用聚类分析方法计算对应app类别的中心向量,具体如下:

9、使用向量pl=[p1,p2,p3,…,pn]来描述app对n个敏感权限的申请情况,该向量称为权限申请向量,若app申请对应的权限,向量中对应维度的值为1,否则为0;

10、将市面上常见的app分为多个类别,提取不同类别app的权限申请向量进行聚类分析得到对应类别的中心向量;

11、所述中心向量的计算方法,具体如下:

12、计算同一类型所有app的权限申请向量pl与相同维度且每一维度的值都为1的标记向量r=[1,1,1,…,1]的余弦距离值distance(pl,r),r的维度为n;

13、对所有的distance(pl,r)值做统计分析,假设该值服从均值为μ,标准差为σ的正态分布,将distance(pl,r)值落在[μ-σ,μ+σ]区间中的应用称为中心应用;

14、对应类别应用通过前述余弦距离值统计分析、并结合在[μ-σ,μ+σ]区间进行中心应用判定得到k个中心应用,k个中心应用的权限申请向量集合为{p1,p2,p3,…,pk},则对应类别的中心向量为c=[c1,c2,c3,…,cn];

15、所述ci的计算公式为:

16、

17、其中,k为对应类别中心应用的数量,pji代表第j个中心应用的权限申请向量第i个维度值,ci为中心向量第i个维度值,j∈[1,k],i∈[1,n]。

18、步骤2所述计算待评估app的权限申请向量与其对应app类别的中心向量之间的差值做为权限申请向量属性风险值,计算方法如下:

19、

20、

21、其中,pi代表待评估app的权限申请向量的第i个维度值,ci代表待评估app所属类别的中心向量的第i个维度值,score1即为待评估app的权限申请向量与其所属类别的中心向量n个维度差值的和,进一步作为权限申请向量属性风险值;

22、作为优选,步骤3所述采用图相似度计算方法来计算api调用序列属性风险值,具体如下:

23、动态获取恶意app数据集中每一个app运行时产生的api调用序列并转化为api调用图;

24、构图方法为:根据android官方api描述将api调用序列中每一个函数替换成对应的类。替换后,原有的api调用序列转化为对应类调用序列,将对应类调用序列进行去重操作,相邻两个类若相同则删去一个,得到相邻不重复的类调用序列;

25、通过相邻不重复的类调用序列进行api对应类的调用图的构架,具体如下:

26、类调用序列中api对应类1首次调用api对应类2则在图中加上该调用边,再次出现则将该调用边的权重加1,权重代表了该api对应类调用在运行过程中出现的次数;

27、将待评估app的api调用序列转化后的得到的api调用序列转化后的得到的api对应类调用图与恶意app的api对应类调用图之间的相似度的最大值作为api调用序列属性风险值score2;

28、所述相似度的计算,具体如下:

29、将两个api对应类调用图转化为包含节点特征的向量,再使用皮尔逊系数来计算两个特征向量之间的相似度;

30、作为优选,步骤4所述根据app接收intent对象后预计执行的操作将intent对象的风险等级分类并获取对应的风险值,具体如下:

31、根据app接收intent对象后预计执行的操作将intent对象的风险等级分为m类,风险级别为1,2,3,…,m,对应的风险值为risk1,risk2,risk3,…,riskm;

32、根据app的androidmanifest.xml文件中定义的<intent-filter>标签中action字段统计app的intent接收情况,假设对应app接收了num1个风险级别为1的intent对象,num2个风险级别为2的intent对象,num3个风险级别为3的intent对象,…,numm个风险级别为m的intent对象;

33、步骤4所述计算intent属性风险值,具体如下:

34、

35、其中,score3表示intent属性风险值;

36、作为优选,步骤5所述计算归一化后权限申请向量属性风险值、归一化后api调用序列属性风险值、归一化后intent属性风险值,具体如下:

37、对于有x个app的数据集,计算每个app的三种属性风险值:score1、score2、score3,分别作为score1y、score2y、score3y,y∈{1,2,…,x},并进行标准化,得到的值称为rscore1y、rscore2y和rscore3y,标准本文档来自技高网...

【技术保护点】

1.一种基于密度聚类权重分配的APP风险估测方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的基于密度聚类权重分配的APP风险估测方法,其特征在于:

3.根据权利要求2所述的基于密度聚类权重分配的APP风险估测方法,其特征在于:

4.根据权利要求3所述的基于密度聚类权重分配的APP风险估测方法,其特征在于,步骤3所述采用图相似度计算方法来计算API调用序列属性风险值,具体如下:

5.根据权利要求4所述的基于密度聚类权重分配的APP风险估测方法,其特征在于,

6.根据权利要求5所述的基于密度聚类权重分配的APP风险估测方法,其特征在于,

7.根据权利要求6所述的基于密度聚类权重分配的APP风险估测方法,其特征在于:

8.根据权利要求7所述的基于密度聚类权重分配的APP风险估测方法,其特征在于:

9.一种基于密度聚类权重分配的APP风险评估系统,其特征在于,包括:

【技术特征摘要】

1.一种基于密度聚类权重分配的app风险估测方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的基于密度聚类权重分配的app风险估测方法,其特征在于:

3.根据权利要求2所述的基于密度聚类权重分配的app风险估测方法,其特征在于:

4.根据权利要求3所述的基于密度聚类权重分配的app风险估测方法,其特征在于,步骤3所述采用图相似度计算方法来计算api调用序列属性风险值,具体如下:

...

【专利技术属性】
技术研发人员:高宏昌李俊娥俞凯龙刘林彬黄桂容
申请(专利权)人:武汉大学
类型:发明
国别省市:

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

1