admin 管理员组

文章数量: 1086019


2024年4月15日发(作者:database英文)

Technology Study

技术研究

刘志明

DCW

基于改进可信计算的Docker容器安全防护技术研究

(长沙民政职业技术学院,湖南 长沙 410004)

随着云计算和容器技术的发展,Docker容器在众多领域得到了广泛应用。然而,容器安全问题日益凸显,成为制

摘要:

约容器技术发展的关键因素。文章针对现有可信计算技术在Docker容器安全防护方面的不足,提出了一种基于改进可信计

算的Docker容器安全防护技术。

可信计算;Docker容器;安全防护;隔离性;完整性

关键词:

10.3969/.1672-7274.2023.08.016

doi:

TN

918

文献标志码:

A

文章编码

:1672-7274(2023)08-

0049

-03

中图分类号:

Research on Docker Container Security Protection Technology Based on

Improved Trusted Computing

LIU Zhiming

(Changsha Civil Affairs Vocational and Technical College, Changsha 410004, Hunan, China)

Abstract: With the development of cloud computing and container technology, Docker containers have been

widely used in many fields. However, container safety issues are increasingly prominent and have become a key factor

restricting the development of container technology. In view of the shortcomings of the existing Trusted Computing

technologies in the security protection of Docker containers, this paper proposes a security protection technology for

Docker containers based on improved Trusted Computing.

Key words: trusted computing; docker container; safety protection; isolation; integrity

1 相关技术概述

1.1 可信计算技术

可信计算技术是一种保障计算环境安全和数据保

密性的技术,旨在提供一个可靠、安全和可控的计算

环境。可信计算技术的核心是基于硬件的安全机制,

以确保软件和数据在执行过程中的安全性

[1]

可信计算概念起源于20世纪90年代,随着计算

机技术和网络技术的发展,安全问题日益严重,需要

一种更高级别的安全保障技术。可信计算的核心思

想是在硬件层面提供安全保障,通过可信平台模块

(TPM)等硬件设备,实现对计算设备的安全度量、

验证和执行环境保护

[2]

图1 Docker架构图

1.2 Docker容器技术

Docker容器技术是一种基于操作系统级虚拟化的

轻量级容器技术。相较于传统的虚拟化技术,它具有

更高的资源利用率和更快的启动速度。

容器技术源于Unix操作系统中的chroot机制,后

来发展为BSD Jails、Solaris Zones等技术。Docker

是2013年推出的开源容器技术,它基于Linux内核的

cgroups和namespaces机制,实现了资源隔离和进程

隔离。Docker容器将应用程序及其依赖环境打包到

一个独立的容器中,实现了应用程序的快速部署和可

移植性

[3]

基金项目:本文系教育部科技发展中心2020年第二批中国高校产学研创新基金“新一代信息技术创新项目”《云环境下Docker容器隔离安全研究》(项目编

号:2020ITA07004)。

作者简介:刘志明(1981-),男,汉族,湖南新化人,高级工程师,硕士研究生,研究方向为网络安全。

Copyright©博看网. All Rights Reserved.

2023.08

数字通信世界

49

技术

研究

IGITCW

Technology Study

2 改进的可信计算技术研究

2.1 可信度量改进

2.1.1 基于层级结构的容器度量

由于Docker容器采用分层文件系统,我们可以设

计一种基于层级结构的容器度量方案。先对每个文件

系统层次进行度量,生成对应的度量值,然后将其存

储在可信平台模块(TPM)或其他安全硬件中。在容

器启动时,依次对各层次进行度量验证,确保文件系

统的完整性。

[4]

2.3.2 安全容器运行时环境

构建安全容器运行时环境,对容器内部进程进行

监控和隔离,以防止恶意进程的执行。同时,对容器内

部的文件系统和网络连接等组件进行限制,以确保容

器运行环境的安全性和完整性。

3 基于改进可信计算的Docker容器安

全防护技术研究

3.1 安全防护需求分析

3.1.1 隔离性保障

隔离性保障是容器安全防护的核心需求,其目

的是确保容器内的应用与其他容器以及宿主系统

之间的数据和资源相互隔离。为了实现这一目标,需

