一种权限提升漏洞的检测方法和相关装置制造方法及图纸

技术编号:21606342 阅读:32 留言:0更新日期:2019-07-13 18:30
本申请公开了一种权限提升漏洞的检测方法,包括:获取包括发送组件、媒介组件、接收组件的CClink;当CClink中接收组件声明了

A Method for Detecting Privilege Promotion Vulnerabilities and Related Devices

【技术实现步骤摘要】
一种权限提升漏洞的检测方法和相关装置
本申请涉及检测
,特别涉及一种权限提升漏洞的检测方法、装置、电子设备和计算机可读存储介质。
技术介绍
随着移动互联网的快速发展,智能移动设备的功能日益强大,正深刻的影响着人们的日常生活。在生活中,人们也越来越依赖智能化技术,因此,在智能设备上存储有大量的个人信息,由于android源代码的开源性,其开发的应用组件存在的风险越来越受人们关注。Intent是android应用组件间通信(ICC)的主要媒介,通过startActivity(intent),startService(intent),sendBroadcast(intent)等ICC方法可以启动Activity、Service,或者向Broadcastreceiver发送广播消息。Intent包含显式和隐式两种。显式Intent指定了接收组件,因此Intent会直接发送到某个指定的组件;而隐式intent的接收组件是所有可以满足条件的组件,即可以有多个接收组件,由android系统确定哪个应用的组件可以接收该Intent。android应用的权限机制,通常组件可以通过ICC方法直接实现组件之间的跳转,但如果组件设置了<permission>属性进行权限保护,其他应用的组件若要访问它则需要对应的权限,即设置了与<permission>属性值相同的<uses-permission>,否则无法进行跳转。权限提升漏洞攻击是组件绕过权限机制访问本不能访问的组件行为就是android应用权限提升攻击。对android应用权限提升漏洞的检测,目前已经有很多检测的方法,但许多检测方法需要通过修改android系统源码,并在应用运行时动态监视它们之间的通信行为,较静态分析方法其实现的效率低、难度大。因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
技术实现思路
本申请的目的是提供一种权限提升漏洞的检测方法、权限提升漏洞的检测装置、电子设备和计算机可读存储介质,能够快速检测android程序权限提升漏洞。其具体方案如下:本申请提供一种权限提升漏洞的检测方法,包括:获取包括发送组件、媒介组件、接收组件的CClink;当所述CClink中所述接收组件声明了<permission>属性后,判断所述发送组件是否声明了对应的<uses-permission>属性;若未声明所述<uses-permission>属性,则判断所述媒介组件是否有与所述接收组件的<permission>属性对应的所述<uses-permission>属性;若有所述<uses-permission>属性,则判断所述媒介组件是否设置了<permission>属性;若所述媒介组件未设置<permission>属性,则确定存在权限提升问题。可选的,所述获取包括发送组件、媒介组件、接收组件的CClink之前,包括:对android程序进行反编译,获得Java源代码与Manifest.xml文件;若各个组件中存在ICC方法,则从所述Java源代码中提取所述ICC方法类型及对应的参数并保存在Intent信息表中;从所述Manifest.xml文件中提取各个所述组件的组件信息,并将所述组件信息中的安全属性保存至组件信息表中;读取所述Intent信息表中的所述ICC方法类型及对应的参数,以便建立所述组件的关联关系,并将所述关联关系对应的信息存储在CCP表中;根据所述CCP表得到多个所述CCLink。可选的,所述根据所述CCP表得到多个所述CCLink,包括:遍历所述CCP表,若第一关联关系中的所述接收组件是第二关联关系中的所述发送组件,记为共同组件,则根据所述共同组件进行关联,得到新关联关系;若所述新关联关系中组件对应的应用个数小于预设数量,则根据所述新关联关系确定各个所述CCLink。可选的,所述若所述媒介组件未设置<permission>属性,则确定存在权限提升问题之后,还包括:显示权限问题,并进行警示。本申请提供一种权限提升漏洞的检测装置,包括:获取模块,用于获取包括发送组件、媒介组件、接收组件的CClink;第一判断模块,用于当所述CClink中所述接收组件声明了<permission>属性后,判断所述发送组件是否声明了对应的<uses-permission>属性;第二判断模块,用于若未声明所述<uses-permission>属性,则判断所述媒介组件是否有与所述接收组件的<permission>属性对应的所述<uses-permission>属性;第三判断模块,用于若有所述<uses-permission>属性,则判断所述媒介组件是否设置了<permission>属性;确定模块,用于若所述媒介组件未设置<permission>属性,则确定存在权限提升问题。可选的,还包括:源代码与文件获取模块,用于对android程序进行反编译,获得Java源代码与Manifest.xml文件;第一保存模块,用于若各个组件中存在ICC方法,则从所述Java源代码中提取所述ICC方法类型及对应的参数并保存在Intent信息表中;第二保存模块,用于从所述Manifest.xml文件中提取各个所述组件的组件信息,并将所述组件信息中的安全属性保存至组件信息表中;关联关系建立与存储模块,用于读取所述Intent信息表中的所述ICC方法类型及对应的参数,以便建立所述组件的关联关系,并将所述关联关系对应的信息存储在CCP表中;CCLink获取模块,用于根据所述CCP表得到多个所述CCLink。可选的,所述CCLink获取模块包括:新关联关系获取单元,用于遍历所述CCP表,若第一关联关系中的所述接收组件是第二关联关系中的所述发送组件,记为共同组件,则根据所述共同组件进行关联,得到新关联关系;CCLink获取单元,用于若所述新关联关系中组件对应的应用个数小于预设数量,则根据所述新关联关系确定各个所述CCLink。可选的,还包括:显示与警示模块,用于显示权限问题,并进行警示。本申请提供一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述权限提升漏洞的检测方法的步骤。本申请提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述权限提升漏洞的检测方法的步骤。本申请提供一种权限提升漏洞的检测方法,包括:获取包括发送组件、媒介组件、接收组件的CClink;当CClink中接收组件声明了<permission>属性后,判断发送组件是否声明了对应的<uses-permission>属性;若未声明<uses-permission>属性,则判断媒介组件是否有与接收组件的<permission>属性对应的<uses-permission>属性;若有<uses-permission>属性本文档来自技高网
...

