使用JFrog x射线保护OpenShift上的容器化微服务

JFrog x射线在OpenShift

我们之前的博客,我们描述了JFrog Artifactoryon OpenShift在部署时有利于企业用户集装箱microservices.现在,我们将进一步回顾主要的安全挑战面向容器内容和容器注册表当开发微服务时。我们将继续讨论在OpenShift上构建和部署容器时如何执行策略。

让我们回顾一个场景,其中许多微服务运行在OpenShift上的不同节点、项目和区域上。这些微服务运行在一个pod上,包括一个主容器、一个侧车容器和短暂的初始化容器。这些容器可以包括rpm包、Maven包、npm包等。

Pods中的漏洞

现在让我们假设有三个新的安全问题刚刚被公开,并且有很高的CVSS分数。这是你需要问的三个最重要的问题吗?

  1. 有多少微服务受到新的安全问题的影响?
  2. 我们如何追踪产生易受攻击二进制文件(JAR文件、WAR文件、npm包、Docker映像)的CI作业?
  3. 我们如何防止这些易受攻击的微服务在OpenShift上的扩散?防止构建依赖于这些脆弱组件的额外微服务?

好消息是,我们可以通过使用计算机来得到所有这些问题的答案JFrog x光并利用其与Artifactory和CI工具的集成。

集成OpenShift和Xray工作流

通过Xray集成,解决的依赖关系、提升的工件和提升的构建都是基于与工件和构建相关的元数据的。元数据包括安全问题、许可证、质量等等。

1.影响分析:评估受影响微服务的数量

x射线分析一个组件中的问题如何影响公司中的所有其他组件,并显示组件图中的影响链.当检测到漏洞时,Xray会向您显示包含受感染工件的所有微服务,以便您可以立即了解任何脆弱层对系统中所有微服务的影响

2.CI工作:脆弱二进制文件的生产者

JFrog x射线可以访问从捕获的丰富元数据Artifactory和CI工具,如Jenkins.这种元数据与深度递归扫描相结合,使Xray处于一个独特的位置,可以分析易受攻击的工件和负责生成这些工件的CI作业之间的关系。

JFrog Xtray漏洞视图

上图显示的是x射线影响分析,结果如下:

  • Apache Struts ("struts2-core-2.3.14.jar”文件)感染了一个关键漏洞,并且是许多war文件("ROOT.war””,webservice-1.1.2.war”).
  • x光已经确定了CI工作"step1-create-application-war-file"及CI职位编号"7负责构建“ROOT”。战争”文件。
  • “根”。war”文件也是Docker映像层的一部分,由多个Docker清单文件引用,如“docker-app:最新"和"docker-app: 11”。
  • Xray甚至报告了负责生成易受攻击的Docker映像的CI作业,其中包括易受攻击的WAR文件,该文件包含“Apache Struts”感染文件。

3.防止漏洞在微服务中传播

您可以在多个级别上在Xray中强制执行策略。例如,在OpenShift上部署容器化微服务时,以及在OpenShift上构建容器化微服务时

还可以根据存储库类型(开发或生产)强制执行不同类型的策略。例如,如果将严重性设置为critical,则可以防止用户在开发和生产存储库中下载不同文件类型(Docker映像、JAR文件或npm包)的易受攻击的构件。这些策略防止易受攻击的微服务被部署,因为一旦检测到漏洞,它就无法部署。为了帮助控制损害,CI集成、安全或许可证扫描可以作为构建的一部分触发,允许您失败构建作业并防止易受攻击的微服务被构建。

在Openshift上安装JFrog Xray

我们通过提供Xray在Openshift上的安装一组模板一旦安装了Xray,你就可以看到OpenShift上运行着8个微服务。

在OpenShift中查看容器化微服务