要关注以下几个方面:①网络隔离:容器之间应实现

网络隔离,防止恶意容器通过网络攻击其他容器或宿

主系统。②文件系统隔离:容器应拥有独立的文件系

统,避免容器间以及容器与宿主系统之间的文件读写

冲突。③进程隔离:容器内的进程应与其他容器和宿

主系统的进程相互隔离,防止进程间的相互影响。

2.1.2 无状态容器度量

针对无状态容器,我们可以设计一种基于签名的

度量方案。在构建容器镜像时,先对镜像文件进行数

字签名,然后将签名信息存储在镜像元数据中。在容

器启动时,对镜像文件进行签名验证,确保镜像的完

整性和来源的可靠性。

2.2 可信验证改进

2.2.1 分布式验证机制

考虑到容器可能在不同的计算节点上运行,我们

可以设计一种分布式验证机制。在容器启动时,由计

算节点发起验证请求,将度量值发送至验证服务器。

验证服务器对度量值进行核实,返回验证结果。计算

节点根据验证结果,决定是否允许容器启动。

3.1.2 完整性保障

完整性保障主要是确保容器内的数据和应用程

序代码不受外部恶意攻击者的篡改。完整性保障的关

键因素如下。①容器镜像签名:确保容器镜像来源可

靠,防止使用被篡改的镜像。②数据传输加密:对容

器间以及容器与宿主系统之间传输的数据应进行加

密,防止数据泄露和篡改。③数据存储加密:对容器内

的数据存储应实现加密,防止数据泄露和篡改。

2.2.2 基于区块链的验证机制

为了提高验证的可靠性和抗篡改能力,我们可以

采用区块链技术构建验证机制。先将度量值和验证信

息存储在区块链上,利用区块链的共识算法确保数据

的不可篡改性。同时,利用智能合约实现自动验证和

结果通知。

3.2 基于改进可信计算的Docker容器安全防

护方案设计

3.2.1 可信度量与验证方案

为了实现基于改进可信计算的Docker容器安

全防护技术,我们需要设计一个可信度量与验证方

案,确保容器在部署和运行过程中始终处于可信状

态。可信度量与验证方案包括以下几个关键环节。①

容器镜像可信度量:在容器部署之前,通过对容器镜

像进行可信度量,确保其来源可靠并且未被篡改。可

信度量涉及计算镜像的哈希值、数字签名等。②容器

运行时的可信度量:在容器运行过程中,定期对其内部

的程序代码和数据进行可信度量,确保其在运行过程

中没有受到恶意攻击或篡改。③可信验证机制:在容

器部署和运行过程中,通过与可信计算基础设施(如

TPM等)的交互,实现可信度量值的验证,确保容器

的可信状态。

2.2.3 零信任验证机制

在容器部署过程中,我们可以采用零信任验证机

制,即对容器的每个组件进行独立的验证。例如,验

证镜像的来源、构建过程和数字签名等信息,验证容

器的文件系统、进程和网络连接等组件,以确保容器

在启动前处于可信状态。

2.3 可信执行环境改进

2.3.1 基于硬件的可信执行环境

利用TPM等安全硬件实现可信执行环境,以确保

容器在运行过程中的安全性。在容器启动时,对容器

内进程、文件系统和网络连接等组件进行隔离,并将

其在可信执行环境中运行,保障容器内部的安全性和

隔离性

[5]

50

DIGITCW

2023.08

Copyright©博看网. All Rights Reserved.

Technology Study

表1 Docker可信度比较

技术

Docker默认设置

改进可信计算技术

容器镜像可信度量

×

容器运行时可信度量

×

可信验证机制

×

技术研究

DCW

②数据完整性校验:通过对容器内数据的完整性进

行校验,确保数据在处理过程中未被篡改。③访问控

制策略:为容器内的敏感数据和资源实施访问控制策

略,限制不同用户和程序对数据和资源的访问权限。

表3 Docker数据安全性比较

技术

Docker默认设置

改进可信计算技术

数据加密

×

数据完整性校验

×

访问控制策略

为实现容器镜像可信度量,我们可以利用改进的

可信计算技术,在容器镜像的制作阶段对其进行数字

