
Creé un archivo como raíz y escribí una cadena en él. Ahora cambié el modo a "0" así:
root# ls -al transit/
total 4.0K
---------- 1 root root 6 Jan 5 18:15 27050
root#
Si trato de seguirlo, seguirlo o gatorlo, funciona:
root# cat transit/27050
320646
root#
¿Por qué es posible leerlo?
Respuesta1
Consulte la respuestaaquí.
Básicamente, el enraizamiento triunfa sobre los permisos.
Permisos 000 significa que sólo el root puede leer o escribir el archivo.
No conozco ningún uso especial adicional para la combinación de propiedad raíz y permisos 000.
Además, puede encontrar información valiosa en estepregunta también.
Entonces, como señala el usuario Hauke Laging en su respuesta,
Siempre asuma que
root
(y cualquier otro usuario/proceso conCAP_DAC_OVERRIDE
yCAP_DAC_READ_SEARCH
) puede hacertodo a menos que un LSM (SELinux, AppArmor o similar) le impida hacerlo.Eso significa también que debes asumir que todas las pulsaciones de teclas se pueden leer. Las contraseñas no son realmente seguras. Si desea un nivel importante de seguridad, debe utilizar un sistema que esté completamente controlado por usted (y que ni siquiera sea utilizado por nadie más).
Por lo tanto, incluso los permisos 000 no pueden restringir que el usuario root lea el contenido del archivo a menos que haya algún LSM que impida que el usuario root lea el contenido del archivo.