一种基于动态权限集的安卓特权提升攻击发现方法技术

技术编号:31823742 阅读:18 留言:0更新日期:2022-01-12 12:46
本发明专利技术涉及Android安全、移动互联网及工业互联网环境下的系统安全与隐私保护领域,公开了一种基于动态权限集的安卓特权提升攻击发现方法。针对安卓平台存在的特权提升攻击问题,提出了一种基于动态权限集的恶意App特权提升攻击发现方法。首先构建并分析强连通分支的权限分布特性,设计动态的权限集划分;然后在信息流与权限集耦合的基础上,抽象权限提升路径;最后提出线性时间的动态权限集更新算法,通过运行时追踪权限集,实现了细粒度的决策控制,所提出的安全检测算法很好的抵御了特权提升攻击,降低了时间复杂度。降低了时间复杂度。降低了时间复杂度。

【技术实现步骤摘要】
一种基于动态权限集的安卓特权提升攻击发现方法


[0001]本专利技术涉及Android安全、移动互联网及工业互联网环境下的系统安全与隐私保护领域,特别涉及一种基于动态权限集的安卓特权提升攻击发现方法。

技术介绍

[0002]安卓系统目前已经成为移动平台上主流操作系统,其安全问题也越来越引人关注。安卓采用了权限机制、隔离机制、应用签名等方式保证平台的安全性,但存在严重的缺陷:1)应用程序的授权被委托给缺乏安全保护警觉的用户;2)存在特权提升攻击。
[0003]目前针对Android安全的工作主要有权限分析,运行时检测与数据追踪,静态分析等。然而这些机制在面对特权提升攻击,特别是运行时多应用合谋攻击时没有有效的抵御方法。很多访问控制策略将有向图引入了Android安全模型中,但是存在时间复杂度过高且依赖App间通信方向的问题。针对这些问题,本专利技术方案在进程通信有向图的基础上构建强连通聚合图,用动态的权限集取代单个的应用权限,通过并查集与权限提升路径进行权限集追踪,实现平摊意义下的线性时间决策算法。

技术实现思路

[0004]本专利技术要解决的技术问题是克服现有技术的缺陷,提供一种基于动态权限集的安卓特权提升攻击发现方法,首先分析强连通分支的权限分布特性,构建动态的权限集划分;然后在信息流与权限集耦合的基础上,抽象权限提升路径;最后提出线性时间的访问控制算法,通过动态追踪权限集,实现了细粒度的决策控制;所提出的安全模型很好的抵御了特权提升攻击,降低了时间复杂度。
[0005]为了解决上述技术问题,本专利技术提供了如下的技术方案:
[0006]本专利技术提供一种基于动态权限集的安卓特权提升攻击发现方法,其特征在于,利用通信状态图中强连通分支内的应用的权限集相等这一特点,设计了恶意APP特权提升攻击检测方法,用动态权限集对系统应用进行等价划分,构建应用组“group”以简化搜索空间,并利用基于权限集的“权限提升路径”取代应用进程自身构成的权限链,具体包括以下步骤:
[0007]在DP_ManDroid模型的整体架构中,其中,System View负责存储计算系统的通信状态图;Decision Checker是一个组件,负责按照通信状态图以及系统的危险权限集(这里由MAC Policy组件提供)对当前的通信请求,包括ICC调用,套接字通信以及文件IO操作等进行判断;SELinux处于内核层,主要负责对隐蔽信道进行控制,这里主要指IO操作,套接字操作等;
[0008]下面分别对几个通信操作进行说明:
[0009]1)新程序安装:新的应用程序安装时,原生的安卓系统提取Manifest文件中的权限并存储在Permission权限库,这里增加了在System view中的节点创建工作,并按Manifest的权限赋值节点的P_SET_STATIC属性;同理在程序卸载时,Permission数据库进
行删除操作,System view的节点也将删除,运行算法3对全图的P_SET集进行更新;
[0010]2)ICC调用:与原生安卓一样,由引用监视器(reference monitor)对调用进行处理,首先是按照Permission权限库进行判断,如果不满足原生的安卓权限要求,通信直接被拒绝,否则的话,调用Decision Checker进行判断,首先查询Decision数据库看系统状态图与通信请求方是否以在数据库中,如果在,则按照之前计算的结果直接返回;否则将通信请求送入System view中,由Graph maker进行通信状态图的强连通聚集计算,再由System view按算法3进行P_SET集比对(这里由MAC Policy提供危险权限集),如果通信被允许,将结果返回给Decision Checker,并将做出的决策以及当前系统通信状态图存储在Decision数据库中,用来在下次的通信判断中直接取用,提高效率;
[0011]3)文件操作以及套接字操作涉及内核层的访问控制,与ICC一样进行判断,只不过ICC中由引用监视器截获的通信请求这里由SELinux截获,之后的过程与ICC一样,SELinux发送通信请求给Decision Checker进行判定。
[0012]与现有技术相比,本专利技术的有益效果如下:
[0013]本专利技术方案针对安卓恶意APP的特权提升攻击问题,利用强连通聚合图抽象权限提升路径,通过动态追踪权限集的方法实现了细粒度的恶意攻击路径探测。同时,通过攻击实例模型证明了提出的安卓特权提升攻击发现方法在时间复杂度、空间复杂度和抵御特权提升攻击的能力等方面均具有良好的性能和安全性,对安卓系统下的应用安全与隐私保护具有积极作用。
附图说明
[0014]附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例一起用于解释本专利技术,并不构成对本专利技术的限制。在附图中:
[0015]图1是本专利技术的安全模型整体架构图;
[0016]图2是V1向V2发起通信连接请求流程图;
[0017]图3是V1向V2发起通信断开请求流程图;
[0018]图4是攻击模型实例示意图;
[0019]图5是特权提升攻击示意图;
[0020]图6是Soundcomber攻击实例示意图。
具体实施方式
[0021]以下结合附图对本专利技术的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本专利技术,并不用于限定本专利技术。
[0022]实施例1
[0023]本专利技术如图1

