[发明专利]一种基于进程通信的Android应用程序权限滥用检测方法有效
| 申请号: | 201410787755.0 | 申请日: | 2014-12-17 |
| 公开(公告)号: | CN104462970A | 公开(公告)日: | 2015-03-25 |
| 发明(设计)人: | 吴晓慧;马恒太;刘小霞;王思琪 | 申请(专利权)人: | 中国科学院软件研究所 |
| 主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F9/54 |
| 代理公司: | 北京科迪生专利代理有限责任公司 11251 | 代理人: | 成金玉;孟卜娟 |
| 地址: | 100190 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 进程 通信 android 应用程序 权限 滥用 检测 方法 | ||
技术领域
本发明涉及移动终端安全检测技术领域,主要涉及Android平台的权限管理,更具体地是涉及一种基于进程通信的Android应用程序权限滥用检测方法。
背景技术
近年来,Android智能手机在移动终端市场具有很高的占有率。随着智能手机的功能日益强大,它们能完成的工作也越来越多,例如拍摄照片、定位导航、支付账单、浏览网页、发送电子邮件等。在用户使用智能手机时,他们会把许多隐私数据保存在手机里,包括照片、电子邮件、文档、浏览历史等。这些隐私数据已经成为越来越多的恶意软件窃取的目标。
Android是基于Linux系统的开源操作系统。Android操作系统本身提供了一系列用于隐私数据保护的机制。Android扩展了Linux系统,使得每一个应用程序都可以以不同的身份标识运行,并提供了对用户资源(手机设备信息、网络资源等)进行访问控制的机制。在该权限系统中,手机中的重要资源被划分成几类,每一类资源都对应一种权限;而当程序对某类资源进行访问时,必须当拥有对应的权限才能获得执行授权。这种保护机制针对单个应用程序能有效地防止权限越级,但是多个应用在组合以后能轻易提升权限,使得恶意代码获得高级权限,导致信息泄露、系统受到破坏。Android系统对资源的访问控制的权限系统实现的粒度过于粗糙,该权限系统具体实现不够灵活。一个程序所拥有的权限完全是在它被安装时确定的;而当安装某一个程序时,对于一个程序权限的选择,Android也仅仅提供了两种:全部满足程序所要求的权限或者全部否定,而不是让用户根据自己的实际情况只选择满足部分权限。程序如果在安装阶段拿到它所需要的权限,缺乏对权限的动态运行时监测。权限一经被授权给应用程序后,在应用程序的生命期间,它将不会被移除,即使声明此权限源程序被删除。综上所述,Android本身自带的机制并不能有效地防止程序泄露用户隐私数据。
检索发现,中国专利申请号CN201310154987.8,公开了一种基于Android平台的细粒度权限控制方法,通过采集恶意应用程序和普通应用程序并根据比较两者最小权限列表的差异确定危险权限组合列表,利用该危险权限组合列表来判断安装或运行相应应用程序时,该应用程序或应用程序组合中是否存在危险权限组合。该方法克服了Android平台现有技术中“安装前申明权限,运行时判断权限”的机制存在的缺陷。但是该方法依赖于收集的样本应用程序,监测效果随机性较大。同时该方法只针对设定的恶意权限组合列表,没有考虑不同应用程序之间的权限提升和更一般的权限滥用情况。
针对这些不足,本发明设计了一个基于进程通信的Android应用程序权限滥用检测方法,尽可能全面地考虑了某个应用程序的所有权限滥用情况,并针对同一应用程序的不同权限集合实施不同的检测方法。
发明内容
本发明技术解决问题:针对Android系统资源的粗粒度权限访问控制导致的权限滥用问题,提供一种基于进程通信的Android应用程序权限滥用检测方法,对应用程序申请的所有权限进行有针对性的全覆盖分类动态检测,有效提高了权限滥用检测的效率。
本发明的技术解决方案:基于进程通信的Android应用程序权限滥用检测方法,其特征在于该方法结合静态检测和动态检测技术,包括以下步骤:
S1、解压并反编译待测应用程序的安装包,得到源码。分析AndroidManifest.xml文件,得到该应用程序申请的权限集合Pr及应用自身组件的权限设定;
S2、扫描应用程序源码,获取源码运行必须的权限集合Pd。根据实际需要,设置敏感权限集合P0;
S3、通过比较以上两个权限集合Pr和Pd的差异,建立分类检测模型。
S4、运行待测应用程序,依据分类检测模型进行分类动态检测;针对不同的权限分组,既监控组件间的进程通信(IPC),还监控集合(Pr-Pd)∩P0中敏感权限的调用;如果发现异常,将异常行为的详细数据形成日志文件。
所述步骤S1中获取应用程序申请的权限集合Pr的具体实现为:在windows平台上解压待测应用程序安装包获取Classes.dex文件,并对该文件进行反编译得到应用程序源码。分析AndroidManifest.xml文件,得到该应用程序申请的权限集合Pr及应用自身组件的权限设定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410787755.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:电子文档的加解密方法
- 下一篇:一种禁止应用自启动的方法及装置





