Esta página trata sobre la cuenta de superusuario root
en Linux, sobre el rooteo de teléfonos y otros dispositivos, y explica brevemente cómo administrar el acceso root y otros accesos privilegiados.
¿Qué es un usuario Root?
Root es la cuenta de superusuario en Unix y Linux. Es una cuenta de usuario con fines administrativos y, por lo general, tiene los derechos de acceso más altos del sistema.
Normalmente, la cuenta de usuario root se llama root
. Sin embargo, en Unix y Linux, cualquier cuenta con id de usuario 0 es una cuenta raíz, independientemente del nombre. Es bastante común que ciertos administradores de sistemas tengan sus propias cuentas raíz en un sistema, con sus propias contraseñas.
Administración de acceso con privilegios
La administración de cuentas con privilegios se refiere a administrar el acceso a cuentas con privilegios, incluidas las cuentas raíz. La implementación de herramientas de administración de acceso privilegiado es importante para las organizaciones, ya que las cuentas raíz son muy potentes. La mayoría de los delitos cibernéticos son perpetrados por agentes internos, como los administradores de sistemas. Obtener la rendición de cuentas en lo que hacen es importante para disuadir los delitos internos y el fraude. Además, muchas regulaciones de ciberseguridad y mejores prácticas requieren la implementación de herramientas de gestión de acceso privilegiado.
Las herramientas de administración de acceso con privilegios proporcionan registro y supervisión del acceso. Normalmente, se registra cada inicio de sesión de root y cada comando ejecutado como root.
Las contraseñas de las cuentas privilegiadas nunca deben compartirse. Las contraseñas compartidas tienen muchas más probabilidades de mal uso, sus contraseñas tienden a permanecer sin cambios durante períodos prolongados y, a menudo, se filtran cuando los empleados cambian de trabajo. Además, dado que no son responsabilidad personal de nadie y son de conocimiento común entre compañeros, tienden a no obtener la misma cantidad de diligencia que las cuentas personales, y a menudo se envían por correo electrónico o se escriben en notas, archivos y administradores de contraseñas.
Una cuenta de usuario root es un tipo de cuenta privilegiada. Otras cuentas privilegiadas incluyen cuentas de servicio y cuentas de sistema.
Windows tiene cuentas de Administrador Local y de Administrador de dominio en lugar de cuentas raíz.
Una cuenta de superusuario es un término genérico para cuentas raíz, cuentas de administrador de Windows y otras cuentas similares con privilegios generalmente ilimitados en los sistemas.
Usando SUDO y Otras Herramientas para Eliminar la Necesidad de Cuentas Root
Herramientas como sudo se pueden usar para otorgar a los usuarios seleccionados la capacidad de ejecutar comandos seleccionados como root. Todas las herramientas de gestión de acceso privilegiado también proporcionan esta capacidad. Todas estas herramientas también pueden registrar los comandos realizados como root para rendir cuentas de lo que se hace como root.
Acceso root
El acceso root significa realizar algo usando privilegios de root. En sistemas basados en Linux, esto significa poder hacer algo usando el id de usuario 0, es decir, como root.
Tener acceso root generalmente significa poder iniciar sesión en alguna cuenta root en el servidor, o poder ejecutar comandos como root en el servidor, por ejemplo, utilizando alguna herramienta de escalada de privilegios como sudo
.
Privilegios de root
La cuenta de root tiene privilegios de root. Esto significa que puede leer y escribir cualquier archivo en el sistema, realizar operaciones como cualquier usuario, cambiar la configuración del sistema, instalar y eliminar software, y actualizar el sistema operativo y/o el firmware. En esencia, puede hacer casi cualquier cosa en el sistema.
Por lo general, es preferible usar cuentas de servicio dedicadas para ejecutar aplicaciones y administrar varios subsistemas de sistemas operativos. El acceso a la cuenta raíz debe limitarse al número mínimo absoluto de personas y usos.
SELinux y Otras Formas de Limitar los Privilegios de Root
Las cuentas de Root son muy potentes, y pueden hacer casi cualquier cosa en una computadora. Varios sistemas operativos tienen mecanismos para limitar lo que pueden hacer las cuentas raíz. Estos sistemas se utilizan principalmente en empresas sensibles a la seguridad con equipos de seguridad dedicados e incertain organizaciones militares y gubernamentales.
SELinux es una herramienta popular para limitar lo que los procesos que se ejecutan como root pueden hacer. Está dirigido principalmente a limitar la exposición a vulnerabilidades en los procesos del servidor (como los servidores web). Sin embargo, el shell del administrador es solo un programa normal, y SELinux también se puede usar para limitar lo que se puede hacer desde el shell.
SELinux también se usa con frecuencia para dificultar el escape de contenedores.
SELinux está incluido y habilitado de forma predeterminada en Red Hat Enterprise Linux y CentOS Linux. En estos sistemas, si el root no puede acceder a un archivo o realizar una operación, la razón más común es que la política de SELinux impide la operación.
Apparmor es otra herramienta similar a SELinux.
Los sistemas que utilizan seguridad multinivel no tienen necesariamente una cuenta raíz o sus derechos de acceso pueden estar muy limitados. Sin embargo, esos sistemas rara vez se utilizan fuera de entornos militares clasificados.
El sistema operativo FreeBSD tiene indicadores de archivo, configurados usando el comando chflags
, que se puede usar para evitar que incluso el root realice ciertas operaciones en archivos.
Usuario root en Mac
Apple Mac también tiene una cuenta root. De forma predeterminada, solo se usa internamente. Para habilitar la cuenta raíz para los inicios de sesión, siga estas instrucciones.
Acceso SSH A la Cuenta Root
SSH (Shell seguro) se utiliza a menudo para iniciar sesión en servidores remotos como root. Sin embargo, la configuración predeterminada de OpenSSH impide el inicio de sesión de root mediante contraseñas. Para habilitar el inicio de sesión de root, cambie el valor de la opción de configuración de PermitRootLogin en /ssh/sshd_config.
Banderas Set-user-id en archivos ejecutables
Una cosa que los administradores y auditores del sistema deben saber es que en Linux y Unix, los programas se pueden ejecutar usando un id de usuario en particular cambiando el propietario del ejecutable a ese usuario y configurando el bit setuid
en los permisos del archivo. Por ejemplo, chown rootexecutable && chmod 4755 executable
establece que el ejecutable se ejecute como root, independientemente de quién lo ejecute. Es común que los hackers (novatos) oculten puertas traseras en los sistemas creando un ejecutable adecuado con el conjunto de bits setuid
. Esto es algo que a menudo se analiza en escaneos de seguridad básicos.
Modo de usuario único y Recuperación de Contraseñas Raíz perdidas
El modo de usuario único es un modo especial en el que se pueden arrancar computadoras Linux, Unix y Mac. El arranque en modo de usuario único normalmente requiere acceso físico a la computadora, y generalmente se usa para recuperar la contraseña de root si se ha perdido o para reparar el sistema operativo o restaurar datos en caso de algún fallo catastropico o corrupción.
Tenga en cuenta que la vulnerabilidad de firmware Intel AMT puede ser utilizada por atacantes para arrancar sistemas en modo de usuario único. Por lo tanto, es importante asegurarse de que el firmware del BIOS se haya actualizado en cualquier servidor Intel que tenga habilitada la tecnología Intel Active Management (AMT).
Algunos sistemas operativos se pueden configurar para requerir la contraseña de root con el fin de arrancar en modo de usuario único. Con esos sistemas, es particularmente importante tener la contraseña de la cuenta raíz almacenada de forma segura, por ejemplo, en una caja fuerte.
Mientras no se utilice cifrado de disco, generalmente es posible recuperar un sistema en el que se ha perdido la contraseña de root quitando el disco de la computadora, conectándolo a otra computadora como un segundo disco, montándolo allí y luego editando el archivo de contraseña en el disco montado para borrar la contraseña de root (por ejemplo, editar /mnt/etc/shadow
y copiar la contraseña cifrada para root desde otra cuenta, posiblemente desde otra computadora con el mismo sistema operativo).
Si se utiliza cifrado de disco y se conoce la contraseña de cifrado de disco, aún es posible montar el disco en otro equipo (suministrando la contraseña utilizando herramientas adecuadas, como cryptsetup
).
Si se ha perdido la clave de cifrado del disco, puede ser imposible recuperar el sistema. La mejor opción en ese caso es probablemente reinstalar el sistema operativo y restaurar sus datos desde una copia de seguridad.
Dispositivos rooteados
El rooteado también puede referirse a escapar de los privilegios normalmente permitidos para aplicaciones que se ejecutan en dispositivos restringidos, como iPhones, iPads, teléfonos Android y tabletas. La idea básica es darle acceso de root en su teléfono, para que pueda instalar aplicaciones arbitrarias, cambiar la configuración del dispositivo o instalar su propio sistema operativo.
Tenga en cuenta que el fabricante no admite el enraizamiento de su dispositivo, por lo general explota vulnerabilidades no documentadas en los sistemas operativos y no hay garantía sobre la calidad de las herramientas de enraizamiento o las motivaciones de las personas detrás de ellas. ¡ÚSALOS BAJO TU PROPIO RIESGO! Pueden anular su garantía, inutilizar su dispositivo o poner en riesgo sus datos.
Los proveedores a menudo parchean las vulnerabilidades de seguridad que explotan las herramientas de enraizamiento. Por lo tanto, las herramientas son muy específicas de la versión. Cuando sale una nueva versión del dispositivo o de su sistema operativo, es posible que las herramientas antiguas dejen de funcionar. En consecuencia, el estado de la técnica cambia rápidamente, y los artículos antiguos sobre el enraizamiento pueden estar desactualizados.
Cada kit de herramientas de enraizamiento es diferente. Algunos sistemas de enraizamiento requieren que el teléfono esté conectado a una computadora; otros son aplicaciones que se ejecutan en el dispositivo. Algunos incluso pueden operar de forma inalámbrica, explotando vulnerabilidades en los teléfonos. Sin embargo, las vulnerabilidades necesarias para el último método también se pueden usar para plantar malware, y los fabricantes parchean dichas vulnerabilidades lo más rápido posible.
También hay un artículo de Wikipedia sobre el enraizamiento que explica de qué se trata.
El enraizamiento también puede ayudar a liberar espacio de almacenamiento en el dispositivo. Consulte las Seis Formas Principales de Liberar Espacio de Almacenamiento del Dispositivo Android.
El malware también puede utilizar las mismas técnicas que el software de rooteo. Vea 10 millones de teléfonos Android infectados por aplicaciones de enraizamiento automático todopoderosas.
Mientras que el enraizamiento es legal en la mayoría de los países, podría ser ilegal en otros. El NOS Digital Millenium Copyright Act (DMCA), al parecer, tiene una exención permitiendo. La Directiva Europea de Derechos de Autor aparentemente permite el enraizamiento con el propósito de instalar software alternativo. Debe buscar su propio asesor legal si la legalidad es un problema en su país.
¿Cómo rootear iPhone / iPad?
En el mundo de Apple, rootear el sistema operativo IOS en iPhones, iPads y otros dispositivos generalmente se llama jailbreaking.
-
¿Es seguro hacer jailbreak a un iPhone o iPad?
-
5 Razones para hacer Jailbreak a Tu iPhone y 5 Razones para No
-
¿Cómo hacer jailbreak a un iPhone o iPad en iOS 10 o iOS 9
-
¿Cómo hacer Jailbreak a Tu iPhone: El Siempre actualizada Guía
-
Jailbreak iPhone: Todo lo que necesitas saber
-
Guía de Jailbreak
-
Jailbreak en iPhone Wiki
-
iOS Jailbreak en Wikipedia
como Root en Android?
Herramientas para rootear un dispositivo Android incluyen:
-
Kingo Roo
-
CF-Auto-Root
-
Towelroot
-
Framaroot
-
OneClickRoot
-
dr.fone kit de herramientas
Estos artículos pueden proporcionar información sobre los antecedentes:
-
Todo lo que necesitas saber sobre el rooteo de tu Android
-
Las 15 mejores aplicaciones de rooteo para Android
-
Cómo rootear cualquier dispositivo
-
Cómo rootear tu teléfono Android
Algunos fabricantes, como LG, HTC y Motorola, han publicado instrucciones oficiales de rooteo para algunos de sus modelos. Los teléfonos Google Nexus tienen un proceso de enraizamiento de documentos mediante el comando fastboot oem unlock
.