签名,并在部署阶段验证签名的正确性。同时,通过计

算容器镜像的哈希值并与可信的哈希值进行比对,确

保容器镜像未被篡改

[6]

最后,在可信验证机制方面,我们将利用可信计

算基础设施(如TPM等)来存储可信度量值,并通过

与这些基础设施的交互来验证容器的可信状态,从而

确保容器始终处于安全的运行环境中。

在数据加密方面,我们可以采用如AES、RSA等

加密算法对容器内的敏感数据进行加密处理。同时,

利用如TLS、SSL等加密通信协议来保护容器之间以

及容器与外部系统之间的数据传输。

通过实现以上容器内数据保护方案,我们可以提

高基于改进可信计算的Docker容器安全防护技术的

数据安全性,确保容器内敏感数据得到充分保护。

3.2.2 可信执行环境方案

为了实现基于改进可信计算的Docker容器安全防

护技术,我们需要设计一个可信执行环境方案。可信

执行环境方案的目标是确保容器在一个受保护的、隔

离的环境中运行,从而提高容器的安全性

[7]

。可信执行

环境方案主要包括以下几个关键环节。①容器隔离技

术:通过使用容器隔离技术,确保容器内的应用与其

他容器及宿主系统之间的数据和资源相互隔离。这包

括网络隔离、文件系统隔离和进程隔离。②安全启动

机制:确保容器的启动过程受到保护,防止恶意代码

在启动过程中篡改容器内的程序和数据。③运行时保

护机制:在容器运行过程中,对其内部程序和数据进

行实时保护,以防止运行时的攻击和篡改。

表2 Docker执行环境比较

技术

Docker默认设置

改进可信计算技术

容器隔离技术

安全启动机制

×

运行时保护机制

×

4 结束语

随着云计算、微服务等技术的快速发展,Docker

容器技术已经成为企业和开发者构建、部署和管理应

用的重要工具。然而,容器技术的广泛应用也带来了安

全方面的挑战。为了提高Docker容器的安全性,本文以

改进的可信计算技术为基础,进行了Docker容器安全

防护技术的研究。未来,我们将继续关注Docker容器

安全防护技术的发展趋势,进一步优化改进可信计

算技术,并结合其他安全技术,如零信任架构、安全

多方计算等,以实现更加安全、可靠、高效的Docker

容器安全防护技术。同时,我们也期待与业界专家、

研究者、开发者共同探讨,推进容器安全防护技术的

发展。■

通过实现以上可信执行环境方案,我们可以提高

基于改进可信计算的Docker容器安全防护技术的安

全性和可靠性。

参考文献

[1] 张耀祥.云计算和虚拟化技术[J].计算机安全,2011(5): 80-82.

[2] 叶可江,吴朝晖,姜晓红,等.虚拟化云计算平台的能耗管理[J].计算

机学报,2012(6):1262-1285.

[3] 刘孜文,冯登国.基于可信计算的动态完整性度量架构[J].电子与信息

学报,2010(4):875-879.

[4] 李海威,范博,李文锋.一种可信虚拟平台构建方法的研究和改进[J].

信息网络安全,2015(1):1-5.

[5] 陈莉君,张义飞.基于 LKM 的 Docker 资源信息隔离方法[J].计算机系

统应用,2016(12):250-254.

[6] 王鹃,胡威,张雨菡,等.基于 Docker 的可信容器[J].武汉大学学报

(理学版),2017(2): 102-108.

[7] 王晓,张建标,曾志强.基于可信平台控制模块的可信虚拟执行环境构

建方法[J].北京工业大学学报,2019 (6): 554-565.

3.2.3 容器内数据保护方案

为了实现基于改进可信计算的Docker容器安全防

护技术,我们需要设计一个容器内数据保护方案。容

器内数据保护方案的目标是确保容器内的敏感数据

在存储、传输和处理过程中得到充分保护,防止数据

泄露和篡改。容器内数据保护方案主要包括以下几

个关键环节。①数据加密:对容器内的敏感数据进行

加密处理,确保数据在存储和传输过程中不被泄露。

Copyright©博看网. All Rights Reserved.

2023.08

数字通信世界

51


本文标签: 容器 技术 验证 确保 可信