【技术保护点】
1.一种权限提升漏洞的检测方法,其特征在于,包括:获取包括发送组件、媒介组件、接收组件的CClink;当所述CClink中所述接收组件声明了<permission>属性后,判断所述发送组件是否声明了对应的<uses‑permission>属性;若未声明所述<uses‑permission>属性,则判断所述媒介组件是否有与所述接收组件的<permission>属性对应的所述<uses‑permission>属性;若有所述<uses‑permission>属性,则判断所述媒介组件是否设置了<permission>属性;若所述媒介组件未设置<permission>属性,则确定存在权限提升问题。

【技术特征摘要】
1.一种权限提升漏洞的检测方法,其特征在于,包括:获取包括发送组件、媒介组件、接收组件的CClink;当所述CClink中所述接收组件声明了<permission>属性后,判断所述发送组件是否声明了对应的<uses-permission>属性;若未声明所述<uses-permission>属性,则判断所述媒介组件是否有与所述接收组件的<permission>属性对应的所述<uses-permission>属性;若有所述<uses-permission>属性,则判断所述媒介组件是否设置了<permission>属性;若所述媒介组件未设置<permission>属性,则确定存在权限提升问题。2.根据权利要求1所述的权限提升漏洞的检测方法,其特征在于,所述获取包括发送组件、媒介组件、接收组件的CClink之前,包括:对android程序进行反编译,获得Java源代码与Manifest.xml文件;若各个组件中存在ICC方法,则从所述Java源代码中提取所述ICC方法类型及对应的参数并保存在Intent信息表中;从所述Manifest.xml文件中提取各个所述组件的组件信息,并将所述组件信息中的安全属性保存至组件信息表中;读取所述Intent信息表中的所述ICC方法类型及对应的参数,以便建立所述组件的关联关系,并将所述关联关系对应的信息存储在CCP表中;根据所述CCP表得到多个所述CCLink。3.根据权利要求2所述的权限提升漏洞的检测方法,其特征在于,所述根据所述CCP表得到多个所述CCLink,包括:遍历所述CCP表,若第一关联关系中的所述接收组件是第二关联关系中的所述发送组件,记为共同组件,则根据所述共同组件进行关联,得到新关联关系;若所述新关联关系中组件对应的应用个数小于预设数量,则根据所述新关联关系确定各个所述CCLink。4.根据权利要求1至3任一项所述的权限提升漏洞的检测方法,其特征在于,所述若所述媒介组件未设置<permission>属性,则确定存在权限提升问题之后,还包括:显示权限问题,并进行警示。5.一种权限提升漏洞的检测装置,其特征在于,包括:获取模块,用于获取包括发送组件、媒介组件、接收组件的CClink;第一判断模块,用于当所述CClink中所述接收组件声明了<permission>...

【专利技术属性】
技术研发人员:柳毅陈宇彤凌捷欧毓毅
申请(专利权)人:广东工业大学
类型:发明
国别省市:广东,44

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

1