首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker主机安全-容器可以从容器内部运行危险代码或更改主机吗?

Docker主机安全-容器可以从容器内部运行危险代码或更改主机吗?
EN

Stack Overflow用户
提问于 2016-08-10 19:10:28
回答 1查看 1.1K关注 0票数 10

假设我从集线器存储库中拉出一个新镜像,并在不查看dockerfile内容的情况下运行它。容器或镜像会以任何可能的方式影响我的主机吗?

请让我知道,因为我将运行一个用户在我的服务器上输入的图像名称的图像列表。我担心它是否会影响服务器/主机。

EN

回答 1

Stack Overflow用户

发布于 2016-08-10 20:07:30

对于图像的默认执行,答案是有条件的否。内核功能是有限的,文件系统也是有限的,进程空间是隔离的,而且它位于与主机不同的桥接网络上。任何允许访问主机的行为都是一个安全漏洞。

有条件的部分是,它可能会耗尽你的CPU周期,它会耗尽你的内存,它会填满你的驱动器,它会将网络流量从你的机器NAT‘’ed发送到你的IP地址。换句话说,默认情况下,没有任何东西可以阻止容器对您的主机进行DoS攻击。

Docker确实有能力限制其中的许多事情,包括限制内存、限制CPU或优先处理进程,并且有针对文件系统的配额解决方案。

您也可以从另一个方向将主机暴露给容器,从而有效地创建安全漏洞。这将包括挂载主机卷,特别是容器内的docker.sock,使用--privileged删除内核功能限制,以及使用--net=host删除网络隔离。对容器执行这些操作都会关闭Docker默认提供的保护。

由于Docker与主机共享内核的方式,它确实比虚拟机具有更低的隔离级别。因此,如果您正在运行的代码包含内核或物理硬件漏洞,则可能会访问主机。出于这个原因,如果您正在运行不受信任的代码,您可能需要研究linuxkit,它提供了一个轻量级的基于容器的操作系统,可以在vm中运行。这用于提供在windows/mac的docker上的hyperv/xhyve下运行的moby操作系统。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38871798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档