开源容器技术安全分析

2026-04-08 国家保密科技测评中心

3.1.2 Docker镜像源的安全问题

Docker提供了Docker Hub可以让用户上传创建的镜像,以便用户下载,快速搭建环境。但同时有一些安全问题需要应对,如Docker镜像存在黑客上传恶意镜像、镜像使用有漏洞的软件、中间人攻击篡改镜像等。这些问题都与我们在网络上下载软件所遇到的问题相同。

3.1.3 Docker架构缺陷与安全机制

Docker本身的架构与机制可能产生的攻击场景是在黑客已经控制了宿主机上的一些容器(或者通过在公有云上建立容器的方式获得这个条件)后,对宿主机或其他容器发起攻击来产生影响。存在容器之间的局域网攻击、耗尽资源造成拒绝服务攻击、调用有漏洞的系统、通过Docker提权等安全隐患。

3.2 开源容器编排技术K8S面临的安全隐患

3.2.1 容器之间通信带来的安全隐患

容器和Pod(K8S最小运行单元)需要在部署中相互通信,也需要与其他内部和外部端点通信才能正常工作。如果某个容器被破坏,攻击者可影响的环境范围与该容器的通信范围直接相关,这意味着与该容器通信的其他容器以及Pod可能会遭受攻击。

3.2.2 镜像带来的安全问题

K8S是对容器的管理和多个容器的编排、互操作,容器运行需要拉取镜像。因此容器镜像带来的安全问题在容器编排过程中依然存在,而且波及范围更广。

3.2.3 K8S本身的安全隐患

2020年,MITRE CVE发布30个K8S漏洞(截至2020年12月28日),这里举例以下典型漏洞。

编号CVE-2020-8558的漏洞:

发现版本1.1.0-1.16.10、1.17.0-1.17.6和1.18.0-1.18.3中的Kubelet和kube-proxy组件允许相邻主机访问TCP和UDP服务绑定到节点上或在节点的网络名称空间中运行的127.0.0.1。通常认为此类服务仅可由同一主机上的其他进程访问,但是由于这种缺陷,与该节点在同一LAN上的其他主机或与该服务在同一节点上运行的容器可以访问该服务。

编号CVE-2020-8557的漏洞:

版本1.1-1.16.12、1.17.0-1.17.8和1.18.0-1.18.5中的K8S kubelet组件不考虑Pod写入其自己的/etc/ hosts文件的磁盘使用情况。计算Pod的临时存储使用量时,kubelet刨除管理器不包括kubelet挂载在Pod中的/etc/ hosts文件。如果Pod将大量数据写入/etc/hosts文件,则可能会填充节点的存储空间并导致节点故障。

编号CVE-2020-8558的漏洞:

利用K8s节点之间网络访问控制的安全隐患造成的漏洞,没有实现主机之间的隔离造成安全隐患。

3.3 基于容器的开发交付机制安全问题

容器的使用为软件开发交付带来了便利,如DevOps模式。但由于种种原因,安全问题没有得到足够重视,例如:

(1)DevOps偏向于设计开发和交付,由于大量使用自动化流水线工具,安全人员没有及时参与;

(2)大多数安全人员不熟悉开发运维流水线中的常用工具,尤其是与其互操作和自动化流水线功能相关的技术;

(3)大多数安全人员不了解容器是什么,更不用说容器独特的安全问题是哪些了;

(4)安全常被视为与开发运维敏捷性相对立的东西,因为DevOps追求快速交付、持续交付,而从安全角度看,在快速交付的同时,应尽量落实安全控制;

(5)安全基础设施依然建立在硬件设计上,而硬件设计往往落后于软件定义和可编程性的概念,这就造成了很难将安全控制措施以自动化的方式集成到DevOps开发运维流水线的局面。

与其他新兴技术一样,容器和DevOps并非从一开始就将安全考虑了进去。在大多数企业中,容器和DevOps尚未纳入企业整体安全计划,但由于可能已经部署到了企业中某些地方,这些技术理应被当做需要保护的对象。

3.4 企业利用容器技术将面临新的发展机遇和安全问题

在传统企业如制造业中,智能制造、信息物理系统、数字孪生、物联网、5G等新兴信息技术正逐渐得到应用,容器技术能为新兴信息技术的利用注入活力,比如轻量化的容器能够为设备的数字化、智能化升级赋能。由于开源容器技术的易获得、易运行、易维护、易移植等优势,为传统企业的数字化转型提供了动能。同时,存在的安全问题也不能忽视,容器物理运行环境的安全、容器的故障恢复能力都应该得到关注;数据和数据流动的安全依然是企业应用容器技术的安全防护的重中之重,容器与传统技术不同,用户无须关心容器内部的运行情况,拉出应用程序直接运行即可,因此对于容器是否安全,数据和数据流动是否安全,用户“看”不出来,这无疑会造成容器是否能在企业安全落地的难题。

4 开源容器技术安全应对建议

4.1 开源容器技术安全的顶层设计和监管建议

目前,开源容器技术发展很快,应用也很广泛。但是我国尚未正式发布专门针对开源容器技术安全利用的相关规章制度。面对眼花缭乱的容器技术市场和琳琅满目的容器安全技术,普通开发者和用户很难分辨哪些镜像是安全的,哪些镜像是不安全的。因此,建议相关部门定期发布不安全的镜像信息;加强容器安全技术的授信,确保容器安全防护技术本身的安全可靠;对企业安全使用Docker和K8S技术提供具体指导意见。

4.2 开源容器使用的安全建议

开源容器在使用过程中,要从构建时、容器基础设施、运行时等方面进行安全控制的考虑。对此提出以下4点建议。

正文暂未发布

当前稿件尚未补充正文内容,后续可在后台完善内容后自动恢复显示。你也可以先返回栏目页浏览其他资讯。

上一篇
下一篇