首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Docker的Python脚本沙箱

使用Docker的Python脚本沙箱
EN

Stack Overflow用户
提问于 2018-10-22 22:09:11
回答 1查看 583关注 0票数 1

如果我使用像Python3AlMountain这样的基础镜像构建一个容器,并且我将遵循docker documentation中指示的强化,那么注入和执行Python脚本是否安全?

我的意思是,如果用户要写一些危险的东西(比如使用Python函数的sudo rm -R ),那么只有容器会受到这些问题的影响,对吧?

这是一个好的实践吗?我需要执行一些小的代码片段,限制对系统,模块等的访问。

EN

回答 1

Stack Overflow用户

发布于 2018-10-22 22:20:21

在这里,我不会将Docker视为安全“银弹”;在将您正在运行的代码释放到您的系统之前,即使是在Docker下,您也至少需要有一些概念,即您正在运行的代码是“值得信任的”。

请记住,您需要拥有根权限才能运行docker,否则您可以轻松地获得这些特权(docker run -v /:/host -u root ...将允许您自由编辑主机文件系统)。如果您的应用程序确实在处理不受信任的代码,请考虑是否希望特权进程能够处理它。

除此之外,Docker容器还共享主机的内核和各种物理资源。如果存在内核权限提升错误,则运行在容器中的某些程序可能会利用此漏洞。如果您的不受信任的代码发出出站TCP调用来传送您不希望在网络上传输的数据,那么这在默认情况下是不受限制的。如果它“仅仅”使用你的CPU周期来挖掘比特币,你就无法控制它。

如果所有这些听起来对你来说是可以接受的风险水平,那么在Docker下运行某种程度上可信的代码肯定比不运行要好:你确实可以得到一些保护,防止主机上的文件和主机级别的设置(如网络配置)发生变化,特别是如果你认为你运行的代码并不是恶意的。

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

https://stackoverflow.com/questions/52931379

复制
相关文章

相似问题

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