互联网安全中心发布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
2.8启用用户命名空间支持
2.9确认默认cgroup使用情况
2.10非必要时不变更基础设备规模
2.11 使用授权插件
2.12配置集中化与远程登录
2.13禁用旧有注册表(v1)操作
3.17验证daemon.json文件归属被设置为root:root
3.18验证daemon.json文件权限被设置为644或更严格
3.19验证/etc/default/docker文件归属被设置为root:root
3.20验证/etc/default/docker文件权限被设置为644或更严格
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基准执行相关检查。
原文标题: 22 new concerns added to Docker security benchmark
【51CTO.com独家译稿,合作站点转载请注明来源】