SEAndroid官网地址:http://selinuxproject.org/page/SEAndroid

SEAndroid是将selinux移植到android操作系统,并根据android特性进行改进的操作系统。SEAndroid中加入了SElinux如下访问控制,也开发了android特有的中间 件层访问控制

SEAndroid概述

SE Linux通过事先定义每个进程的允许操作,禁止其进行越轨的操作(图A-1)。SEAndroid沿袭了这一机制。下图中又上表是事先定义好的策略(放在策略库中),规定进程A对文件A可读可写,规定进程A对目录X可读,而对进程B没有定义对任何目录或文件的访问权限,所以B不能够访问文件A或是目录X

SEAndroid概述
图A-1:能够控制每个进程操作的SELinux
SELinux需要在策略数据库中定义“谁”、“做什么”、“怎样操作”。“谁”用来定义进程,“做什么”用来定义文件、目录、网络和进程间通信的插口等。“怎样操作”用来定义读写、插口与端口的连接等。


通过限制各进程的操作,可以防止恶意软件篡改系统。一般来说,攻击漏洞的恶意软件为了长久利用篡夺到的root权限,会在Android的系统区中埋设su命令。但若使用SEAndroid,事先设定不允许以root权限执行的各种进程改写系统区和重复挂载,就可以避免此类攻击(图A-2)。可以看到无selinux的android操作系统root是可以操控整个操作系统的,一旦恶意应用利用漏洞获得了root权限,就可以为所欲为;但是带有selinux的android操作系统,root权限被削弱,即使恶意应用获得了root权限也不能够对用户造成危害了。

SEAndroid概述
图A-2:即使被篡夺root权限也不会遭到攻击的SEAndroid
攻击者进攻Android系统时,为了下一次攻击,会在系统区安插能够以root权限执行各种命令的“su”、UNIX命令的实用程序“BusyBox”等。SEAndroid能够通过禁止拥有root权限的进程改变系统区,有效回避此类攻击。

更多相关文章

  1. Android平台的跨进程通信——AIDL(上)
  2. Android 查看手机中所有进程
  3. Android教你一步一步实现简单重用自定义控件
  4. android自定义Spinner下拉菜单样式并获得选项的值
  5. Android检查手机是否Root以及应用是否获取Root权限
  6. Android Native进程内存泄露检测
  7. Android: 自定义Tab样式,一种简单的方式。

随机推荐

  1. 13-4-1 Android中list和Adapter的使用
  2. android 的系统编译
  3. qt部署到android设备,很久没响应解决办法
  4. Android(安卓)获取路径目录方法
  5. ImageView的属性
  6. Android正在启动的提示框
  7. build.gradle文件介绍,gradle版本对应
  8. Android中扫描wifi热点
  9. Android(安卓)监听wifi广播的两种方式
  10. 建本地 repo server