美国国家标准技术局发布应用容器安全指南  

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 美国国家标准技术局(NIST)发布了一项有关应用容器技术安全问题的公告。该公告对之前的两个公告内容进行了总结,包括镜像、注册表、编配器、容器、主机操作系统和硬件方面的漏洞,以及相应的应对措施。  NIST的计算机安全研究中心(CSRC)负责监管NIST的数字和信息相关的项目和出版物。

美国国家标准技术局(NIST)发布了一项有关应用容器技术安全问题的公告。该公告对之前的两个公告内容进行了总结,包括镜像、注册表、编配器、容器、主机操作系统和硬件方面的漏洞,以及相应的应对措施。
 
1111

NIST的计算机安全研究中心(CSRC)负责监管NIST的数字和信息相关的项目和出版物。该公告对之前的两份有关应用容器安全的出版物进行了总结,它先是对应用容器的现状进行了总结,然后列出了影响容器安全的因素,最后提出改进应用容器安全的应对措施。
 
容器的可移植性和不可变性会导致两个地方出现安全问题。容器提供了比应用压缩包更高级别的抽象,用于发布和部署应用程序。它们具有跨环境和机器的可移植性,相同的容器镜像可以被用在开发环境、测试环境和生产环境。这对于应用的可移植性和持续交付来说虽然有一定的好处,但也带来了安全问题。安全工具和流程并不能保证容器所运行环境绝对安全,因为特定的环境可能包含很多安全漏洞。
 
容器使用了不可变模型,每当一个新版本的容器发布,旧的容器就会被销毁,新容器会代替旧容器执行任务。如果基础镜像发生变更(比如一个操作系统镜像),应用开发者就必须为相应的应用生成新的镜像。将安全漏洞补丁和缺陷修复推到生产环境变成了开发人员的责任,而不是运维人员。但实际上,运维团队应该在这方面拥有更多的经验,所以说这也是一个潜在的问题。
 
NIST发布的指南列出了六个需要应用安全措施的地方,包括镜像、注册表、编配器、容器、主机操作系统和硬件。镜像漏洞有可能是操作系统漏洞、配置问题、木马、未被信任的镜像、明文存储的秘钥。镜像是基于基础镜像构建而成的,在很多情况下,应用开发者并不知道底层镜像会存在问题。不安全的连接、过时的镜像和不完备的认证授权机制给镜像注册带来了风险。如果没有做好网络流量控制,任由无限制的访问,那么用于管理容器生命周期的编配器也会出现问题。大部分编配器并不支持多用户模式,从安全方面来看,默认的设置一般无法保证最佳的安全性。
 
容器里也可能包含了恶意代码,它们有可能会“冲出”容器,对同一主机上的其他容器或对主机本身造成威胁。容器内部未加控制的网络访问和不安全的容器运行时配置(在高级别权限模式下运行)也会带来隐患,因为容器有可能受到来自其他方面的影响,比如应用级别的漏洞。每一个主机操作系统都有一个“攻击面”,攻击者通过这个攻击面对操作系统发起攻击。主机一旦受到攻击,主机上的容器也难逃厄运。共享内核的容器会加大攻击面。
 
应对措施需要从最底层开始——也就是硬件,然后往上达到容器运行时,当然也会触及镜像、注册表和编配器。之前关于容器安全的研究也提到了类似的内容。

**Ghostcloud精灵云

Ghostcloud精灵云是国内首批从事容器虚拟化研发的企业,其产品企业级容器云PaaS/CaaS平台EcOS,与微服务/DevOps相融合,致力于为企业提供互联网化、私有云管理平台、大数据业务基础架构等服务,帮助客户降低成本、提升效率、简化运维及产品部署,提升系统可靠性和安全性。目前在金融、制造、能源、政务等领域有超过50家的客户。

双软认证企业
菁蓉杯2016创业大赛冠军
通过全国高新技术企业认定
通过ITSS云计算服务能力标准认证
2017德勤-成都高新创新创业明日之星
入围2017年云计算领域“奥斯卡”云鼎奖
荣获2017中国云计算500强|PaaS平台服务商
创富中国2016年度总决赛最受媒体欢迎企业
天府(四川)联合股权交易中心双创企业板挂牌企业
全球首批CNCF官方认证Kubernetes核心服务提供商
阿里2016云栖大会CACSC全球总决赛「十大优秀企业」
**
本篇文章来源于 Linux公社网站(www.linuxidc.com) 
原文链接 http://www.linuxidc.com/Linux/2017-12/149235.htm
作者:Hrishikesh Barua ,译者 薛命灯

