Oracle花了整整15个月的时间来修复之前的一个类似问题之后,俄罗斯研究人员索性在GitHub上发布了详细介绍VirtualBox零日漏洞的报告文章。
俄罗斯一名安全研究人员公布了影响VirtualBox的一个零日漏洞方面的详细信息,而VirtualBox是用于运行虚拟机的Oracle应用软件。
据上传到GitHub的文本文件显示,圣彼得堡的研究人员谢尔盖•泽伦尤克(Sergey Zelenyuk)发现了一条漏洞链,这些漏洞让恶意代码可以逃离VirtualBox虚拟机(访客操作系统),在底层的(主机)操作系统上执行。
一旦离开了VirtualBox虚拟机,恶意代码将在操作系统的有限用户空间(内核ring 3)中运行,但泽伦尤克表示,攻击者可以利用许多已知的权限提升漏洞来获得内核级访问权限(ring 0)。
泽伦尤克说:“这种攻击是100%可靠的。这意味着它要么总是得逞,要么因不匹配的二进制代码或我没有叙述的其他更微妙的原因而无法得逞。”
这名俄罗斯研究人员表示,该零日漏洞影响所有目前的VirtualBox版本,无论用户运行什么样的主机或访客操作系统都可以得逞,对刚创建的虚拟机的默认配置而言屡试不爽。
除了撰文详细介绍整个漏洞链外(https://github.com/MorteNoir1/virtualbox_e1000_0day),泽伦尤克还发布了视频证据,显示了对Ubuntu主机操作系统上的VirtualBox里面运行的Ubuntu虚拟机执行的零日漏洞攻击。
所幸,该零日漏洞并不对同样严重依赖虚拟机的云托管环境构成威胁。大多数云计算服务使用直接在服务器硬件上运行的类型-1(原生)虚拟机管理程序来管理虚拟机。VirtualBox是类型-2虚拟机管理程序,因为它在已经运行的操作系统(主机操作系统)里面运行虚拟机(访客操作系统)。
该漏洞让安全研究人员们感到恐慌,因为VirtualBox是用于日常恶意软件分析和逆向工程的最流行的虚拟机应用软件之一。
许多人表示了担忧:恶意软件的开发者可能将该零日漏洞的攻击链嵌入到其他种类的恶意软件中,随后能够逃脱VirtualBox虚拟机,并使研究人员的主操作系统感染上恶意软件。
今天披露的零日漏洞也是泽伦尤克已发现影响VirtualBox的第二个逃离虚拟机的漏洞。他在2017年年中发现并报告了一个类似的问题,Oracle花了整整15个月的时间才修复。
这个异常漫长的修补过程似乎激怒了泽伦尤克,他不是向Oracle报告这个漏洞,而是决定在不通知这家供应商的情况下将详细信息直接发布到网上。泽伦尤克知道自己的决定会受到批评,他给出了以下理由来解释这个颇有争议的举措:
我很喜欢VirtualBox,它与我为什么发布零日漏洞毫无关系。原因是我对信息安全界的现状、尤其是安全研究和漏洞悬赏颇为不满:
1)为漏洞补丁等上大半年被认为很正常。
2)在漏洞悬赏领域,以下这些现象被认为很正常:
i)等待一个多月,才验证提交的漏洞、才决定要不要花钱购买。
ii)草率改变决定。今天你弄明白某家公司的漏洞悬赏计划会购买软件中的漏洞,可是一周后你提出了漏洞,得到的回复却是“不感兴趣”。
iii)没有一份确切的列表,列出漏洞悬赏计划有兴趣购买哪些软件的漏洞。这对于漏洞悬赏来说很方便,可是对研究人员来说不方便。
iv)漏洞价格方面没有明确的上下限。有许多因素影响价格,但研究人员需要知道什么漏洞值得研究、什么不值得研究。
3)夸大妄想和营销噱头:为漏洞命名并创建专门的网站,一年内开上千次会议,夸大作为安全研究员的自身工作的重要性,觉得自己是“全世界的救世主”。醒醒吧,老兄。
我已经受够了前面两个,因此我做出的举动是全面披露。信息安全人士,请继续大胆前行。