Docker安全基准:22项新增要点概述

互联网安全中心发布Docker安全基准第二版,其中添加Docker 1.11.0版本相关内容。

安全性目前及可预见的未来始终是阻碍容器广泛普及的困扰所在,技术行业对于容器与虚拟机间安全性差异的争论之声亦是此起彼伏。

事实上,容器生态支持者们表示目前已经有大量工具及产品可对其平台安全性做出改善,具体包括静态分析(镜像扫描)、运行时漏洞检测、出处溯源(镜像签名)、细粒度授权以及密码验证等等。

亦有大量初创企业开始以容器安全功能作为业务基础。目前相关变化正在快速推进,而且可以肯定的是,开源社区及各供应商在过去一年中立足于多种层面——包括操作系统、容器运行时、容器镜像、主机到集群编排工具、PaaS乃至CaaS——为容器的安全性提升做出了卓越而显著的贡献。

互联网安全中心(简称CIS)正是其中之一。CIS致力于提升网络安全水平,同时帮助公共与私营部门之间实现快速响应。CIS制定的安全基准旨在提供一套经过严格定义、公正且协商一致的行业最佳实践方案,帮助企业对自身安全性做出评估及改进。在合作社区的不懈努力下,第一套CIS Docker基准已经于去年4月面向Docker 1.6正式发布。而就在本月13号,添加Docker 1.11.0版本相关内容的全新基准版本亦新鲜出炉。

CIS Docker基准针对Docker容器基础设施安全配置做出说明性指导(以规则形式)。新的基准版本中添加了22条新规则,同时取消了原本的23条规则,目前总规则数量为83条。

随着Docker在过去一年中的快速发展,部分规则经过对应更新或者被直接取消,旨在保证新版本中的各条规则切实符合Docker现状。在1.11.0版本中,Docker将容器监控与运行时加以拆分,并由containerd与runc两个守护进程负责管理。

此次基准将Docker安全问题分为以下几类(括号中为各分类的相关规则数量):

·主机配置 (15)

·Docker守护进程配置(13)

·Docker守护进程配置文件 (20)

·容器镜像与Build文件 (5)

·容器运行时 (25)

·Docker安全操作 (5)

每条规则不仅描述了相关安全议题与如何审计部署方案的安全水平,同时还指导大家如何对其加以解决。规则及其补救措施建议皆立足于容器主机制定,而非以集群为基础,因此大家在选择解决办法时需要将集群的规模与平台选择考虑进来(包括裸机、容器PaaS乃至云环境等等)。

此次CIS Docker 1.11.0基准(PDF格式,英文原文)中的新增规则包括:

·主机配置

1.11 审计Docker文件与目录 - docker.socket

1.13审计Docker文件与目录- /etc/docker/daemon.json

1.14审计Docker文件与目录- /usr/bin/docker-containerd

1.15审计Docker文件与目录- /usr/bin/docker-runc

·Docker守护进程配置

2.8启用用户命名空间支持

2.9确认默认cgroup使用情况

2.10非必要时不变更基础设备规模

2.11 使用授权插件

2.12配置集中化与远程登录

2.13禁用旧有注册表(v1)操作

·Docker守护进程配置文件

3.17验证daemon.json文件归属被设置为root:root

3.18验证daemon.json文件权限被设置为644或更严格

3.19验证/etc/default/docker文件归属被设置为root:root

3.20验证/etc/default/docker文件权限被设置为644或更严格

·容器镜像与Build文件

4.5为Docker启用内容信息

·容器运行时

5.19不可将挂载传播方式设定为共享

5.20不可共享主机的UTS命名空间

5.21不可禁用默认seccomp配置文件

5.22不可以权限选项使用docker执行命令

5.23不可以用户选项使用docker执行命令

5.24确认cgroup使用情况

5.25限制容器获取额外权限

部分容器安全厂商亦参与到Docker安全基准的制定工作当中,也有一些提交了其产品或项目以检测并解决相关问题。虽然部分方案能够利用策略驱动型编排机制解决部分失败的安全测试问题,但实际上其几乎无法完全修复任何问题(自动修复机制仅适合少数特定问题)。

安全配置基准以免费方式向全球范围内发布,并作为面向用户的标准使用及部署。遵循1.11.0基准要求的现有工具之一为Docker Bench for Security——这是一款开源命令行工具,用于根据CIS Docker基准执行相关检查。

本文转自d1net(转载)

时间: 2024-09-17 04:05:53

Docker安全基准:22项新增要点概述的相关文章

《SolidWorks 2017中文版机械设计从入门到精通)》——1.9 SolidWorks2017新增功能概述

1.9 SolidWorks2017新增功能概述 1.9.1 草图绘制新功能1.上色草图轮廓用户可以使用上色草图轮廓设置来以上色实体的形式查看闭合草图轮廓和子轮廓.当用户选择上色草图轮廓设置时,将仅对闭合草图形状上色.这让用户能够更容易地识别形状是否完全闭合.图1-43所示为以前版本的草图,图1-44所示为2017版上色草图轮廓. https://yqfile.alicdn.com/91500602db9afcd6639eef43c04873cef284afe7.png" > 2.在3D几

