it-swarm-es.com

¿Chroot'ing en una máquina Ubuntu te da raíz?

Si tuviera que usar un Ubuntu live USB, y haga los comandos a continuación. ¿Esto literalmente solo te da acceso de root a la unidad?

Sudo mount /dev/sda1 /mnt
Sudo chroot /mnt
4
john smith

El acceso físico es acceso raíz como indica Zacharee1. Es por eso que las personas con datos confidenciales restringen el acceso físico.

Sin embargo, para desglosar un poco sus comandos, montar el disco es lo que prepara el sistema de archivos y le da acceso.

Sudo mount /dev/sda1 /mnt

Después de ese comando de montaje, puede acceder a todos los datos no cifrados en /dev/sda1

ls /mnt
cp /mnt/some_data /your_usb

etc.

Una precaución, si alguien tiene cifrado de acceso físico puede no ser suficiente para proteger los datos ya que las personas pueden aprovechar el acceso físico para romper el cifrado, "Evil Maid" es solo un ejemplo, vea https: // www. schneier.com/blog/archives/2009/10/evil_maid_attac.html

El comando chroot cambia para que ahora esté ejecutando comandos como si /dev/sda1 esté montado en / o root, suponiendo que /dev/sda1 es un sistema de archivos raíz válido y no /home o una partición de datos.

El comando chroot tiene muchos usos por encima y más allá del acceso a datos.

Entonces, después del comando chroot, los comandos que ejecuta en el Shell ahora afectan a /dev/sda1. Entonces, si cambia la contraseña o la configuración del sistema, afecta a/dev/sda1 y no al usb.

entonces, por ejemplo, si corres

passwd

la contraseña que establezca afecta al usuario raíz en/dev/sda1 y no a la raíz en el usb.

Algunas virtualizaciones, Openvz y LXC, por ejemplo, son similares a un chroot pero tienen características adicionales.

Para información adicional sobre chroot ver

https://help.ubuntu.com/community/BasicChroot

8
Panther

A menos que el sistema de archivos esté encriptado, tiene acceso completo a todos los archivos en una unidad sin conexión (es decir, desde LiveUSB). Puede hacer lo que quiera sin tener la contraseña de ningún usuario de ese sistema operativo.

El método LiveUSB es una de las formas más populares de omitir las contraseñas tanto en Windows como en Linux, ya que permite al usuario establecer una contraseña de administrador local en Windows y una contraseña de root en Linux al reemplazar archivos o ejecutar algunos comandos.

Es bastante bueno, siempre y cuando seas el que tenga acceso al hardware y no alguien en quien no confíes.

EDITAR:
Gracias a bodhi.zazen Ahora sé que, incluso con el cifrado, puede obtener acceso a un sistema de archivos. Necesita la interacción involuntaria de alguien que conozca la clave de cifrado, pero sigue siendo un método de acceso.

Lea sobre esto aquí: https://www.schneier.com/blog/archives/2009/10/evil_maid_attac.html

EDITEDIT:
Aparentemente hay muchas maneras de acceder a los sistemas de archivos encriptados.
https://www.schneier.com/blog/archives/2008/02/cold_boot_attac.html

Supongo que la lección aquí es no darle a la gente tu disco duro.

6
TheWanderer

Chroot no es lo que te da raíz, es Sudo. La mayoría de los livecds tienen Sudo configurado de modo que el usuario predeterminado en el livecd tiene acceso sin restricciones a Sudo sin contraseña. Escribir "Sudo bash" en su lugar le habría dado los mismos permisos, pero con una vista diferente del sistema de archivos.

Entonces, sí, si puede iniciar un livecd y el disco duro no está encriptado, puede fácilmente pasar cualquier permiso de archivo y leer/escribir lo que quiera, pero chroot no es lo que permite eso, arrancar el livecd que contiene un sistema en el que puede obtener root de manera trivial es.

3
Peter Green

Digamos que está haciendo la siguiente pregunta: "Si le doy permiso a alguien para ejecutar Sudo chroot/mnt", ¿pueden obtener root en el host? "La respuesta a esa pregunta es sí.

Además de la forma obvia hard de mknod (), hay una manera fácil si pueden obtener un compilador:

#include <fcntl.h>
#include <unistd.h>
int main() {
    int n = open("/", 0);
    chroot("/bin");
    fchdir(n);
    chdir("..");
    chroot(".");
    execve("/bin/sh", "/bin/sh");
}

Las cárceles Chroot no hacen nada si el atacante tiene root.

1
Joshua