如何自动扫描已部署的容器以查找安全漏洞?

时间:2018-02-03 21:30:28

标签: security kubernetes

像quay.io这样的地方可以分析他们托管的容器图像的已知漏洞。如何将其连接到Kubernetes中部署的软件?换句话说,我想要一个定期的过程:

  • 查询apiserver以列出所有广告
  • 获取与广告连播中每个容器相关联的图片
  • 根据已知的漏洞列表检查每个图像。

通过类比,我们可以通过使用内置工具或Nessus等外部操作在操作系统级别执行此操作。我发现有很多工具可以对容器图像进行静态分析;这就像.apt包的CVE数据库。如何将该图像漏洞列表应用于正在运行的系统?

1 个答案:

答案 0 :(得分:0)

  

我发现了很多可以对容器图像进行静态分析的工具;

这确实是首选方法。

作为连接到正在运行的容器并获取其图像(docker inspect might give youdocker inspect --format='{{.Config.Image}}' $INSTANCE_ID)的替代方法,您可以考虑:

  • 事先进行此分析(在图像级别)
  • 签署图片
  • 仅允许从签名图像运行容器

这就是 {{描述 Antonio Murdaca (Red Hat Inc.的高级工程师和CRI-O人员之一.Docker(Moby)核心维护者) 3}} ”。

  

使用生成其分离签名的GPG密钥对容器图像进行数字签名,将签名放在可以检索和验证的位置,最后在有人在主机上请求图像时验证它。

     

所有这一切背后的故事非常简单:如果给定图像的签名有效,则允许节点拉出图像并使用它运行容器。否则,您的节点会拒绝该图像,并且无法运行您的容器。

这样,您只允许运行其图像已经过预验证的容器。