[发明专利]一种Android应用程序溢权漏洞检测和恶意行为识别方法有效
申请号: | 201711275363.6 | 申请日: | 2017-12-06 |
公开(公告)号: | CN108073813B | 公开(公告)日: | 2021-02-09 |
发明(设计)人: | 刘晓建;雷倩 | 申请(专利权)人: | 西安科技大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F21/57;G06K9/62;G06F8/53 |
代理公司: | 西安文盛专利代理有限公司 61100 | 代理人: | 佘文英 |
地址: | 710054 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种Android应用程序溢权漏洞检测和恶意行为识别方法。采用静态分析方法以及字符串分析方法,并全面考虑APP中使用权限的程序点,准确、有效提取出了Android APP的实际使用权限集合的上界,减少了溢权漏洞的误报率;以实际使用权限为特征,更准确的描述了APP的行为特征,在此基础上构造了准确率高、误报率低的APP恶意行为分类器。 | ||
搜索关键词: | 一种 android 应用程序 漏洞 检测 恶意 行为 识别 方法 | ||
【主权项】:
1.一种Android应用程序溢权漏洞检测和恶意行为识别方法,其特征是,包括以下步骤:第一步:使用反编译工具链对Android APP安装包进行处理,得到反编译的Java字节码程序,对程序进行扫描,提取与权限有关的API调用,即敏感API;第二步:扫描有关Java反射的系统调用,采用字符串分析方法得到通过反射接口调用的敏感API;第三步:扫描Intent对象的所有发送点,采用字符串常量传播分析方法得到发送点上Intent对象的action属性值;扫描Intent对象的所有接收点上Intent Filter,得到接收点上IntentFilter对象的action属性值;第四步:扫描所有URI数据源的构造点,以及对URI数据的操作点,得到数据源的URI和对URI的读写操作;URI数据源的构造点是指程序中构造URI的代码片段;URI数据的操作点是指对URI进行读、写的代码片段;采用字符串常量传播分析工具得到URI对象的属性值。第五步:根据第二步、第三步和第四步得到的敏感API、Intent和IntentFilter对象的action属性值、以及URI对象的属性值以及读写操作,将其映射为相应的权限集合,该集合就是APP在程序中实际使用的权限集合,记为PermUsed;第六步:从AndroidManifest.xml文件中提取出APP申请的权限集合,记为PermReq;将PermUsed和PermReq进行比对,判断APP中是否存在溢权漏洞和权限申请不足的漏洞;第七步:根据提取出的PermUsed权限集,从中选择一定数目的典型权限作为描述APP恶意行为的特征权限,根据特征权限在恶意应用和正常应用中出现频率的差异性,为每个特征权限计算一个权限恶意程度值,由权限恶意程度值构成一个权限恶意度列向量;第八步:将每个APP的实际使用权限映射成一个权限特征向量,将权限特征向量与权限恶意度列向量相乘便得到一个应用的恶意程度值;第九步:计算大量恶意和良性样本恶意程度值平均值,确定合适的权重阈值,形成一个线性分类器用于判断一个未知APP的恶意性;如果应用的恶意程度值大于阈值,则为恶意应用,否则,为良性应用。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安科技大学,未经西安科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201711275363.6/,转载请声明来源钻瓜专利网。