Como desarrollador, uso la ventana acoplable y tengo un servidor de la ventana acoplable ejecutándose en mi máquina. Yo esperaría que la ventana acoplable no le diera permiso a mi usuario para operar en archivos más allá del conjunto actual de permisos de mi usuario. El siguiente ejemplo muestra que malentiendo el modelo de seguridad del docker o que mi sistema está mal configurado:
Mi usuario no puede acceder directamente al archivo de contraseña del sistema ( /etc/shadow
) sin usar sudo y proporcionar una contraseña:
% ls -l /etc/shadow
-rw-r----- 1 root shadow 1275 Dec 18 2016 /etc/shadow
% cat /etc/shadow
cat: /etc/shadow: Permission denied
% sudo cat /etc/shadow
[sudo] password for ryan:
sudo: 1 incorrect password attempt
Sin embargo, mi usuario puede imprimir el contenido de /etc/shadow
a través del servidor acoplador sin el uso de sudo o una contraseña :
% docker run -v "/etc:/share" alpine cat /share/shadow
... prints contents of the system's /etc/shadow
Supongo que esto es posible porque el servidor de la ventana acoplable se ejecuta como usuario root.
Primero, ¿cuánta preocupación debería darme este tema en términos de seguridad? Y si es una preocupación, ¿cómo puedo configurar correctamente mi máquina de desarrollo?