Rootear es el proceso mediante el cual los usuarios de dispositivos Android pueden obtener un control privilegiado (conocido como acceso root ) sobre varios subsistemas del dispositivo, generalmente teléfonos inteligentes. Debido a que Android se basa en una versión modificada del kernel de Linux , rootear un dispositivo Android brinda acceso similar a permisos administrativos ( superusuario ) que en Linux o cualquier otro sistema operativo tipo Unix , como FreeBSD o macOS .
El enraizamiento se realiza a menudo para superar las limitaciones que los operadores y los fabricantes de hardware imponen a algunos dispositivos. Por lo tanto, el enraizamiento brinda la capacidad (o 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 completa y el reemplazo del sistema operativo del dispositivo, generalmente con una versión más reciente de su sistema operativo actual.
El acceso raíz a veces se compara con dispositivos de jailbreak que ejecutan el sistema operativo Apple iOS. Sin embargo, estos son conceptos diferentes: Jailbreaking es eludir varios tipos de prohibiciones de Apple para el usuario final, incluida la modificación del sistema operativo (impuesta por un " cargador de arranque bloqueado "), la instalación no aprobada oficialmente (no disponible en la App Store ). aplicaciones mediante descarga local y otorgando al usuario privilegios elevados de nivel de administración (enraizamiento). Muchos proveedores como HTC , Sony , OnePlus , Asus , Xiaomi y Google ofrecen explícitamente la posibilidad de desbloquear dispositivos e incluso reemplazar el sistema operativo por completo. [1] [2] [3] [4] De manera similar, la capacidad de descargar aplicaciones generalmente está permitida en dispositivos Android sin permisos de 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 rooteo de Android .
El enraizamiento es distinto del desbloqueo de SIM y del desbloqueo del gestor 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 enraizamiento 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 original. El enraizamiento es necesario para operaciones más avanzadas y potencialmente peligrosas, incluida la modificación o eliminación de archivos del sistema, la eliminación de aplicaciones preinstaladas y el acceso de bajo nivel al propio hardware (reinicio, control de luces de estado o recalibración de entradas táctiles). También se requiere una instalación de enraizamiento típica. 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, lo que a veces se denomina descarga lateral . 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 Puente de depuración de Android . Sin embargo, algunos operadores estadounidenses , incluido AT&T , han impedido en el firmware la instalación de aplicaciones que no están en Play Store , [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], Amazon Kindle Fire utiliza de forma predeterminada Amazon Appstore en lugar de Google Play , aunque como la mayoría de los otros dispositivos Android, Kindle Fire permite la descarga de aplicaciones de fuentes desconocidas, [9] y la aplicación de "instalación fácil" en Amazon Appstore hace así de fácil. Es posible que otros proveedores de dispositivos Android busquen otras fuentes en el futuro. El acceso a aplicaciones alternativas puede requerir rooteo, pero el rooteo no siempre es necesario.
Las ventajas del rooteo incluyen la posibilidad de tener un control total sobre la apariencia, la sensación y el comportamiento del dispositivo. Como un superusuario tiene acceso a los archivos del sistema del dispositivo, todos los aspectos del sistema operativo se pueden personalizar con la única limitación real el nivel de experiencia en codificación. [10] Las ventajas inmediatamente esperables 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 más alta técnicamente admitida. [18] [un]Algunas desventajas del rooteo incluyen:
El enraizamiento permite al usuario obtener acceso privilegiado a un teléfono. No permite que un 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 proveedor se use en otro. Las operaciones relacionadas lo permiten.
El desbloqueo del gestor de arranque es a veces el primer paso para rootear el dispositivo; sin embargo, no es lo mismo que rootear el dispositivo. [24] La mayoría de los dispositivos vienen con un gestor de arranque bloqueado, lo que impide que los usuarios instalen una nueva imagen de arranque, que a menudo se muestra al rootear un dispositivo o usar una ROM personalizada. [25] El gestor 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 telefónico no haya sido manipulada y sea genuina. No obstante, la gente todavía realiza esta operación, ya que desbloquear el gestor 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 se pueden desbloquear con el gestor de arranque, y algunos solo se pueden desbloquear con un exploit que generalmente necesita un error de escalada de privilegios para eliminar 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, borrando todos los datos del usuario, aplicaciones de terceros y configuración. [31] [32]
El desbloqueo de SIM permite que un teléfono que está bloqueado para un determinado proveedor se use en un proveedor diferente. 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 conocido como ADB), mientras que otros métodos pueden utilizar vulnerabilidades existentes en los dispositivos. Debido a que los dispositivos modelados de manera similar a menudo tienen una multitud de cambios, los métodos de rooteo para un dispositivo cuando se usan para una variante diferente pueden resultar en el bloqueo del dispositivo.
La "raíz sin sistema" es una variante del enraizamiento en la que no se modifica el sistema de archivos del dispositivo subyacente. La raíz sin sistema utiliza varias técnicas para obtener acceso de raíz sin modificar la partición del sistema de un dispositivo. Algunas aplicaciones raíz pueden incluir una función de "ocultación", que intenta enmascarar los efectos y resultados del rooteo, a menudo incluyendo en la lista blanca ciertas aplicaciones para la raíz o bloqueando el acceso a los archivos afectados. [34] El rooting 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 enraizamiento. Sin embargo, las versiones SafetyNet respaldadas por hardware pueden activarse mediante rooting sin sistema, así como en dispositivos no rooteados enviados sin Google Mobile Services (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 actualizació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 archivos binarios ejecutables. El fabricante admite el rooting duro y, por lo general, solo está expuesto para dispositivos que el fabricante permite. [40] Si un teléfono puede ser rooteado, 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 la explotación de 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 actualizar una imagen de recuperación personalizada que omitirá la verificación de firma digital de las actualizaciones de firmware. Luego se puede instalar una actualización de firmware modificada que normalmente incluye las utilidades necesarias para ejecutar aplicaciones como root. Por ejemplo, el su
binario (como uno de código abierto emparejado con la aplicación Superusuario [41] o SuperSU [42] ) se puede copiar a una ubicación en la RUTA del proceso actual (por ejemplo, /system/xbin/
) y se le pueden otorgar permisos ejecutables con el chmod
comando . Una aplicación supervisora de terceros, como Superusuario o SuperSU, puede 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 sencillo.
El proceso de rootear un dispositivo puede ser simple o complejo, e incluso puede depender de una casualidad. Por ejemplo, poco después del lanzamiento del HTC Dream (HTC G1), se descubrió que cualquier cosa escrita con el teclado se interpretaba como un comando en un shell privilegiado (raíz). Aunque Google lanzó rápidamente un parche para solucionar este problema, se filtró una imagen firmada del firmware antiguo, que brindaba a los usuarios la posibilidad de degradar y utilizar el exploit original para obtener acceso de root. Las aplicaciones instalables lograron desbloquear el acceso raíz inmediato en algunos teléfonos inteligentes Samsung de principios de la década de 2010. Esto también se conoce como "rooteo con un clic". [43]
Un investigador de seguridad, Grant Hernandez, demostró un exploit de uso después de la liberación en Binder, el marco IPC de Android, para obtener privilegios de root . [44] Se alega que este exploit, etiquetado como CVE-2019-2215, fue vendido por NSO Group . [45]
Algunos fabricantes, incluidos Xiaomi, OnePlus y Motorola, brindan soporte oficial para desbloquear el gestor 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 gestor de arranque solo para ciertos modelos de sus teléfonos. [47] Además, un fabricante podría suspender el soporte de desbloqueo del gestor de arranque, como fue el caso de LG [48] y Huawei . [49]
La línea de dispositivos Google Nexus y Pixel puede desbloquear su gestor de arranque simplemente conectando el dispositivo a una computadora mientras está en modo de gestor de arranque y ejecutando el protocolo Fastbootfastboot oem unlock
con el comando en dispositivos más antiguos, [50] o fastboot flashing unlock
en dispositivos más nuevos. [51] Después de aceptar una advertencia, el gestor de arranque se desbloquea, por lo que se puede escribir una nueva imagen del sistema directamente en la memoria flash sin necesidad de un exploit. Además, los teléfonos Pixel vendidos a través de ciertos operadores como Verizon no permiten el desbloqueo del gestor de arranque, [52] mientras que otros, como T-Mobile, requieren que se pague el teléfono y se desbloquee la SIM antes de que se pueda desbloquear el gestor 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 finalmente se siguen encontrando vulnerabilidades. Es posible que no haya ningún exploit de raíz disponible para teléfonos nuevos u obsoletos. [54]
Hasta 2010, los fabricantes de tabletas y teléfonos inteligentes, así como los operadores de telefonía móvil, 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 ejecutan software no oficial [55] y los costos de soporte relacionados. Además, firmware como OmniROM y CyanogenMod a veces ofrecen funciones por las que los operadores cobrarían una prima, como el anclaje a red . Debido a esto, en muchos dispositivos se han introducido comúnmente obstáculos técnicos como cargadores de arranque bloqueados y acceso restringido a permisos de root. Por ejemplo, a finales de diciembre de 2011, Barnes & Noble y Amazon.com, Inc. comenzaron a implementar actualizaciones de firmware inalámbricas y automáticas, 1.4.1 para las tabletas Nook y 6.2.1 para Kindle Fires, que eliminaron un método para obtener acceso root a los dispositivos. La actualización Nook Tablet 1.4.1 también eliminó la capacidad de los usuarios de descargar aplicaciones de fuentes distintas a la tienda de aplicaciones oficial de Barnes & Noble (sin modificaciones ). [56] [57]
Sin embargo, a medida que el software desarrollado por la comunidad comenzó a hacerse popular a finales de 2009 y principios de 2010, [58] [59] y tras una declaración de la Oficina de Derechos de Autor y Bibliotecario del Congreso (EE. UU.) que permitía el uso de dispositivos móviles con "jailbreak", [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 apoyo activo 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 del mercado secundario haciendo que los gestores 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 no lancen dispositivos minoristas con cargadores de arranque desbloqueados, optando en su lugar por dispositivos de "edición para desarrolladores" que solo se venden sin subsidio y sin contrato. En la práctica, son similares a los dispositivos Nexus, pero con un precio premium y sin descuentos en el 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 SIM. [66]
En 2014, Samsung lanzó una función de seguridad llamada Knox , que verifica si se modificaron los archivos del sistema y de arranque. Si se actualizó el firmware personalizado, el eFuse se configura 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, es decir, teléfonos y tabletas Samsung lanzados en América del Norte después de 2015, con la excepción de los dispositivos que carecen de un módem celular, [68] aunque existen exploits que pueden desbloquear el gestor 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 el arraigo. El Tratado de Derecho de Autor de la Organización Mundial de la Propiedad Intelectual (OMPI) de 1996 exige que las naciones parte en 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 sobre derechos de autor de 2001 implementó el tratado en Europa, exigiendo a los estados miembros de la Unión Europea implementar protecciones legales para las medidas de protección tecnológica. La Directiva sobre 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 dijo que no está claro si el rooting es legal en Australia y que pueden aplicarse leyes contra la elusión. [71] Estas leyes fueron reforzadas por la Ley de Modificación del Derecho 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 los bloqueos digitales con el fin de lograr la interoperabilidad del software.
Entre 2008 y 2011 se realizaron varios esfuerzos para 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 cerraduras digitales, junto con propuestas iniciales para el C-11 que eran más restrictivas. , [73] pero esos proyectos de ley fueron anulados. En 2011, Michael Geist , un experto canadiense en derechos de autor, citó el jailbreak del iPhone como una actividad no relacionada con los derechos de autor que podría prohibirse mediante enmiendas demasiado amplias a la Ley de Derechos de Autor. [74]
La Free Software Foundation Europe sostiene que es legal rootear o flashear cualquier dispositivo. Según la Directiva europea 1999/44/CE, la sustitución del 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 provocó el defecto. [75]
La ley Regulaciones de derechos de autor y derechos conexos de 2003 legaliza la elusión de las medidas de protección DRM con fines de interoperabilidad, pero no la infracción de derechos de autor. El enraizamiento puede ser una forma de elusión cubierta por esa ley, pero esto no ha sido probado 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 el 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 DRM en 2010 y lo aprobó en 2012 como Proyecto de ley (enmienda) de derechos de autor de 2012. [80] La India no es signataria del Tratado de derechos de autor de la OMPI que exige leyes contra la elusión de DRM, pero estar incluido en la "Lista de Vigilancia Prioritaria" del Informe Especial 301 de Estados Unidos ejerció presión para desarrollar leyes de derechos de autor más estrictas en consonancia con el tratado de la OMPI. [78] [79]
La ley de derechos de autor de Nueva Zelanda permite eludir las medidas de protección tecnológica (TPM) siempre que el uso sea para fines legales y que no infrinjan 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 derechos de autor (nuevas tecnologías) de 2008 .
El rooting podría ser legal en Singapur si se hace para proporcionar interoperabilidad y no eludir los derechos de autor, pero eso no se ha probado en los tribunales. [83]
La Ley de Desbloqueo de Elección del Consumidor y 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 enraizamiento era ilegal en los Estados Unidos, excepto por exención. La Oficina de Derechos de Autor de 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 EE. UU. reconoció explícitamente una exención a la DMCA para permitir el enraizamiento. [85] [86] En su fallo, la Biblioteca del Congreso afirmó el 26 de julio de 2010 que el enraizamiento 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 caducan.
El 28 de octubre de 2012, la Oficina de Derechos de Autor de EE. UU. actualizó sus políticas de exención. El rooting de teléfonos inteligentes sigue siendo legal "cuando la elusión se logra con el único fin de permitir la interoperabilidad de aplicaciones [software obtenidas legalmente] con programas informáticos en el teléfono". Sin embargo, la oficina de derechos de autor de EE.UU. se negó a ampliar 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 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 jailbreak 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 proveedores de servicios inalámbricos para limitar la capacidad de los suscriptores de cambiar a otros proveedores, una decisión comercial que no tiene nada que ver ver con los intereses protegidos por los derechos de autor" y por lo tanto no implican la DMCA. [91] Wu no afirmó que esta exención se aplica a quienes ayudan a otros a desbloquear un dispositivo o "trafican" software para hacerlo. [90] En 2010 y 2012, la Oficina de Derechos de Autor de 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 rooting o impedir que los teléfonos rooteados funcionen. [93] Tampoco está claro si es legal traficar con las herramientas utilizadas para facilitar el enraizamiento. [93]
/sys/class/power_supply/battery/siop_level
abreviado a ese archivo del sistema.