Android Rooting

Android rooting

Android rooting is the process of allowing users of smartphonestablets, and other devices running the Android mobile operating system to attain privileged control (known as “root access“) within Android’s subsystem.

Rooting is often performed with the goal of overcoming limitations that carriers and hardware manufacturers put on some devices, resulting in the ability to alter or replace system applications and settings, run specialized apps that require administrator-level permissions, or perform other operations that are otherwise inaccessible to a normal Android user. On Android, rooting can also facilitate the complete removal and replacement of the device’s operating system, usually with a more recent release of its current operating system. Most of the time,[citation needed] rooting a device voids its warranty.

As Android derives from the Linux kernel, rooting an Android device is similar to accessing administrative permissions on Linux or any other Unix-like operating system such as FreeBSDor OS X.

“Rooting” vs. “jailbreaking”

Root access is sometimes compared to jailbreaking devices running the Apple iOS operating system. However, these are different concepts. In the tightly-controlled iOS world, technical restrictions prevent

  1. installing or booting into a modified or entirely new operating system (a “locked bootloader” prevents this),
  2. sideloading unsigned applications onto the device, and
  3. user-installed apps from having root privileges (and are run in a secure sandboxed environment).

Bypassing all these restrictions together constitute the expansive term “jailbreaking” of Apple devices. That is, jailbreaking entails overcoming several types of iOS security features simultaneously. By contrast, only a minority of Android devices lock their bootloaders—and many vendors such as HTCSonyAsus and Google explicitly provide the ability to unlock devices, and even replace the operating system entirely.[2][3][4] Similarly, the ability to sideload apps is typically permissible on Android devices without root permissions. Thus, primarily the third aspect of iOS jailbreaking, relating to superuser privileges, correlates to Android rooting.

Description

Rooting lets all user-installed applications run privileged commands typically unavailable to the devices in the stock configuration. Rooting is required for more advanced and potentially dangerous operations including modifying or deleting system files, removing carrier- or manufacturer-installed applications, and low-level access to the hardware itself (rebooting, controlling status lights, or recalibrating touch inputs.) A typical rooting installation also installs the Superuser application, which supervises applications that are granted root or superuser rights.

A secondary operation, unlocking the device’s bootloader verification, is required to remove or replace the installed operating system.

In contrast to iOS jailbreaking, rooting is not needed to run applications distributed outside of the Google Play Store, sometimes called sideloading. The Android OS supports this feature natively in two ways: through the “Unknown sources” option in the Settings menu and through the Android Debug Bridge. However some carriers, like AT&T, prevent the installation of applications not on the Store in firmware,[5] although several devices (including the Samsung Infuse 4G) are not subject to this rule,[6] and AT&T has since lifted the restriction on several older devices.[7]

As of 2012 the Amazon Kindle Fire defaults to the Amazon Appstore instead of Google Play, though like most other Android devices, Kindle Fire allows sideloading of applications from unknown sources,[8] and the “easy installer” application on the Amazon Appstore makes this easy. Other vendors of Android devices may look to other sources in the future. Access to alternate apps may require rooting but rooting is not always necessary.

Rooting an Android phone lets the owner modify or delete the system files, which in turn lets them perform various tweaks and use apps that require root access.[9]

Process

The process of rooting varies widely by device, but usually includes exploiting a security bug(s) in the firmware (i.e. in Android) of the device, and then copying the su binary to a location in the current process’s PATH (e.g./system/xbin/su) and granting it executable permissions with the chmod command. A supervisor application like SuperUser or SuperSU can regulate and log elevated permission requests from other applications. Many guides, tutorials, and automatic processes exist for popular Android devices facilitating a fast and easy rooting process.

For example, shortly after the HTC Dream was released, it was quickly discovered that anything typed using the keyboard was being interpreted as a command in a privileged (root) shell. Although Google quickly released a patch to fix this, a signed image of the old firmware leaked, which gave users the ability to downgrade and use the original exploit to gain root access. Once an exploit is discovered, a custom recovery image that skips thedigital signature check of a firmware update package can be flashed. In turn, using the custom recovery, a modified firmware update can be installed that typically includes the utilities (for example the Superuser app) needed to run apps as root.

The Google-branded Android phones, the Nexus OneNexus SGalaxy Nexus and Nexus 4, as well as their tablet counterparts, the Nexus 7 and Nexus 10, can be boot-loader unlocked by simply connecting the device to a computer while in boot-loader mode and running the Fastboot program with the command “fastboot oem unlock”.[10] After accepting a warning, the boot-loader is unlocked, so a new system image can be written directly to flash without the need for an exploit.

Recently, MotorolaLG Electronics and HTC added security features to their devices at the hardware level in an attempt to prevent users from rooting retail Android devices.[citation needed] For instance, the Motorola Droid X has a security boot-loader that puts the phone in “recovery mode” if a user loads unsigned firmware onto the device, and the Samsung Galaxy S II displays a yellow triangle indicator if the device firmware has been modified.

Industry reaction

Until the early 2010s, the response of tablet and smartphone manufacturers and mobile carriers had typically been unsupportive of third-party firmware development. Manufacturers had expressed concern about improper functioning of devices running unofficial software[11] and related support costs. Moreover, firmware such as CyanogenMod sometimes offers features for which carriers would otherwise charge a premium, such as tethering. As a result, technical obstacles such as locked bootloaders and restricted access to root permissions have commonly been introduced in many devices. For example, in late December 2011, Barnes & Noble andAmazon.com, Inc. began pushing automatic, over-the-air firmware updates, 1.4.1 to Nook Tablets and 6.2.1 to Kindle Fires, that removed users’ ability to gain root access to the devices. The Nook Tablet 1.4.1 update also removed users’ ability to sideload apps from sources other than the official Barnes & Noble app store (without modding).[12][13]

However, as community-developed software began to grow popular in the late 2009 to early 2010,[14][15] and following a statement by the Copyright Office and Librarian of Congress (US) allowing the use of “jailbreaking” mobile devices,[16] manufacturers and carriers have softened their position regarding CyanogenMod and other unofficial firmware distributions, with some, including HTC,[17] Samsung,[18] Motorola[19] and Sony Ericsson,[20]even actively providing support and encouraging development.

In 2011, the need to circumvent hardware restrictions to install unofficial firmware lessened as an increasing number of devices shipped with unlocked or unlockable bootloaders, similar to the Nexus series of phones. Device manufacturer HTC has announced that it would support aftermarket software developers by making the bootloaders of all new devices unlockable.[11]

Legality

Australia

Rooting of any device is legal if the purpose is to run legal apps.[citation needed]

Europe

The Free Software Foundation Europe argues that it is legal to root or flash any device. According to the European Directive 1999/44/CE, replacing the original operating system with another does not void the statutory warranty that covers the hardware of the device for two years unless the seller can prove that the modification caused the defect.[21]

United States

On July 26, 2010, the United States Copyright Office announced a new exemption making it officially legal to root a device and run unauthorized third-party applications, as well as the ability to unlock any cell phone for use on multiple carriers.[22]

On October 28, 2012, the US Copyright Office updated their exemption policies. The rooting of smartphones continues to be legal “where circumvention is accomplished for the sole purpose of enabling interoperability of [lawfully obtained software] applications with computer programs on the telephone handset.” However, the U.S. Copyright office refused to extend this exemption to tablets, arguing that the term “tablets” is broad and ill-defined, and an exemption to this class of devices could have unintended side effects.[23][24]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s