Answers:
至少在Nexus设备上:CF Auto-Root的工作方式是通过fastboot解锁设备的启动加载程序(如果尚未解锁),然后向该设备发送应运行而不是启动的自定义启动映像(内核和ramdisk)从内置系统或恢复分区中。这类似于从CD或USB驱动器而不是从硬盘驱动器引导PC。
(这是fastboot
Android SDK中包含的程序的受支持的功能;它不涉及任何漏洞利用。如果您查看CF Auto-Root程序包中的脚本,您会发现它实际上只是在运行fastboot oem unlock
和fastboot boot
命令)
自定义启动映像运行后,便具有对设备的完全访问权限(就像内置系统软件一样),因此它会将一些文件(su
程序和超级用户APK)复制到系统分区中。在最新的Android版本(5.0+)上,它还对内核的SELinux配置进行了一些更改,以使root帐户正常运行。然后,它将重新引导设备,以便从(已修改的)内核和系统分区引导。