顺手解释一下安卓的ROOT和发展历程

顺手解释一下安卓的ROOT和发展历程

从本帖无偿提供玩机(手机root等)相关问题咨询继续讨论:

首先,安卓系统是Linux的衍生发行版,属于类UNIX系统。这类系统内置的多用户管理的原理是内核自封为ROOT,降权出其他用户。你可以理解为从一人的小公司变成多部门多权限的公司。公司里最高权限的就是老板,相当于系统里的ROOT。

ROOT在现代手机里包括塞班、iOS、安卓等,除了Windows系列WM、WP外,都是固有的最高权限用户。只不过,不允许使用者和其安装的软件获取到ROOT权限。而所谓的ROOT手机这个动作,就是获取到手机的最高权限。

显然,理想情况下,一个系统里的普通程序是怎么都不可能获取到ROOT权限的。而获取ROOT权限,却需要修改系统。修改系统需要ROOT权限。获取ROOT权限需要修改系统……除非有漏洞。早期的安卓手机就是通过漏洞提权后系统系统,将ROOT权限保留到下一次重启后。经典的KingRoot、SuperSU都是那个年代的产物。

同时代的,还有一种方法是通过第三方REC来获取ROOT。REC原版是手机出厂自带的恢复环境,相当于一个和正常安卓系统并行的操作系统。REC也有ROOT权限,消费者也不能直接获取这个系统的ROOT权限。但由于Linux是GPL开源协议,所以,用户可以基于手机的源码自己编译一个可以在手机里运行的操作系统,刷入REC分区并被引导执行,其中的代表就有CWM、TWRP等。在第三方REC系统下,就可以直接对安卓手机的系统进行修改,重启后就有ROOT权限了。

然而,随着安卓的迭代升级,6.0开始的系统慢慢地引入了可信执行。从SoC开始会通过签名等校验他加载的内容是否“合法”。早期一些安卓的某几步可信执行有漏洞,只校验签名,不校验校验和,可以在修改后伪造签名即可通过校验。慢慢地,这些也被封堵。

但显然,开发阶段等等时候,不太可能每一个修改都去编译校验签名。所以安卓有一个关闭校验的开关,因为关闭的时引导加载器对于BOOT分区的校验所以被俗称“Bootloader锁”。再关闭这个校验后,一般还会同时开启一些其他的命令,例如fastboot的一些flash命令就是要在关闭BL锁后才能执行。

相关推荐

《双世宠妃》横店探班 梁洁邢昭林洞房趣事多
lol安妮的哥特萝莉皮肤现在值多少钱 2024安妮的哥特萝莉皮肤价格估算
奏的组词、含义
365体育钱提不出来了

奏的组词、含义

📅 09-17 👁️ 4743