[发明专利]一种应用程序间组件能力泄露动态检测方法和系统在审
申请号: | 201510964190.3 | 申请日: | 2015-12-21 |
公开(公告)号: | CN105589807A | 公开(公告)日: | 2016-05-18 |
发明(设计)人: | 王蕊;张道娟;林子敏;操晓春 | 申请(专利权)人: | 中国科学院信息工程研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙) 11200 | 代理人: | 邱晓锋 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用程序 组件 能力 泄露 动态 检测 方法 系统 | ||
本发明涉及一种应用程序间组件能力泄露动态检测方法和系统。该方法包括:1)设置Android应用程序的调用链初始信息;2)扩展Android Binder通信机制,在不同进程之间传递线程级调用链并对其进行扩展;3)扩展组件间通信监控机制,捕获组件间通信信息,并根据线程级调用链获取组件级调用链;4)根据组件调用链追踪Android的跨应用程序通信,在执行敏感操作时,获取当前线程的线程级调用链及组件级调用链,并根据调用链分析组件间通信是否发生组件能力泄露。本发明能够检测跨应用程序通信中存在的组件能力泄露问题,并通过对权限机制进行加强阻止跨应用程序导致的组件通信能力泄露。
技术领域
本发明属于移动平台访问控制技术领域,具体涉及一种应用程序间组件能力漏洞的动态检测方法和系统。
背景技术
随着移动终端设备的发展,智能手机已经成为人们日常生活中必不可少的一部分。根据IDC 2015年8月份发布的世界范围内智能手机系统的市场份额报告显示,自2012年以来,Android操作系统一直以绝对优势的市场占有率位列榜首,其中,2015年第二季度,Android的市场占有率为82.8%。作为当前最流行的智能终端操作系统,Android安全形势日益严峻。由于Android应用程序开发的低门槛性,使得Android应用程序数量迅速增长。根据AppBrain统计的数据显示,截止2015年11月,Google Play应用市场上有效的应用已经超过180万个。除了Google的官方应用市场,国内第三方应用市场也得到蓬勃发展,比达咨询发布的《2015年5月中国第三方安卓应用商店市场研究报告》显示,截止2015年5月,国内第三方应用市场以80.0%的市场份额占据主导地位。然而,国内第三方应用市场安全审查力度不足,导致应用市场上存在大量恶意、漏洞的应用程序。除此之外,Android作为开源的操作系统,不同厂商在Google发布Android新版本后会进行不同的定制,从而引入一些系统漏洞,且Android碎片化严重,导致系统漏洞无法及时修复。在巨大的利益驱动下,恶意厂商或团队会利用系统及应用程序中存在的漏洞,执行恶意操作,严重威胁着Android手机用户的隐私、财产等安全。
Android应用程序由组件组成,应用程序之间的通信主要通过组件间通信来实现。尽管Android系统设计了权限机制来保护Android系统的敏感资源和功能,由于应用程中漏洞的存在以及Android权限机制本身存在的缺陷,使得没有权限的应用程序可以利用组件漏洞来获取敏感信息,执行敏感操作,从而导致组件能力发生泄露。针对组件能力泄露,研究者已提出部分应对策略,如静态审查应用程序中存在的漏洞。由于Android是基事件驱动的系统,并且频繁使用组件间通信,静态分析的方法无法捕获所有的数据流和控制流,而且Android运行时包含大量Android应用程序正常运行所需要的代码库,静态分析很难兼顾准确性与效率。此外,目前大部分基于静态分析方法的检测工具针对单个应用程序进行分析,而现实中的很多安全威胁是由应用程序之间的交互引入的,已有的静态分析方法无法检测。与此同时,一些研究人员提出了基于策略的强制访问控制系统,根据策略匹配,来控制应用程序间的通信,尽管研究人员努力提出详尽的策略来控制组件间通信,也会存在误报的情况,导致正常的应用程序通信被阻止,使应用程序崩溃等。
发明内容
针对Android应用程序间组件能力泄露,本发明提出了一种通过追踪跨应用程序通信来动态检测应用程序组件能力漏洞的方法及系统。通过对Android Binder通信机制以及组件通信监控机制的扩展,准确定位执行敏感操作的源组件,根据基于上下文信息的组件调用链,判断组件间通信是否发生能力泄露,并对权限检查机制进行扩展,实时控制应用程序间组件能力泄露导致的非法敏感操作。
本发明的检测应用程序组件能力漏洞的方法及系统,通过对Android系统的扩展,记录并传播跨程序通信的线程级调用链,利用线程级调用链及组件间通信信息,获取组件级调用链,根据组件级调用链以及细粒度策略,判断组件间通信是否发生能力泄露。通过对权限机制进行扩展,实时控制应用程序间组件能力泄露导致的非法敏感操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510964190.3/2.html,转载请声明来源钻瓜专利网。