目录
相关文章
|
1月前
|
运维 Java Go
Go语言基础及其在容器化应用中的优势
【2月更文挑战第23天】本文首先介绍了Go语言的基本特性和优势,然后详细阐述了Go语言在容器化应用中的重要作用和独特优势。通过深入分析Go语言的语法简洁性、并发处理能力和内存管理特性,以及Docker容器技术的轻量级、可移植性和版本控制特点,本文旨在说明Go语言与Docker容器技术的结合能够显著提升应用的开发效率和部署灵活性,为现代软件开发和运维带来革命性的变革。
|
2月前
|
消息中间件 监控 NoSQL
容器化应用系统上生产的最佳实践
容器化应用系统上生产的最佳实践
|
6天前
|
JSON Kubernetes Go
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
15 0
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
|
24天前
|
存储 安全 算法
【C++ 17 包裹类 泛型容器 std::any】深入理解与应用C++ std::any:从泛型编程到多态设计
【C++ 17 包裹类 泛型容器 std::any】深入理解与应用C++ std::any:从泛型编程到多态设计
47 1
|
28天前
|
边缘计算 Kubernetes 负载均衡
容器编排技术在云计算中的应用
随着云计算技术的飞速发展,容器编排技术作为一种重要的部署和管理工具,正在逐渐成为云计算领域的热门话题。本文将介绍容器编排技术在云计算中的应用,探讨其在提高应用程序部署效率、资源利用率以及系统可靠性方面的优势,并分析其未来发展趋势。
|
1月前
|
Kubernetes Go 开发者
Go语言与Docker容器结合的实践应用与案例分析
【2月更文挑战第23天】本文通过分析实际案例,探讨了Go语言与Docker容器技术结合的实践应用。通过详细阐述Go语言在容器化环境中的开发优势,以及Docker容器技术在Go应用部署中的重要作用,本文旨在为读者提供Go语言与Docker容器结合的具体实现方法和实际应用场景。
|
1月前
|
存储 Kubernetes 云计算
云计算基础与实战:从虚拟机到容器化应用
云计算基础与实战:从虚拟机到容器化应用
30 0
|
2月前
|
NoSQL Redis Docker
深入浅出:使用Docker容器化改进Python应用部署
在快速演进的软件开发领域,持续集成和持续部署(CI/CD)已成为加速产品上市的关键。本文将探索如何利用Docker,一种流行的容器化技术,来容器化Python应用,实现高效、可靠的部署流程。我们将从Docker的基本概念入手,详细讨论如何创建轻量级、可移植的Python应用容器,并展示如何通过Docker Compose管理多容器应用。此外,文章还将介绍使用Docker的最佳实践,帮助开发者避免常见陷阱,优化部署策略。无论是初学者还是有经验的开发人员,本文都将提供有价值的见解,助力读者在自己的项目中实现容器化部署的转型。
|
2月前
|
运维 Java 开发者
深入浅出:使用Docker容器化改善Java应用的部署与运维
在当今快速迭代的软件开发周期中,确保应用的一致性、可移植性与易于管理成为了开发与运维团队面临的重大挑战。本文旨在介绍如何通过Docker容器技术,有效地解决这些问题,特别是针对Java应用。我们将从Docker的基本概念出发,逐步深入到实际操作,展示如何将传统的Java应用容器化,以及这一过程如何帮助简化部署流程、提高应用的可靠性和可伸缩性。不同于常规的技术文章,本文试图以一种更加易于理解和实践的方式,让读者能够快速掌握容器化技术,并将其应用于日常的开发与运维工作中。
90 0
|
2月前
|
JavaScript NoSQL Redis
深入浅出:使用 Docker 容器化部署 Node.js 应用
在当今快速发展的软件开发领域,Docker 作为一种开源的容器化技术,已经成为了提高应用部署效率、实现环境一致性和便于维护的关键工具。本文将通过一个简单的 Node.js 应用示例,引导读者从零开始学习如何使用 Docker 容器化技术来部署应用。我们不仅会介绍 Docker 的基本概念和操作,还会探讨如何构建高效的 Docker 镜像,并通过 Docker Compose 管理多容器应用。此外,文章还将涉及到一些最佳实践,帮助读者更好地理解和应用 Docker 在日常开发和部署中的强大功能。
62 0