Root (Android系统)

维基百科,自由的百科全书
(重定向自Root (Android OS)
跳转至: 导航搜索

root通常是针对Android系统的手机而言,它使得用户可以获取Android操作系统超级用户权限。root通常用于帮助用户越过手机制造商的限制,使得用户可以卸载手机制造商预装在手机中某些应用,以及运行一些需要超级用户权限的应用程序。Android系统的root与Apple iOS系统的越狱类似。

目录

root的原理 [编辑]

手机制造商原始出厂的手机并未开放root权限,获取root的方法都是不受官方支持的[1],因此,目前获取root的方法都是利用系统漏洞实现的。而不同手机厂商可能存在的漏洞不同,也就导致了不同手机root的原理可能不同。不过,不管采用什么原理实现root,最终都需要将su可执行文件复制到Android系统的/system分区下(例如:/system/xbin/su) 并用chmod命令为其设置可执行权限和setuid权限。为了让用户可以控制root权限的使用,防止其被未经授权的应用所调用,通常还有一个Android应用程序来管理su程序的行为。root的基本原理就是利用系统漏洞,将su和对应的Android管理应用复制到/system分区。

目前最广泛利用的系统漏洞是zergRush,该漏洞适用于Android 2.2-2.3.6的系统[2],因而可以适用于目前过半的Android系统手机。其它的漏洞还有Gingerbreak[3], psneuter[4]等等。

常用root工具 [编辑]

由于目前最广泛利用的zergRush漏洞必须在adb shell下运行[5],而adb shell只能将手机用USB数据线与PC连接之后才能在PC上打开,因此,目前常用的root工具都是PC客户端程序,通过Android系统的adb shell运行漏洞利用程序。常见的root客户端工具有(不完全名单):

除了在PC上运行的root客户端工具以外,也有直接在Android手机上运行的root工具,例如:

由于这些工具所依赖的root漏洞在目前主流的机型中已经被修补,因此只有极少数机型还可以使用上述工具获取root权限。

争议 [编辑]

由于root并非官方支持的行为,因此,手机厂商对进行过root的手机的保修政策目前存在争议。在三星联想等手机厂商的官方网站上,目前暂未找到对此问题的明确说法,论坛上对此也没有统一说法。

参见 [编辑]

参考资料 [编辑]

  1. ^ root为什么不受官方支持. DroidLessons. 2011-02-15 [18-12-2011]. 
  2. ^ CVE-2011-3874: zergRush 漏洞的详细描述. National Cyber-Alert System. 2012-01-27 [21-10-2012]. 
  3. ^ CVE-2011-1823: Gingerbreak 漏洞的详细描述. National Cyber-Alert System. 2011-06-09 [21-10-2012]. 
  4. ^ CVE-2011-1149: psneuter 漏洞的详细描述. National Cyber-Alert System. 2011-04-21 [21-10-2012]. 
  5. ^ zergRush源代码. The Revolutionary development team. 2012-01-27 [21-10-2012].