写点什么

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

  • 2017-12-07
  • 本文字数:1110 字

    阅读完需:约 4 分钟

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

NIST 的计算机安全研究中心(CSRC)负责监管 NIST 的数字和信息相关的项目和出版物。该公告对之前的两份有关应用容器安全出版物进行了总结,它先是对应用容器的现状进行了总结,然后列出了影响容器安全的因素,最后提出改进应用容器安全的应对措施。

容器的可移植性和不可变性会导致两个地方出现安全问题。容器提供了比应用压缩包更高级别的抽象,用于发布和部署应用程序。它们具有跨环境和机器的可移植性,相同的容器镜像可以被用在开发环境、测试环境和生产环境。这对于应用的可移植性和持续交付来说虽然有一定的好处,但也带来了安全问题。安全工具和流程并不能保证容器所运行环境绝对安全,因为特定的环境可能包含很多安全漏洞。

容器使用了不可变模型,每当一个新版本的容器发布,旧的容器就会被销毁,新容器会代替旧容器执行任务。如果基础镜像发生变更(比如一个操作系统镜像),应用开发者就必须为相应的应用生成新的镜像。将安全漏洞补丁和缺陷修复推到生产环境变成了开发人员的责任,而不是运维人员。但实际上,运维团队应该在这方面拥有更多的经验,所以说这也是一个潜在的问题。

NIST 发布的指南列出了六个需要应用安全措施的地方,包括镜像、注册表、编配器、容器、主机操作系统和硬件。镜像漏洞有可能是操作系统漏洞、配置问题、木马、未被信任的镜像、明文存储的秘钥。镜像是基于基础镜像构建而成的,在很多情况下,应用开发者并不知道底层镜像会存在问题。不安全的连接、过时的镜像和不完备的认证授权机制给镜像注册带来了风险。如果没有做好网络流量控制,任由无限制的访问,那么用于管理容器生命周期的编配器也会出现问题。大部分编配器并不支持多用户模式,从安全方面来看,默认的设置一般无法保证最佳的安全性。

容器里也可能包含了恶意代码,它们有可能会“冲出”容器,对同一主机上的其他容器或对主机本身造成威胁。容器内部未加控制的网络访问和不安全的容器运行时配置(在高级别权限模式下运行)也会带来隐患,因为容器有可能受到来自其他方面的影响,比如应用级别的漏洞。每一个主机操作系统都有一个“攻击面”,攻击者通过这个攻击面对操作系统发起攻击。主机一旦受到攻击,主机上的容器也难逃厄运。共享内核的容器会加大攻击面。

应对措施需要从最底层开始——也就是硬件,然后往上达到容器运行时,当然也会触及镜像、注册表和编配器。之前关于容器安全的研究也提到了类似的内容。

查看英文原文 NIST Publishes Guidelines on Application Container Security

2017-12-07 18:001760
用户头像

发布了 322 篇内容, 共 150.2 次阅读, 收获喜欢 148 次。

关注

评论

发布
暂无评论
发现更多内容

CUDA编程基础与Triton模型部署实践

阿里技术

cuda 模型部署

谷歌研究科学家:ChatGPT秘密武器的演进与局限

OneFlow

走进 RocketMQ(五)高性能文件读写

白裤

Java RocketMQ 消息队列 文件读写优化

【异常解决】UnknownHostException: api.weixin.qq.com 的解决方案

No8g攻城狮

小程序 微信 Java EE

AI日课@20230411:Prompt的三个层次和三个“万万没想到!”

无人之路

ChatGPT

【实践篇】基于CAS的单点登录实践之路

京东科技开发者

CAS SSO 单点登录 企业号 4 月 PK 榜

Hybrid App 选用什么前端框架更好

Onegun

flutter React Native Hybrid

在线Plist文件格式转Json文件格式

MobTech 秒验|极速验证,拉新无忧

MobTech袤博科技

这样也行,在lambda表达式中优雅的处理checked exception

程序那些事

Java stream 程序那些事

🔥笔耕不辍,筑梦前行,三周年连更活动来啦!

InfoQ写作社区官方

热门活动 三周年连更

MySQL索引数据结构入门

江南一点雨

Java MySQL

海外 SaaS、工具、技术栈实用指南

SaaSLab

SaaS 技术栈 海外市场

SELECT COUNT(*) 会造成全表扫描?回去等通知吧

程序员大彬

Java MySQL

架构实战营第10期模块八作业

刘博

Java运算符、标识符以及进制

timerring

Java

实用技术宝典:MAC地址格式转换多种实现方式

小毛驴的烂笔头

linux命令 linux运维

Kubernetes 本地持久化存储方案 OpenEBS LocalPV 落地实践下——原理篇

江湖十年

后端 #Kubernetes# Go 语言

百度工程师的软件质量与测试随笔

百度Geek说

测试 软件质量 测试技术 智能测试 企业号 4 月 PK 榜

JMeter CSV 参数文件的使用方法

Liam

软件测试 测试 Jmeter csv

走进 RocketMQ(六)事务消息的设计

白裤

Java RocketMQ 事务消息 最终一致性

Django笔记八之model中Meta参数的使用

Hunter熊

Python django model meta

如何调整和优化Go程序的内存管理方式?

Jack

【深入了解系统性能优化】「实战技术专题」全方面带你透彻探索服务优化技术方案(方案篇)

码界西柚

性能优化 JVM 软件开发 4月日更 编程体系

美国国家标准技术局发布应用容器安全指南_DevOps & 平台工程_Hrishikesh Barua_InfoQ精选文章