博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker再曝安全漏洞,这次是PWD的问题
阅读量:6224 次
发布时间:2019-06-21

本文共 1336 字,大约阅读时间需要 4 分钟。

近日,网络安全公司CyberArk的研究人员发现了一种破解流行Play-with-Docker(PWD)站点的方法,可绕过容器隔离边界限制,直接获取用户文件。不过,该错误配置目前已被修复。

近年来,容器已成为应用程序部署越来越流行的方法,为运行和管理本地和云工作负载提供了一种灵活的工作方式。近日,安全公司Cyber Ark称发现存在安全风险,攻击者可轻松访问主机系统资源。随后,研究人员向Play-with-Docker维护人员披露了此问题,目前该错误已得到解决。

PWD主要提供在线资源,让开发人员可以轻松了解和使用流行的Docker容器应用程序技术。容器和应用程序在操作系统中是互相隔离的,常规状态是用户无法绕过容器隔离限制查看底层主机操作系统。

但是,该安全公司表示可以利用Linux容器的固有弱点绕开隔离限制,与在每个实例中加载内核的虚拟机不同,容器共享相同的内核代码,这是Linux容器和Docker得以快速和敏捷的原因,但这也是其致命弱点。

如何找到该漏洞?

研究团队通过使用debugfs,这是一个预装操作系统的Linux工具,用于探测底层主机的文件系统,轻松查看主机硬盘信息,并可从主机文件系统获取文件以准备攻击。

研究人员表示,除此之外,只需读取容器上的文件,例如内部proc/、dev/和sys/,同样可以指向内核,通过查看容器中指向底层Linux内核的文件,研究人员可以绘制容器的边界并测试其权限。比如,用户可从容器读取有关底层主机CPU信息,加载VM类型,底层操作系统是否针对Specter和Meltdown的某些变体进行修补,Bios版本等,还可通过检查容器用户的Linux功能来设置容器边界,看到容器用户被允许加载的Linux内核模块等。

都是容器权限的锅?

该问题与使用所谓的特权容器有关,Docker使用特权标志来创建特权容器,但根据调查,PWD使用特权容器,但没有正确保护它们。特权容器比非特权容器具有更多操作和访问权限控制。Docker容器技术提供了许多帮助保护容器的机制,其中一种方法是使用所谓的用户命名空间。通过用户命名空间,研发人员可在Docker上运行各应用程序和进程,具有更多可见性和控制权限。

在许多情况下,应用程序需要比用户命名空间容器具备更多特权。保护容器隔离的一种方法是使用虚拟机VM管理程序进行额外的虚拟化抽象,VM可以在虚拟操作系统与底层操作系统之间建立更严格的隔离边界。

如果PWD将每个容器放在单独的VM中,那么这次攻击就不会发生。研究表明,虚拟机和Linux容器之间的区别与漏洞直接有关。Linux容器更加灵活,每个实例使用相同的内核代码,这就是造成漏洞的主要原因。

企业也可以通过多种方式选择在VM中运行容器。 例如,AWS于2018年11月宣布Firecracker技术,作为隔离容器的虚拟机管理器(VMM)方法。 另一个选择是Kata Containers,这是由OpenStack基金会维护的项目。此外,容器也可在传统虚拟化技术中运行,比如VMware。

目前,PWD方面通过阻止容器中的内核模块加载,避免了此次漏洞风险。但是,团队也在寻找更有用高效的辅助工具,最大限度降低和控制风险。

参考链接:

转载地址:http://ygyna.baihongyu.com/

你可能感兴趣的文章
计算机网络-自定向下方法之计算机网络和因特网
查看>>
[若有所悟]提升工作效率的一些小技巧——资源管理器篇
查看>>
BI数据库管理RPD配置
查看>>
binary-tree-maximum-path-sum(mock)
查看>>
error C2244 "无法将函数定义与现有的声明匹配"的解决方法
查看>>
自己搭建一个记笔记的环境记录(leanote)
查看>>
浏览器处理由带BOM的utf-8格式的php文件输出的HTML问题
查看>>
C++排序算法小结
查看>>
智课雅思词汇---十四、ante,anti不仅是词根还是前缀
查看>>
地址总线
查看>>
IP通信基础课堂笔记----第二章(重点)
查看>>
谷歌搜索的技巧
查看>>
微服务(Microservices)【翻译】
查看>>
HDOJ 2087
查看>>
标题滚动!!!!
查看>>
前端模板Juicer
查看>>
java HttpURLConnection 请求实例
查看>>
luncence
查看>>
爬虫定时启动框架apscheduler
查看>>
代码写响应式时钟效果
查看>>