El rooteo [1] es el proceso mediante el cual los usuarios de dispositivos Android pueden obtener control privilegiado (conocido como acceso root ) sobre varios subsistemas del dispositivo, generalmente teléfonos inteligentes y tabletas . Debido a que Android se basa en una versión modificada del núcleo Linux , rootear un dispositivo Android brinda un acceso similar a los permisos administrativos ( superusuario ) que en Linux o cualquier otro sistema operativo tipo Unix como FreeBSD o macOS .
El rooteo se realiza a menudo para superar las limitaciones que los operadores y los fabricantes de hardware imponen a algunos dispositivos. Así, el rooteo otorga la capacidad (o el permiso) de alterar o reemplazar aplicaciones y configuraciones del sistema, ejecutar aplicaciones especializadas ("apps") que requieren permisos de nivel de administrador o realizar otras operaciones que de otro modo serían inaccesibles para un usuario normal de Android . En algunos dispositivos, el rooteo también puede facilitar la eliminación y el reemplazo completo del sistema operativo del dispositivo, generalmente con una versión más reciente de su sistema operativo actual.
El acceso root a veces se compara con el jailbreak de dispositivos que ejecutan el sistema operativo Apple iOS. Sin embargo, estos son conceptos diferentes: el jailbreak es la evasión de varios tipos de prohibiciones de Apple para el usuario final, incluida la modificación del sistema operativo (impuesta por un " gestor de arranque bloqueado "), la instalación de aplicaciones no aprobadas oficialmente (no disponibles en la App Store ) a través de la carga lateral y la concesión al usuario de privilegios elevados de nivel de administración (rooting). Muchos proveedores como HTC , Sony , OnePlus , Asus , Xiaomi y Google proporcionan explícitamente la capacidad de desbloquear dispositivos e incluso reemplazar el sistema operativo por completo. [1] [2] [3] [4] De manera similar, la capacidad de cargar aplicaciones de forma lateral suele estar permitida en dispositivos Android sin permisos root. Por lo tanto, es principalmente el tercer aspecto del jailbreak de iOS (dar a los usuarios privilegios administrativos) el que se correlaciona más directamente con el rooting de Android .
El rooteo es distinto del desbloqueo de la tarjeta SIM y del desbloqueo del cargador de arranque . El primero permite eliminar el bloqueo de la tarjeta SIM de un teléfono, mientras que el segundo permite reescribir la partición de arranque del teléfono (por ejemplo, para instalar o reemplazar el sistema operativo). [5]
El rooteo permite que todas las aplicaciones instaladas por el usuario ejecuten comandos privilegiados que normalmente no están disponibles para los dispositivos en la configuración de fábrica. El rooteo es necesario para operaciones más avanzadas y potencialmente peligrosas, como modificar o eliminar archivos del sistema, eliminar aplicaciones preinstaladas y acceder de bajo nivel al hardware en sí (reiniciar, controlar luces de estado o recalibrar entradas táctiles). Una instalación rooteada típica también instala la aplicación Superusuario, que supervisa las aplicaciones a las que se les otorgan derechos de root o superusuario solicitando la aprobación del usuario antes de otorgar dichos permisos. Se requiere una operación secundaria, desbloquear la verificación del cargador de arranque del dispositivo , para eliminar o reemplazar el sistema operativo instalado.
A diferencia del jailbreak de iOS , no es necesario rootear para ejecutar aplicaciones distribuidas fuera de Google Play Store, a veces llamado sideloading . El sistema operativo Android admite esta función de forma nativa de dos maneras: a través de la opción "Fuentes desconocidas" en el menú Configuración y a través del Android Debug Bridge . Sin embargo, algunos operadores estadounidenses , incluido AT&T , han impedido la instalación de aplicaciones que no estén en Play Store en el firmware , [6] aunque varios dispositivos no están sujetos a esta regla, incluido el Samsung Infuse 4G ; [7] AT&T levantó la restricción en la mayoría de los dispositivos a mediados de 2011. [8]
A partir de 2011 [actualizar], el Kindle Fire de Amazon utiliza de forma predeterminada la tienda de aplicaciones de Amazon en lugar de Google Play , aunque, como la mayoría de los demás dispositivos Android, Kindle Fire permite la descarga de aplicaciones de fuentes desconocidas [9] y la aplicación de "instalación fácil" de la tienda de aplicaciones de Amazon facilita esta tarea. Es posible que otros proveedores de dispositivos Android busquen otras fuentes en el futuro. El acceso a aplicaciones alternativas puede requerir rooting, pero no siempre es necesario.
Las ventajas de rootear el dispositivo incluyen la posibilidad de tener un control total sobre su apariencia, funcionamiento y comportamiento. Como un superusuario tiene acceso a los archivos de sistema del dispositivo, todos los aspectos del sistema operativo pueden personalizarse con la única limitación real del nivel de conocimientos de codificación. [10] Las ventajas inmediatas que se pueden esperar de los dispositivos rooteados incluyen las siguientes: [11] [12]
/sys/devices/platform/sec-battery/power_supply/battery/siop_level
archivo del sistema , donde 100 representa la tasa de carga técnicamente admitida más alta. [18] [a]Algunas desventajas del rooteo incluyen:
El rooteo permite al usuario obtener acceso privilegiado a un teléfono. No permite que el usuario instale un nuevo sistema operativo ( firmware personalizado o ROM personalizada) o una imagen de recuperación, y no permite que un teléfono que está bloqueado para un determinado operador se use en otro. Las operaciones relacionadas permiten esto.
El desbloqueo del cargador de arranque es a veces un primer paso utilizado para rootear el dispositivo; sin embargo, no es lo mismo que rootear el dispositivo. [24] La mayoría de los dispositivos vienen con un cargador de arranque bloqueado, que evita que los usuarios instalen una nueva imagen de arranque, que a menudo se flashea al rootear un dispositivo o usar una ROM personalizada. [25] El cargador de arranque se ejecuta al iniciar el dispositivo y se encarga de cargar el sistema operativo en el teléfono. [26] Generalmente se encarga de verificar que la información del sistema del teléfono no haya sido alterada y sea genuina. No obstante, la gente todavía realiza esta operación, ya que desbloquear el cargador de arranque permite a los usuarios instalar ROM personalizadas. [27]
El primer paso para hacer esto es, en general, configurar el desbloqueo OEM, [28] y luego seguir las instrucciones específicas del fabricante. [24] No todos los dispositivos pueden desbloquearse mediante el cargador de arranque, y algunos solo pueden desbloquearse con un exploit que generalmente necesita un error de escalada de privilegios para eliminar los bloqueos de software, lo que incluye la mayoría de los modelos LG V20 y los dispositivos Google Pixel vendidos por Verizon . [29] [30]
El proceso de desbloqueo del gestor de arranque puede implicar un restablecimiento de fábrica, borrado de todos los datos del usuario, aplicaciones de terceros y configuración. [31] [32]
El desbloqueo de la tarjeta SIM permite que un teléfono bloqueado por un operador determinado se pueda utilizar en otro operador. Las instrucciones varían según el dispositivo y el operador, pero esto se puede hacer solicitando primero al operador que desbloquee el teléfono o comprando un código de desbloqueo en línea. [33]
Algunos métodos de rooteo implican el uso de un símbolo del sistema y una interfaz de desarrollo llamada Android Debug Bridge (también conocida como ADB), mientras que otros métodos pueden utilizar vulnerabilidades existentes en los dispositivos. Debido a que los dispositivos con modelos similares suelen tener una multitud de cambios, los métodos de rooteo para un dispositivo cuando se utilizan para una variante diferente pueden provocar que el dispositivo quede inutilizado .
El "rooteo sin sistema" es una variante del rooteo en la que no se modifica el sistema de archivos subyacente del dispositivo. El rooteo sin sistema utiliza varias técnicas para obtener acceso root sin modificar la partición del sistema de un dispositivo. Algunas aplicaciones root pueden incluir una función de "ocultación", que intenta enmascarar los efectos y resultados del rooteo, a menudo poniendo en la lista blanca ciertas aplicaciones para el rooteo o bloqueando el acceso a los archivos afectados. [34] El rooteo sin sistema tiene la ventaja de no activar la versión basada en software de SafetyNet , una función de Android que funciona monitoreando los cambios en los archivos del sistema y es utilizada por aplicaciones como Google Pay para detectar si un dispositivo ha sido manipulado, como por ejemplo mediante el rooteo. Sin embargo, las versiones de SafetyNet respaldadas por hardware pueden activarse mediante el rooteo sin sistema, así como en dispositivos no rooteados enviados sin los Servicios móviles de Google (GMS) . [35] [36] [37] [38] [39]
La distinción entre "rooteo suave" a través de una vulnerabilidad de seguridad y "rooteo duro" mediante la instalación de un ejecutable su
binario varía de un exploit a otro y de un fabricante a otro. El rooteo suave requiere que un dispositivo sea vulnerable a la escalada de privilegios o al reemplazo de binarios ejecutables. El rooteo duro es compatible con el fabricante y, por lo general, solo está disponible para dispositivos que el fabricante permite. [40] Si un teléfono puede ser rooteado de manera suave, también es inherentemente vulnerable al malware. [40]
El proceso de rooteo varía ampliamente según el fabricante y el dispositivo, pero a veces incluye explotar uno o más errores de seguridad en el firmware (es decir, en la versión del sistema operativo Android instalado) del dispositivo. [40] Una vez que se descubre un exploit, se puede flashear una imagen de recuperación personalizada que omitirá la verificación de firma digitalsu
de las actualizaciones de firmware. Luego, se puede instalar una actualización de firmware modificada que generalmente incluye las utilidades necesarias para ejecutar aplicaciones como root. Por ejemplo, el binario (como uno de código abierto emparejado con la aplicación Superuser [41] o SuperSU [42] ) se puede copiar a una ubicación en la RUTA del proceso actual (por ejemplo, /system/xbin/
) y otorgar permisos ejecutables con el chmod
comando. Una aplicación supervisora de terceros, como Superuser o SuperSU, puede entonces regular y registrar solicitudes de permisos elevados de otras aplicaciones. Existen muchas guías, tutoriales y procesos automáticos para dispositivos Android populares que facilitan un proceso de rooteo rápido y fácil.
El proceso de rootear un dispositivo puede ser simple o complejo, e incluso puede depender de la casualidad. Por ejemplo, poco después del lanzamiento del HTC Dream (HTC G1), se descubrió que cualquier cosa que se escribiera con el teclado se interpretaba como un comando en un shell (root) privilegiado. Aunque Google lanzó rápidamente un parche para solucionarlo, se filtró una imagen firmada del firmware antiguo, que ofrecía a los usuarios la posibilidad de degradar y usar el exploit original para obtener acceso root. Las aplicaciones instalables han logrado desbloquear el acceso root inmediato en algunos teléfonos inteligentes Samsung de principios de la década de 2010. Esto también se ha denominado "rooteo con un solo clic". [43]
Un investigador de seguridad, Grant Hernandez, demostró un exploit de uso posterior a la liberación en Binder, el marco IPC de Android, para obtener privilegios de root . [44] Este exploit, etiquetado como CVE-2019-2215, supuestamente fue vendido por NSO Group . [45]
Algunos fabricantes, incluidos Xiaomi, OnePlus y Motorola, brindan soporte oficial para desbloquear el cargador de arranque, lo que permite rootear sin explotar una vulnerabilidad. [46] Sin embargo, el soporte puede estar limitado solo a ciertos teléfonos; por ejemplo, LG lanzó su herramienta de desbloqueo del cargador de arranque solo para ciertos modelos de sus teléfonos. [47] Además, un fabricante podría descontinuar el soporte para desbloqueo del cargador de arranque, como fue el caso de LG [48] y Huawei . [49]
Los dispositivos de la línea Google Nexus y Pixel pueden desbloquear su cargador de arranque simplemente conectando el dispositivo a una computadora mientras está en modo cargador de arranque y ejecutando el protocolo Fastboot con el comando fastboot oem unlock
en dispositivos más antiguos, [50] o fastboot flashing unlock
en dispositivos más nuevos. [51] Después de que se acepta una advertencia, el cargador de arranque se desbloquea, por lo que se puede escribir una nueva imagen del sistema directamente en la memoria flash sin la necesidad de un exploit. Además, los teléfonos Pixel vendidos a través de ciertos operadores como Verizon no permiten el desbloqueo del cargador de arranque, [52] mientras que otros como T-Mobile requieren que el teléfono esté pagado y la tarjeta SIM desbloqueada antes de que se pueda desbloquear el cargador de arranque. [53]
En el pasado, muchos fabricantes han intentado fabricar teléfonos no rooteables con protecciones más elaboradas (como el Droid X ), pero, con el tiempo, suelen encontrarse exploits. Es posible que no haya ningún exploit root disponible para teléfonos nuevos o desactualizados. [54]
Hasta 2010, los fabricantes de tabletas y teléfonos inteligentes, así como los operadores móviles, no apoyaban en gran medida el desarrollo de firmware de terceros. Los fabricantes habían expresado su preocupación por el funcionamiento inadecuado de los dispositivos que ejecutaban software no oficial [55] y los costos de soporte relacionados. Además, el firmware como OmniROM y CyanogenMod a veces ofrece funciones por las que los operadores de otro modo cobrarían una prima, como el tethering . Debido a eso, los obstáculos técnicos como los cargadores de arranque bloqueados y el acceso restringido a los permisos de root se han introducido comúnmente en muchos dispositivos. Por ejemplo, a fines de diciembre de 2011, Barnes & Noble y Amazon.com, Inc. comenzaron a impulsar actualizaciones de firmware automáticas por aire , 1.4.1 para Nook Tablets y 6.2.1 para Kindle Fires, que eliminaron un método para obtener acceso root a los dispositivos. La actualización 1.4.1 de Nook Tablet también eliminó la capacidad de los usuarios de cargar aplicaciones de fuentes distintas a la tienda de aplicaciones oficial de Barnes & Noble (sin modding ). [56] [57]
Sin embargo, a medida que el software desarrollado por la comunidad comenzó a hacerse popular a fines de 2009 y principios de 2010, [58] [59] y luego de una declaración de la Oficina de Derechos de Autor y el Bibliotecario del Congreso (EE. UU.) que permitía el uso de dispositivos móviles "liberados", [60] [61] los fabricantes y operadores han suavizado su posición con respecto a CyanogenMod y otras distribuciones de firmware no oficiales. Algunos fabricantes, incluidos HTC, [62] Samsung , [63] Motorola [64] y Sony , [65] brindan soporte activamente y fomentan el desarrollo.
En 2011, la necesidad de eludir las restricciones de hardware para instalar firmware no oficial disminuyó a medida que un número cada vez mayor de dispositivos se enviaban con cargadores de arranque desbloqueados o desbloqueables, similares a las series de teléfonos Nexus y Pixel. El fabricante de dispositivos HTC ha anunciado que apoyará a los desarrolladores de software de posventa haciendo que los cargadores de arranque de todos los dispositivos nuevos sean desbloqueables. [55] Sin embargo, los operadores, como Verizon y más recientemente AT&T , han bloqueado continuamente a los OEM para que lancen dispositivos minoristas con cargadores de arranque desbloqueados, optando en cambio por dispositivos de "edición para desarrolladores" que solo se venden sin subsidios y sin contrato. Estos son similares en la práctica a los dispositivos Nexus, pero por una prima y sin descuentos por contrato. Más recientemente, desde 2019, AT&T ha permitido que los dispositivos Pixel tengan cargadores de arranque desbloqueables una vez que se paga el dispositivo y se desbloquea la tarjeta SIM. [66]
En 2014, Samsung lanzó una función de seguridad llamada Knox , que verifica si se modificaron los archivos de sistema y de arranque. Si se actualizó un firmware personalizado, el eFuse se establece en 0x1, lo que anula permanentemente la garantía y deshabilita las funciones habilitadas para Knox, como Samsung Pay . [67] Además, ciertos dispositivos Samsung carecen de la capacidad de actualizar software personalizado, a saber, los teléfonos y tabletas Samsung lanzados en América del Norte después de 2015, con una excepción para los dispositivos que carecen de un módem celular, [68] aunque existen exploits que pueden desbloquear el cargador de arranque en algunos dispositivos afectados que ejecutan versiones anteriores de One UI . [69]
Los tratados internacionales han influido en el desarrollo de leyes que afectan al rooting. El Tratado de Derecho de Autor de la Organización Mundial de la Propiedad Intelectual (OMPI) de 1996 exige que las naciones que son parte de los tratados promulguen leyes contra la elusión de la gestión de derechos digitales (DRM). La implementación estadounidense es la Ley de Derechos de Autor del Milenio Digital (DMCA), que incluye un proceso para establecer exenciones para fines que no infrinjan los derechos de autor, como el rooting. La Directiva Europea de Derechos de Autor de 2001 implementó el tratado en Europa, exigiendo a los estados miembros de la Unión Europea que implementen protecciones legales para las medidas de protección tecnológica. La Directiva de Derechos de Autor incluye excepciones para permitir romper esas medidas con fines que no infrinjan los derechos de autor, como ejecutar software alternativo, [70] pero los estados miembros varían en la implementación de la directiva.
En 2010, Electronic Frontiers Australia afirmó que no está claro si el rooteo es legal en Australia y que podrían aplicarse leyes contra la elusión. [71] Estas leyes se fortalecieron con la Ley de modificación de los derechos de autor de 2006 .
En noviembre de 2012, Canadá modificó su Ley de Derechos de Autor con nuevas disposiciones que prohíben la manipulación de cerraduras digitales, con excepciones que incluyen la interoperabilidad del software. [72] Rootear un dispositivo para ejecutar software alternativo es una forma de eludir las cerraduras digitales con el propósito de lograr la interoperabilidad del software.
Entre 2008 y 2011 se hicieron varios intentos de modificar la Ley de Derechos de Autor (Proyecto de Ley C-60, Proyecto de Ley C-61 y Proyecto de Ley C-32 ) para prohibir la manipulación de las cerraduras digitales, junto con propuestas iniciales para el Proyecto de Ley C-11 que eran más restrictivas, [73] pero esos proyectos de ley fueron dejados de lado. En 2011, Michael Geist , un experto canadiense en derechos de autor, citó el jailbreaking de iPhone como una actividad no relacionada con los derechos de autor que unas enmiendas demasiado amplias a la Ley de Derechos de Autor podrían prohibir. [74]
La Free Software Foundation Europe sostiene que es legal rootear o flashear cualquier dispositivo. Según la Directiva Europea 1999/44/EC, reemplazar el sistema operativo original por otro no anula la garantía legal que cubre el hardware del dispositivo durante dos años a menos que el vendedor pueda demostrar que la modificación causó el defecto. [75]
La ley de 2003 sobre el Reglamento de Derechos de Autor y Derechos Conexos establece que la elusión de las medidas de protección DRM es legal a efectos de interoperabilidad, pero no de infracción de los derechos de autor. El rooting puede ser una forma de elusión contemplada en esa ley, pero no ha sido probada en los tribunales. [70] [76] Las leyes de competencia también pueden ser pertinentes. [77]
La ley de derechos de autor de la India permite eludir la DRM con fines que no infrinjan los derechos de autor. [78] [79] El Parlamento indio presentó un proyecto de ley que incluía esta disposición sobre DRM en 2010 y lo aprobó en 2012 como Proyecto de ley de modificación de los derechos de autor de 2012. [80] La India no es signataria del Tratado de la OMPI sobre derechos de autor que exige leyes contra la elusión de la DRM, pero su inclusión en la "Lista de vigilancia prioritaria" del Informe especial 301 de los EE. UU. ejerció presión para desarrollar leyes de derechos de autor más estrictas en línea con el tratado de la OMPI. [78] [79]
La ley de derechos de autor de Nueva Zelanda permite la elusión de las medidas de protección tecnológica (MPT) siempre que el uso sea para fines legales y no infrinja los derechos de autor. [81] [82] Esta ley se agregó a la Ley de Derechos de Autor de 1994 como parte de la Ley de Enmienda de los Derechos de Autor (Nuevas Tecnologías) de 2008 .
El rooting puede ser legal en Singapur si se hace para proporcionar interoperabilidad y no eludir los derechos de autor, pero eso no ha sido probado en los tribunales. [83]
La Ley de Desbloqueo de la Elección del Consumidor y de la Competencia Inalámbrica garantiza que los consumidores puedan desbloquear o permitir que otros desbloqueen sus teléfonos. Según la Ley de Derechos de Autor del Milenio Digital (DMCA), el rooteo era ilegal en los Estados Unidos, salvo con una exención. La Oficina de Derechos de Autor de los Estados Unidos concedió una exención a esta ley "al menos hasta 2015". [84]
En 2010, en respuesta a una solicitud de la Electronic Frontier Foundation , la Oficina de Derechos de Autor de los Estados Unidos reconoció explícitamente una exención a la DMCA para permitir el rooting. [85] [86] En su fallo, la Biblioteca del Congreso afirmó el 26 de julio de 2010 que el rooting está exento de las reglas de la DMCA con respecto a la elusión de bloqueos digitales. Las exenciones de la DMCA deben revisarse y renovarse cada tres años o de lo contrario expiran.
El 28 de octubre de 2012, la Oficina de Derechos de Autor de los Estados Unidos actualizó sus políticas de exención. El rooteo de teléfonos inteligentes sigue siendo legal "cuando la elusión se lleva a cabo con el único propósito de permitir la interoperabilidad de aplicaciones [de software obtenido legalmente] con programas informáticos en el teléfono". Sin embargo, la Oficina de Derechos de Autor de los Estados Unidos se negó a extender esta exención a las tabletas, argumentando que el término "tabletas" es amplio y está mal definido, y una exención para esta clase de dispositivos podría tener efectos secundarios no deseados. [87] [88] [89] La Oficina de Derechos de Autor también renovó la exención de 2010 para desbloquear teléfonos de manera no oficial para usarlos en operadores no aprobados, pero restringió esta exención a los teléfonos comprados antes del 26 de enero de 2013. [88]
Tim Wu , profesor de la Facultad de Derecho de Columbia , argumentó en 2007 que el jailbreaking es "legal, ético y simplemente divertido". [90] Wu citó una exención explícita emitida por la Biblioteca del Congreso en 2006 para el desbloqueo personal, que señala que los bloqueos "son utilizados por los operadores inalámbricos para limitar la capacidad de los suscriptores de cambiar a otros operadores, una decisión comercial que no tiene nada que ver con los intereses protegidos por los derechos de autor" y, por lo tanto, no implican a la DMCA. [91] Wu no afirmó que esta exención se aplique a quienes ayudan a otros a desbloquear un dispositivo o "trafican" con software para hacerlo. [90] En 2010 y 2012, la Oficina de Derechos de Autor de los EE. UU. aprobó exenciones a la DMCA que permiten a los usuarios rootear sus dispositivos legalmente. [92] Todavía es posible emplear contramedidas técnicas para evitar el rooteo o evitar que los teléfonos rooteados funcionen. [93] Tampoco está claro si es legal traficar con las herramientas utilizadas para facilitar el rooteo. [93]
/sys/class/power_supply/battery/siop_level
es un enlace simbólico abreviado a ese archivo de sistema.