恶意软件就在Docker容器中?

研究人员们警告称,Docker容器很可能成为恶意软件感染的完美掩饰环境。

在本届于拉斯维加斯召开的2017美国黑帽大会上,Aqu Security公司研究人员Michael Cherny与Sagie Dulce指出,Docker API可被用于实现远程代码执行与安全机制回避等目的。

作为开发人员群体当中人气极高的代码测试方案,Docker能够建立起一套完整的IT堆栈(包含操作系统、固件以及应用程序),用以在容器这一封闭环境当中进行代码运行。尽管其结构本身非常适合实现代码测试,但容器技术亦可能被攻击者用于在企业环境内进行恶意软件感染。

研究人员们解释称,攻击者不仅能够在企业网络之内运行恶意软件代码,同时亦可在过程当中配合较高执行权限。

在攻击当中,恶意一方往往会诱导受害者打开受控网页,而后使用REST API调用执行Docker Build命令,借以建立起能够执行任意代码的容器环境。通过一种名为“主机重绑定”的技术,攻击者能够绕过同源政策保护机制并获得底层Moby Linux虚拟机当中的root访问能力。

如此一来,攻击者将能够窃取开发者登录凭证、在开发者设备上运行恶意软件或者将恶意软件注入至容器镜像之内,进而在该容器的每一次启动当中实现感染传播。

作者们解释称,“在攻击完成之后,攻击者将获取到受害者网络的完全访问能力,并在其中驻留持久代码。由于这部分代码运行在Moby Linux虚拟机当中,因此很难被检测发现。”

门扉大开

更令人忧心的是,容器与开发者帐户往往拥有高级系统访问权限。当在本地开发者的PC设备上运行Docker时,其极易受到跨站点伪造攻击等入侵手段的影响,意味着攻击者将能够利用TCP请求处理等安全缺陷实现恶意目的。

研究人员们指出,“事实上,每一位安装有Docker for Windows的开发者都会在基本地设备上直接运行Docker。这主要是因为,即使Docker守护程序与容器运行在虚拟机环境之下,Docker客户端仍然能够同主机守护程序进行通信。”

Aqua Security公司表示其已经将其中一种攻击向量——即存在安全缺陷的TCP组件——上报至Docker方面,对方则发布了更新对其进行修复。

然而,Cherny与Dulce表示Docker当中还存在着其它一些可资利用的漏洞,这不仅可被用于感染容器,同时亦会影响到系统上运行的其它虚拟机乃至主机设备。

“大家必须对镜像进行扫描以消除可被利用的恶意软件或者安全漏洞。另外,运行时保护机制能够帮助您的容器拥有与预期相符的运作效果,且不致执行任何恶意行为。”

本文转自d1net(转载)

上一篇:Xcode导出App一般问题及其解决方法(开发者协议变更及Bundle Id过期问题)


下一篇:Echarts折线图表断点如何补全