在虚拟机中运行不受信任的应用程序是否安全

信息安全 虚拟化
2021-08-12 18:46:07

我有一些不受信任的软件。我计划使用 Oracle VirtualBox 在我的主机 Windows 8 操作系统上的来宾 Windows 7 上运行它们。在最坏的情况下,只有我的客户操作系统会受到影响吗?黑客可以从我的主操作系统访问信息吗?我不指望这个软件的开发者能熟练到做一个“虚拟机逃生”

4个回答

逃离虚拟机不需要技巧。它只要求:

  • VM 中存在一个已知漏洞。
  • 攻击者下载并使用该漏洞。

互联网是一个了不起的东西。它允许人们做很多他们实际上并不了解的事情。

在任何情况下,如果您尽职尽责地为您的 VM 解决方案应用安全更新(即当 VirtualBox 告诉您有新版本可用时,您不会拖延:您立即下载并安装该新版本),那么成功逃脱的风险是减肥。“不熟练”的攻击者只能对已知漏洞应用已知漏洞,VM 供应商也会跟踪此类漏洞。这里的相关概念是零日:攻击者先于其他人知道的攻击;您对“不熟练的攻击者”的假设实际上意味着攻击者无法使用零日漏洞。


话虽如此,虽然您可以假设您的虚拟机很健壮,但仍然存在配置错误的风险。虚拟机解决方案,尤其是 VirtualBox,允许客户和主机之间的“快捷方式”。VirtualBox 称这些来宾添加特别是,这些允许共享文件夹;还有鼠标集成、剪贴板访问、3D 图形穿透……这些都是恶意客户代码可能影响主机的许多逃生路线。

重要的一点是“客户添加”是安装在客户中的驱动程序,它执行 VM 提供的额外功能。如果您不安装客人添加物,那么逃生孔可能仍然存在,可以使用。例如,要防止恶意访客访问共享文件夹,您必须从VM 设置中禁用(或不启用)它。

同样,如果您让 VM 使用默认网络设置 (NAT),则恶意代码可以对本地网络中的其他计算机进行网络调用。

因此,您必须检查所有 VM 设置,以确保您停用所有可能允许逃逸或在来宾之外产生不必要影响的功能。特别要注意网络配置(如果您完全停用它,或者使用内部网络,它会更简单)。

可以选择在父操作系统上挂载 USB 设备并与 VM 共享文件夹。不要那样做。如果在虚拟机中运行的恶意软件可以访问您的父操作系统文件夹/USB,它将影响其中的文件,因此如果您从父操作系统打开这些受感染的文件,感染就会传播。

几年前,我用 C 语言创建了一个实验性应用程序,它被添加到其他 EXE 文件中。我在虚拟机上运行它,忘记了我在父操作系统中共享了一个文件夹。我父文件夹中的所有 exe 文件都受到了影响。

这是来自 TMR_OS 的一个很好的列表,但添加:

  • 禁用 3D 视频增强功能
  • 禁用来宾添加
  • 禁用复制/粘贴 - 或至少不从主机粘贴到访客
  • 您可能希望启用网络来研究恶意软件。桥接是最危险的。然后是NAT,最后一个本地的私有网络是最安全最没用的。

为了保护自己免受易受攻击的虚拟机的侵害:

  • 删除网络适配器
  • 卸载 Vmware 工具
  • 禁用 USB 自动连接
  • 卸下 CD/DVD 驱动器