E安全7月17日讯 IBM Research 已经创造出一种新的软件安全性衡量方法——Horizontal Attack Profile(简称 HAP),其发现适当保护下的容器(Containers)几乎能够提供与虚拟机(VM)相媲美的安全水平。
虚拟机是否比容器更加安全? 虚拟机比容器更加安全!——这可能被大多数人认为是正确答案,但 IBM Research 却发现,容器完全有可能与虚拟机同样安全,甚至更加安全。 容器
软件安全性衡量方法——HAP方案 IBM Research 工程师兼顶尖 Linux 内核开发人员詹姆斯·博顿利(James Bottomley)写道,“目前关于容器与虚拟机管理程序间安全性辩论中的一大核心问题,在于没人能够开发出一种真正可靠的安全性衡量方法。所以争论完全仅限于定性方面(由于接口宽度,虚拟机管理程序“让人觉得”比容器来得更安全),但实际上还没有人进行过定量比较。 为了解决这个难题,博顿利创造了 HAP 方案,旨在以客观方式衡量并描述系统的安全性水平。博顿利发现,“采用精心设计的安全计算模式(seccomp)配置文件(用于阻止意外系统调用)的Docker容器提供了与虚拟机管理程序大致相当的安全性。” 垂直攻击配置文件VAP博顿利首先定义了垂直攻击配置文件(简称 VAP)。该配置文件中的全部代码用于通过遍历提供服务,从而实现数据库输入与输出信息的更新。与其它程序一样,这部分代码自然也存在 Bug。尽管其 Bug 密度各不相同,但一般来讲遍历的代码越多,其中存在安全漏洞的可能性就越大。HAP就是堆栈安全漏洞(可以跳转进入到物理服务器主机或虚拟机)。
HAP 原理 HAP 是最为严重的一类安全漏洞。博顿利将其称之为“潜在的商业破坏事件”。当问到如何利用HAP来衡量系统安全时,博顿利解释称:
运行的代码越多越可能存在HAP安全漏洞简而言之,你衡量一个系统(无论它是裸机、虚拟机还是容器)运行某个特定应用程序使用了多少行代码。其运行的代码越多,存在HAP级别的安全漏洞的可能性就越大。 在确定了 HAP 以及如何对其加以衡量之后,博顿利随后运行了几轮基准测试:
后两者亦运行有配备简单外部事务客户端的 Web 服务器。 博顿利在此次测试当中使用到了:
博顿利发现,Nabla 运行时拥有“优于 Kata 虚拟机管理程序容器技术的 HAP,这意味着发现了一种在 HAP方面优于虚拟机管理程序(即安全性更高)的容器系统。” 不过体现出安全优势的绝不只有 IBM 公司的项目。他同时表示,“具有经过精心策划的 seccompt 配置文件的 Docker 容器(能够阻止意外系统调用)同样能够提供与虚拟机管理程序基本相当的安全表现。” GVisor 的表现则有所不同。好消息是,gVisor 在 Docker 用例方面表现不错;但在另一个用例中,其表现则不及虚拟机管理程序。 博顿利推测,这是因为“gVisor 试图通过在 Go 中重写 Linux 系统调用接口以改善兼容性。但是开发人员并没有注意到 Go语言运行时实际使用的系统调用量,而这些结果实际上会暴露在外。”如果他的猜测没错,那么博顿利认为 gVisor 的未来版本可以通过重写来解决这一安全问题。 不过,真正的问题并不在于哪种技术本身更加安全。对于最严重的安全问题而言,容器与虚拟机的安全水平大致相当。博顿利认为,“事实上完全有可能出现比虚拟机管理程序更加安全的容器解决方案,而这将给两种技术谁更安全的争论彻底划上句号。”为了弄清二者在恶意应用面前的暴露水平,可能需要采用某种类型的模糊测试。 除此之外,博顿利的工作仅仅只是一个开始。他表示,这项工作的价值在于证明以客观方式衡量应用程序安全性并非不可能。他解释称,“我认为这项工作并不代表着争论的结束;但通过对此次测试的详尽描述,他希望更多的人也可能开始自己的量化衡量尝试。 E安全注:本文系E安全独家编译报道,转载请联系授权,并保留出处与链接,不得删减内容。联系方式:① 微信号zhu-geliang ②邮箱[email protected] |
| 本文出处: https://www.easyaq.com/news/2006781543.shtml |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|