将docker作为非root运行时的漏洞?

时间:2018-03-29 08:05:15

标签: security docker dockerfile user-permissions

我正在为我的Docker项目争取特权(没有巨魔),因为我正在尝试在Docker上创建我的一个用户,能够读取/写入与主机共享的卷,而主机用户应该也可以使用此目录中的docker用户进行读/写。

就我而言,Docker用户和Host用户也不应该是root用户。这意味着,在共享卷上,运行docker的用户不应该能够访问卷中未访问的文件。但是,我发现以没有root权限的用户身份运行卷不会保存root文件

示例

例如,在以下情况中

用户目录包含两个文件,一个根目录为非root用户,用户名为user且没有root权限,但他是Docker组的一部分:

C:/.../directory :
dwrx-rx--x root file1
dwrx-rx--x user file2

用户通过以下命令运行docker:

docker run -v /c/.../directory:/volume:rw -e USER_ID=$(id -u) -e GROUP_ID=$(id -g)

Docker的入口点是以下script.sh

#!/bin/bash
usermod -u ${USER_ID} dockeruser \;
groupmod -g ${GROUP_ID} dockeruser ;
chown dockeruser:dockeruser -R /volume ;
exit;

甚至在主机目录上更改了权限,即使对于我不应该写的根文件也是如此:

C:/.../directory :
dwrx-rx--x user file1
dwrx-rx--x user file2

非root的用户是否可以对不属于他的文件做任何事情?

我是一个初学者,所以,我不知道这是一个误导性的漏洞,因为我们强迫用户不是root用户还是sudo,但事实上它并没有改变任何东西,或者我刚刚得到它错了^^,所以请随时告诉我,这不是我应该处理它的方式。

此致 沃尔多

0 个答案:

没有答案