博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SEAndroid和普通android的区别
阅读量:6544 次
发布时间:2019-06-24

本文共 1299 字,大约阅读时间需要 4 分钟。

首先我们需要知道,在普通android中使用的是DAC访问方式,即 Discretionary Access Control,顾名思义,该访问方式是自由的访问控制,由此,他有一些本身自有的缺点。

在DAC 中,普通app只能通过系统服务来访问系统资源。同时,DAC 通过用户和组来分隔app。每一个app在安装的时候都被分配一个独一无二的用户id和组id,这个id对被他的所有进程和私有数据文件使用。只有数据拥有者和app创造者才能访问这些数据。但是DAC有下面一些缺点:

  • 1:不能阻止攻击。这个是显而易见的,因为DAC仅仅控制的是对文件和数据的访问,并没有对攻击做出任何防御措施。
  • 2:会被恶意程序泄漏数据。当一个恶意程序通过系统服务去获取系统数据的时候,就容易将数据泄漏出去。
  • 3:粗糙的特权管理。
  • 4:不能限制或控制系统守护进程。这个的意思是系统进程或者是特权进程具有至高无上的特权,他们具有访问其他资源的权利,但是万一一个进程获取到特权的话,DAC就不能阻止其访问其他资源了。
  • 5:不能阻止root权限的恶意行为。

而在SEAndroid 中,使用的是MAC,即Mandatory Access Control ,强制的访问控制。在MAC中,无论进程是普通进程还是root进程,在对资源进行访问的时候都要进行验证,同时,它还能够阻止特权升级。

SEAndroid 的中心思想就是即使root权限被篡夺了,恶意行为也会被阻止。通过SEAndroid的中心思想,我们就能看出SEAndroid和普通android的巨大不同。在SEAndroid中,特权已经失去了自己的作用,或者是特权也会被监控了,而真正的特权掌握在策略定义者那里。举个例子,如果一个设备越狱了,也就是root了,即使su特权被获取了,管理员也依然能够设置有关于修改系统文件的策略来限制访问。

SEAndroid提供了一系列安全控制机制,当前这些策略包括Install-MAC,Intent-MAC,Content Provider MAC,权限取消和权限标签传播。

  • 1:Install MAC:在安装的时候,通过mac的permission.xml文件来检查app声明的权限。他的行为包括允许,拒绝和允许所有权限。

  • 2:Intent MAC:他的角色就是决定一个Intent能否被分发到其他组件当中。他会阻止任何不被允许的分发。现在,他也支持对使用,读取,读取和写权限的控制。

  • 3:Content Provider MAC。他的角色是来决定一个对Content Provider 的请求是否被允许。

  • 4:权限取消。他能够取消app的一些权限。

  • 5:权限标签分发。这个策略是污点跟踪方法的一个应用。安卓的权限作为抽象标签被映射到一个策略配置文件中。

SEAndroid在安全性方面取得的效果:

  • 1:阻止root特权的攻击

    SEAndroid能够阻止root攻击例如GinderBreak和Exploid。

  • 2:阻止app攻击

转载于:https://www.cnblogs.com/bobo1223/p/7287551.html

你可能感兴趣的文章
2)杨辉三角[2]递归实现
查看>>
pdf怎么拆分成多个pdf
查看>>
php中使用mail()函数发送邮件
查看>>
如何安装和使用零售密钥激活Windows 8.1 专业版
查看>>
初探kali linux笔记
查看>>
MySQL存储引擎中的MyISAM和InnoDB区别详解
查看>>
shell常用正则表达式
查看>>
postfix邮件配置
查看>>
oracle专用服务器模式和共享服务器模式详解
查看>>
javascript实现网页中图片的自动切换代码
查看>>
WebService 笔记
查看>>
刘宇凡:浅谈流氓式用户体验
查看>>
UITabBarController使用详解
查看>>
self parent $this关键字分析--PHP
查看>>
使用SSM的时候添加自定义的监听器(实现已知的那几个接口)出现报错的问题
查看>>
我的友情链接
查看>>
LVS负载均衡LAMP平台
查看>>
wex5怎么配合做seo 优化
查看>>
华为存储行吗?之研发篇
查看>>
莫言老师最精彩的一段话:
查看>>