一个存在十一年的虚拟软盘驱动器代码漏洞导致虚拟机缓冲区溢出
非法操作可以使代码在主机上运行
备受欢迎的虚拟工作站所依赖的来自于 QEMU (一款用于管理虚拟机的开源电脑模拟器)的一段虚拟软盘控制器代码被指出有一个十分容易被引发的漏洞,该漏洞允许用户摆脱访客身份限制而获取主机代码的执行权限。
受影响的虚拟工作站有 Xen , KVM (Kernel-based Virtual Machine,开源的系统虚拟化支持模块)和被用于各种云计算服务的原生QEMU客户端。
在一篇周一发布的博文中,研究人员表示,数以千计的集群用户和上百万的终端用户可能遭受包括个人信息和公司数据在内的敏感数据泄露的危险。
代码在主机上执行所造成的风险
这个编号为 CVE-2015-3456 ,名为 VENOM 的病毒从2004年,虚拟软盘控制器代码被包含于QEMU的代码库中开始,就一直存在着。
CrowdStrike 的高级安全研究员 Jason Geffner 在一次对虚拟机中的系统管理程序进行安全检查的时候发现了这个漏洞。
由于存在于系统管理程序中的瑕疵,运行在主机上面的操作系统显得十分落后。但如果你想要对它进行更新和修复,那么你需要在客户端上取得 ROOT 权限。
根据研究人员的描述,虚拟软盘管理器通过一个固定大小的缓冲区来储存来自于客户端的命令,该缓冲区会在处理完所有的 FDC 指令(除了两个定义指令)之后被立即重置。
攻击者可以通过发送一条带有特定参数的指令来造成缓冲区的数据溢出,然后便可以在主机的超级进程环境下运行任意代码。
在软盘支持被停用的情况下,VENOM漏洞仍然可用
虽然如今的虚拟机上已经鲜见软盘驱动器,但是这个漏洞仍然显得十分重要。因为软盘驱动器会被默认挂载,而且在通常情况下,虚拟机管理员在配置虚拟机时并不会将它们禁用。
CrowdStrike 的高级安全研究员 Jason Geffner 表示,即使软盘支持被打开,这个无关漏洞的存在还是会使虚拟软盘控制器代码在 QEMU 和 XEN 产品上持续运行。
目前,针对 QEMU 和 XEN 的补丁已经发布,其他厂商应该也发布了相关的补丁。虚拟机管理员们已被建议在它们,的虚拟机上面安装最新的安全补丁。
CrowdStrike 表示,正确的配置虚拟机可以使感染的风险降到最低甚至根除。例如使用32位 Xen 系统的半虚拟化客户端和 ARM 系统都不受该漏洞的影响。
研究人员也表示,相同情况下,开启 stub-domains 也可以通过抑制管理员权限的增加使该问题得到缓解。但是 qemu-dm stub-domains 只适用于传统的” qemu-xen ”版本。
Linux Story翻译链接:http://www.linuxstory.org/11-year-old-bug-in-virtual-floppy-drive-code-allows-escape-from-virtual-machines