走近Docker安全扫描器

简介:

本文是关于一款Docker安全扫描器的一般性使用介绍,其原名为Project Nautilus。它可以作为Docker云私有仓库或者Docker Hub官方仓库的扩展服务,安全扫描会为你的Docker镜像提供主动的风险管理和软件合规管理的详细安全配置信息。

Docker安全扫描在你部署之前可以对你的镜像进行二进制层面的扫描,并提供一个详细的材料清单(BOM)列出所有的层级和组件,不断监控新的漏洞,在新的漏洞出现时推送通知。

当你考虑现代软件供应链时,一个公司会在不同的时段协调一些不同的开发者和IT团队,来建立栈和基础设施,移动和运行软件。App开发团队最关心的就是尽可能快的写好软件并交付给客户。然而,软件供应链并不是以开发者结束,它还需要反复的迭代,在团队之间分享代码,在各个环境之间移动代码。Docker让app无缝移植并且通过安全平台传输,控制安全访问和安全内容。Docker安全扫描提供了深入Docker镜像内部的安全内容,包含内部组件的安全配置。这些信息在app生命周期的每个步骤都是可用的。

让我们深入Docker安全扫描的更多细节,看看它是怎么工作的吧。

Docker安全扫描与Docker云协同使用(还有Docker数据中心),在新的镜像上传到仓库时触发一系列事件。这个服务包含一个扫描触发器,扫描器,数据库,框架插件和连接到CVE数据库的验证服务。

深入查看安全配置

Docker安全扫描服务在用户上传镜像到Dokcer云端仓库时启动。扫描服务将镜像的各个层次和组件进行分离。然后组件发送给校验服务来与CVE数据库一起进行检查,不仅仅包括包名,版本,还包括二进制层面的内容扫描。

最后一步非常重要因为这个方法确保包的正确性。

一个Docker镜像是由许多层组成的,每个层都有许多组件和包,每个包都有相应的名字和版本信息。当漏洞报告给CVE数据库时,他们会跟一个包名和版本信息绑定。

许多服务都只是简单的校验一下包的名字,通过查询数据库中已有问题的方式。这样做是不够的,这不足以回答“容器中运行了什么?”。除了校验包名之外,我们对每个层级的二进制进行分析,然后匹配每个二进制的签名来确定组件和版本信息,然后查看数据库中已知漏洞的引用。这让我们能够找到标准BOM以外的其他组件(比如dpkg –l 或 yum list installed),包括任何静态链接来准确标识组件,这些组件已经发布补丁并且之前报告过漏洞。这个方法降低了误报率,因为相关的包可能已经修复了漏洞但是没有更新版本信息,同时也能防止某些人故意将一个恶意的包进行重命名。

为了提供保护,Docker安全扫描支持大部分的操作系统,包括主流的Linux发行版和windows服务器语言和二进制。

一旦所有东西扫描完成并返回结果,就会生成BOM的细节然后存储到Docker安全扫描数据库,并打上镜像的标签。对于每个扫描报告,结果发送到Docker云然后发表到UI。

持续监控并推送通知

镜像扫描能够实时提供信息。Docker安全扫描持续性的监视和通知推送来保证你的镜像安全。Dokcer安全扫描数据库存储镜像BOM的细节和每个组件的漏洞状态。当一个新的漏洞报告给CVE数据库,Docker安全扫描将会在数据库中查看那个镜像相关的包会受到影响然后推送通知邮件给管理员。

这些推送信息包含漏洞的信息,以及仓库中受影响的目标列表。通过这些信息,IT团队知道哪些软件受影响,从而可以主动进行管理,审视漏洞的严重性并快速做出决策。

整个内容生命周期的安全