6所示,本专利技术提供一种基于动态权限集的安卓特权提升攻击发现方法,利用通信状态图中强连通分支内的应用的权限集相等这一特点,设计强制访问控制模型DP_ManDroid,用动态权限集对系统应用进行等价划分,构建应用组“group”以简化搜索空间,并利用基于权限集的“权限提升路径”取代应用进程自身构成的权限链,具体包括以下步骤:
[0024]如图1所示,在DP_ManDroid模型的整体架构中,其中,System View负责存储计算
系统的通信状态图。Decision Checker是一个组件,负责按照通信状态图以及系统的危险权限集(这里由MAC Policy组件提供)对当前的通信请求,包括ICC调用,套接字通信以及文件IO操作等进行判断。SELinux处于内核层,主要负责对隐蔽信道进行控制,这里主要指IO操作,套接字操作等;
[0025]下面分别对几个通信操作进行说明:
[0026]1)新程序安装:新的应用程序安装时,原生的Android系统提取Manifest文件中的权限并存储在Permission权限库,这里增加了在System view中的节点创建工作,并按Manifest的权限赋值节点的P_SET_STATIC属性。同理在程序卸载时,Permission数据库进行删除操作,System view的节点也将删除,运行算法3对全图的P_SET集进行更新。
[0027]2)本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于动态权限集的安卓特权提升攻击发现方法,其特征在于,利用通信状态图中强连通分支内的应用的权限集相等这一特点,设计了恶意APP特权提升攻击检测方法,用动态权限集对系统应用进行等价划分,构建应用组“group”以简化搜索空间,并利用基于权限集的“权限提升路径”取代应用进程自身构成的权限链,具体包括以下步骤:在DP_ManDroid模型的整体架构中,其中,System View负责存储计算系统的通信状态图;Decision Checker是一个组件,负责按照通信状态图以及系统的危险权限集(这里由MAC Policy组件提供)对当前的通信请求,包括ICC调用,套接字通信以及文件IO操作等进行判断;SELinux处于内核层,主要负责对隐蔽信道进行控制,这里主要指IO操作,套接字操作等;下面分别对几个通信操作进行说明:1)新程序安装:新的应用程序安装时,原生的安卓系统提取Manifest文件中的权限并存储在Permission权限库,这里增加了在System view中的节点创建工作,并按Manifest的权限赋值节点的P_SET_STATIC属性;同理在程序卸载时,Permission数据库进行删除操作,System ...

【专利技术属性】
技术研发人员:徐潜章庆贺伟马颂华
申请(专利权)人:天翼电子商务有限公司
类型:发明
国别省市:

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

1