长春市为高校毕业生创业免除22项费用

为了吸引优秀高校毕业生,长春市出台多项优惠政策,其中从事个体经营的高校毕业生,可免交涉及工商.税务.卫生.交通.国土.公安等部门共22项费用. 国家统招的应届本科以上毕业生,可先落户再自主择业:2002年(含)以后国家统招的应届专科毕业生,有用人单位接收,可办理就业落户审批手续:汽车制造.光电信息.生物与医药.食品及农副产品加工生产企业急需的专科学历以下毕业生,可办理进长春落户审批手续. 大中专毕业生到农村领办和创办经济实体,从事种植.养殖和生产经营活动,其人事和户籍关系由市.县(市)区人事局或

关于欧盟“网络信息安全指令”的十项核心要点

您是否了解欧盟即将于2018年要求各成员国执行的"网络与信息安全"(简称NIS)指令? 如果答案是否定的,您也无需紧张.事实上,近年来一般数据管理条例(简称GDPR)提出的纷繁复杂的法规要求确实令很多人,甚至让安全从业者感到一头雾水.不过,了解其中的具体要求确实能够帮助大家更为深刻地理解由此带来的深远影响. 今天E安全为您提供十项值得了解的网络与信息安全指令核心要点,以及其与一般数据管理条例之间的区别所在. 十大网络信息安全指令核心要点 1.代表一种方向,而非具体规定 为了将其与一般数

迅雷7新版本7.9.22.4780新增下载字幕功能

  迅雷7新版本已经更新了,将会带来全新的下载字幕功能,能够自动下载匹配的字幕,下面是详细的新功能介绍. 新功能介绍: --新增"下载字幕"功能,下载视频任务时,自动下载匹配的字幕,并根据视频文件重命名 --任务列表增加快速查看"BT任务.任务组"文件数量,及快速访问文件列表的入口 --优化创建磁力链接任务的操作体验 --移除任务列表上的"云播验片"入口 --"BT任务.任务组"文件列表中未勾选的任务,状态显示为"不

Windows 下 Docker 的安装与配置概述

本文简要说明 Windows 环境下 Docker 的安装与配置. 原理概述 Docker 最早基于 Linux 内核相关特性构建,只能在 Linux 类系统上运行.所以,Windows 上只能基于 Linux 虚拟机运行 Docker.但与微软深入合作后,从 Windows Server 2016 开始,提供了对 Docker 的原生支持.所以,在 Windows 上安装.运行 Docker 有两种模式: Windows Container:专为 Windows 设计的容器架构下原生支持.运行

PHP 5.3新增魔术方法__invoke概述_php技巧

PHP自从5.3版以来就新增了一个叫做__invoke的魔术方法,使用该方法就可以在创建实例后,直接调用对象.如下示例所示: class testClass { public function __invoke { print "hello world"; } } $n = new testClass; $n(); 执行结果为: hello world. php官方示例如下: class CallableClass { public function __invoke($x) { va

如何在 Fedora 22 上面配置 Apache 的 Docker 容器

在这篇文章中,我们将会学习关于Docker的一些知识,如何使用Docker部署Apache httpd服务,并且共享到Docker Hub上面去.首先,我们学习怎样拉取和使用Docker Hub里面的镜像,然后在一个Fedora 22的镜像上交互式地安装Apache,之后我们将会学习如何用一个Dockerfile文件来以一种更快,更优雅的方式制作一个镜像.最后,我们将我们创建的镜像发布到Docker Hub上,这样以后任何人都可以下载并使用它. 安装并初体验Docker 要求 运行Docker,

在ASP.NET 2.0中操作数据之十九:给编辑和新增界面增加验证控件_自学过程

导言 在前面三节的示例中,GridView和DetailsView控件使用的是绑定列和CheckBoxField(绑定GridView和DetailsView时,通过智能标记可以令VS根据数据库自动增加对应的类型).当编辑GridView或者DetailsView中的一行时,非只读属性的绑定列将自动转为textbox,以便用户修改现有的数据.同样地,当在DetailsView控件中新增记录时,InsertVisible属性为true(默认值)的绑定列会呈现出空的textbox,以接受用户输入.C

Hexo 升级与 Docker 初体验

背景 之前我一直使用 Hexo 2.8 来编译我的博客.几个星期前的一天,我突发奇想要给 Hexo 来个升级,于是接下来的折腾就开始了. 执行了 npm install hexo-cli -g 之后,一切都还好,当我试着执行hexo server 启动服务器的时候,悲剧发生了,没法启动.一番 Google 之后发现从 2.8 升级到 3.0 似乎没那么平滑,于是我决定降回 2.8,然后另选时间升级. 降级之路也不平坦,即使我显式给出了降级之后各个组件的版本,整个依赖树也回不到从前了.可能这个也是