Docker安全扫描是一个很棒的Docker工作流来帮助公司构建,迁移和运行安全软件。当与安全内容结合在一起,你可以确保软件的正确性,保证软件没有被篡改。例如,官方仓库从 DockerCon EU in Nov 2015 开始就使用安全扫描来获取漏洞信息,修复问题,用内容信任签名更新镜像。这一特性让Docker能够让上游可以给你提供更安全的镜像。

开始使用

Docker云的用户的私有仓库可以免费使用Docker安全扫描(次数是有限的)。如果你登录了你可以直接查看Docker官方镜像的扫描结果,不管你是不是订阅用户。安全扫描也会扩展Docker数据中心和Docker云给用户。

在Docker云使用:

为了使用这一特性,进入Account Settings >Plans然后勾选。一旦激活,每个私有仓库最常使用的3个目标都会被扫描,BOM结果将会在24小时内显示。然后,docker安全扫描会在你每次上传之后扫描你的镜像。

下面的截图展示了用户的5个私有仓库扫描结果。 Dokcer安全选项在平台的底部。

如果你有一个Docker Hub账户确没有使用过Docker云——别担心!你同样可以登录Dokcer云来工作。原生整合保证你的Docker Hub仓库展示Docker云仓库部分。私有仓库按7美元每个月,可以使用5个私有仓库,并且可以使用Docker云。

本文转自d1net(转载)

相关文章
|
存储 Kubernetes 安全
|
1月前
|
负载均衡 容灾 安全
Docker Swarm总结+基础、集群搭建维护、安全以及集群容灾(1/5)
Docker Swarm总结+基础、集群搭建维护、安全以及集群容灾(1/5)
65 2
|
2月前
|
测试技术 Linux 数据安全/隐私保护
【好用的个人工具】在Docker环境下部署WatchYourLAN轻量级网络IP扫描器
【2月更文挑战第2天】在Docker环境下部署WatchYourLAN轻量级网络IP扫描器
99 0
|
4月前
|
监控 安全 持续交付
Docker与容器化安全:漏洞扫描和安全策略
容器化技术,特别是Docker,已经成为现代应用程序开发和部署的关键工具。然而,容器化环境也面临着安全挑战。为了保障容器环境的安全性,本文将介绍如何进行漏洞扫描、制定安全策略以及采取措施来保护Docker容器。我们将提供丰富的示例代码,以帮助大家更好地理解和应对容器安全的问题。
|
4月前
|
安全 应用服务中间件 nginx
Docker安全性:最佳实践和常见安全考虑
Docker 的快速发展和广泛应用使其成为现代应用开发的热门选择,然而,容器环境的安全性也受到关注。本文将深入研究 Docker 安全性的最佳实践,包括容器镜像安全、容器运行时安全、网络安全等方面,并提供丰富的示例代码,帮助读者全面了解如何确保 Docker 环境的安全性。
|
4月前
|
安全 数据可视化 数据安全/隐私保护
猿创征文|docker本地私人仓库快速搭建后的安全优化(用户鉴权和简易的web界面开启)
猿创征文|docker本地私人仓库快速搭建后的安全优化(用户鉴权和简易的web界面开启)
36 0
|
9月前
|
存储 监控 Kubernetes
Docker学习路线10:容器安全
容器安全是实施和管理像Docker这样的容器技术的关键方面。它包括一组实践、工具和技术,旨在保护容器化应用程序及其运行的基础架构。在本节中,我们将讨论一些关键的容器安全考虑因素、最佳实践和建议。
131 1
|
11月前
|
安全 Linux Docker
Linux开启Docker远程访问并设置安全访问(证书密钥),附一份小白一键设置脚本哦!(二)
Linux开启Docker远程访问并设置安全访问(证书密钥),附一份小白一键设置脚本哦!(二)
297 0
|
11月前
|
安全 网络协议 Linux
Linux开启Docker远程访问并设置安全访问(证书密钥),附一份小白一键设置脚本哦!(一)
Linux开启Docker远程访问并设置安全访问(证书密钥),附一份小白一键设置脚本哦!(一)
364 0