admin管理员组

文章数量:1543221

今天有同事来问我为嘛360的su权限是755。

以前还真没注意这个细节,看了下自己手机里用360root的su,果真如此。


既然没有SUID或者SGID权限,那又是怎么访问root用户下的东西呢。


于是花了点时间研究了一下,360此举主要是为了规避4.4以后android系统的selinux机制。


它的主要步骤如下:

1. 修改install-recovery.sh


这个文件的内容被360改成了/system/bin/su --daemon &


2. install-recovery.sh的执行是在init阶段,此时不受selinux的影响。



3. init阶段


......


判断启动参数,如果是--daemon,就把进程名改成permmgrd。



4. ps查看下permmgrd进程,其实permmgrd就是su的符号链接。



5. c/s架构

于是乎,就大致明白了360的su的总体组成了。

(1). init阶段启动起来的permmgrd进程具有完全的root权限,理论上是不受selinux限制的。

(2). 用户执行su之后,执行的操作,很有可能是permmgrd进程帮忙执行的。


本文标签: 一键SUroot