¿Qué es un chroot?
Un chroot es un área aislada en un sistema informático donde los usuarios pueden probar programas no confiables y participar en otras operaciones que no desean afectar el resto de la computadora. Se usa en sistemas UNIX y similares, y requiere que el usuario ejecute una serie de comandos que ch ange el directorio root utilizado como referencia por el programa. El comando chroot debe usarse con cautela porque el sistema aún puede ser vulnerable si no está configurado correctamente, o si el usuario no ejerce cuidado al operar dentro de él.
Cuando un usuario crea un entorno de chroot, los programas ejecutados dentro de ese entorno tratan el directorio especificado como la raíz. Estos programas suponen que no hay directorios más altos y, por lo tanto, no pueden acceder al directorio raíz verdadero en la parte superior del sistema de archivos. Esto hace que sea difícil hacer modificaciones que puedan poner en peligro el resto del sistema. Otros programas no pueden acceder y modificar la información dentro del chroot, either; actúa como una unidad de aislamiento.
Chroot se puede romper, utilizando una variedad de técnicas. Uno de los más básicos implica dejar al usuario en el chroot con privilegios raíz, que permiten modificaciones generalizadas al sistema. Los programas pueden aprovechar esto para salir de su cárcel digital y acceder al resto del sistema. Por esta razón, es importante cambiar los permisos del usuario lo antes posible, una medida estándar en seguridad informática. Dejar a los usuarios establecidos en los roles menos privilegiados como regla general puede reducir el riesgo de un problema de seguridad.
El directorio raíz falso también debe poblarse adecuadamente con los programas de recursos que deben usar. Si no es así, no pueden funcionar correctamente. Los usuarios generalmente mantienen cualquier cosa que no sea estrictamente necesaria fuera del chroot, pero necesitan asegurarse de que haya información disponible. A medida que los usuarios navegan en el entorno, no pueden tomare de cualquier problema o inquietud específica que surjan, por lo que son conscientes antes de que prueben los mismos procesos en el sistema informático en general.
Este puede ser un entorno de prueba útil, donde un usuario desea explorar código o programas con un riesgo reducido para el resto del sistema. También puede ser valioso para manejar materiales desconocidos o no confiables. En lugar de cargarlos directamente en el sistema, el usuario puede usar chroot para examinarlos y evaluarlos para determinar si están seguros.