Docker镜像中的严重漏洞

wfveoks0  于 2023-05-16  发布在  Docker
关注(0)|答案(1)|浏览(218)

我想在我的项目中使用Rocker镜像(R语言的Docker),并进一步分发补充版本。我将使用Podman(无根和无守护进程)从映像部署和运行容器,并向我的代码的其他用户推荐这种方法。在Docker hub上,据说这些镜像包含高严重性和其他漏洞:
https://hub.docker.com/layers/library/r-base/4.3.0/images/sha256-157acbe58cb30e19974c438622faac2391e6c6e59394b7d80eb62334a3e1a962?context=explore
很好,现在怎么办?如果容器没有root权限,并且它们不用作访问Internet的服务器,这些警告是否无关紧要?可能的风险是什么,应该如何管理?我可能需要从容器中的本地文件系统挂载目录。
感谢所有的帮助!

hlswsv35

hlswsv351#

这是一个很好的问题。我使用了你提到的一个下游图像(rocker/shiny),它有更多的漏洞,因为它使用了太多的javascript。
我用两个安全扫描软件(grype和snyk)对图像进行了扫描。他们发现了13个关键漏洞(!!).
我分别审查了每一个,阅读CVE,以评估是否有必要修复它们。以下是我学到的一些东西:

  • “关键”并不一定意味着您的数据处于危险之中。这可能只是意味着,如果有人确切地知道如何利用该漏洞,他们可以轻松地DDOS您的应用程序。例如,他们不需要发出1000个请求(来淹没你的应用),而只需要发出20个请求(请参阅here了解类似攻击的有趣信息)。如果你是一家银行或大型公司,如果你的应用程序关闭2分钟直到自动扩展,你会损失很多钱,那么你可能想确保没有人能做到这一点,但是,如果像我一样,你为少数用户制作了一个闪亮的应用程序,并且 * 极不可能 * 任何人都会费心去尝试DDOS你,那么你必须权衡是否值得担心的特定攻击向量。
  • 我在内部网络上运行的一个闪亮的应用程序(即在开放的互联网上没有,所以网络之外的人无法访问应用程序),一些关键漏洞需要恶意用户在表单字段中输入非常具体的内容,但是,由于网络之外的人无法访问应用程序(因此无法访问表单字段以输入恶意内容),我能够认为这些漏洞不是问题。
  • 一些漏洞只有在库/函数以 * 极其特定 * 的方式使用时才是问题。在这些情况下,我检查它是否被使用,如果没有,如果我很确定它不会在不久的将来(即。直到有补丁来修复它),那么我会考虑允许那个漏洞不打补丁地存在。

相关问题