2022年9月,安全研究人员发现了一种较罕见的新型攻击方法——Hyperjacking(超级劫持)攻击,攻击者在 VMware 虚拟化软件中部署了一种感染后植入程序,以控制受感染的虚拟机系统并逃避检测。
需要强调的是,这种攻击的危害性不在于通过外部远程代码执行漏洞,而是攻击者劫持了虚拟机系统的管理员级权限。谷歌的 Mandiant 威胁情报部门将其称为一种严重危害虚拟机运行的“新型恶意软件生态系统”,因为当攻击者获得虚拟机的超级管理员权限时,就可以对虚拟机管理程序进行持续访问并执行任意命令。
什么是超级劫持攻击
从英文名称来看,超级劫持(Hyperjacking)攻击是超级管理程序(hypervisor)和劫持攻击(jacking)的结合体。因此,超级劫持攻击主要指通过对虚拟机(VM)的恶意攻击实现未经授权的高级管理权限控制。
基于hypervisor的虚拟化应用
尽管虚拟机必须存在于硬件服务器上,但它们需要使用虚拟组件(如虚拟CPU)进行操作。而Hypervisor则是虚拟机环境正常运行的关键,因为hypervisor是一种运行在基础物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应用共享硬件,也可称为虚拟机管理器(VMM)。超级劫持攻击的目标正是虚拟机的hypervisor。
尽管安全研究人员很早就提出了超级劫持攻击发生的可能性。但多年来,这种类型的攻击并未在实际安全事件中出现,原因可能是攻击者在权衡性价比后,发现有更轻松的攻击渠道,比如通过更传统的恶意软件。然而,随着技术和网络攻击者策略的不断演进,超级劫持攻击的发生风险正在逐年增加。
超级劫持攻击原理
超级劫持攻击的主要目标是hypervisor。在典型的攻击中,原始的hypervisor将被攻击者控制的恶意hypervisor替换,这样攻击者就可以获得对合法hypervisor的非法控制并滥用虚拟机。
通过控制虚拟机的hypervisor,攻击者还可以反过来获得对整个虚拟机服务器的监控权,这意味着他们的恶意行为更加隐蔽,难以被识别发现。在今年9月发现的超级劫持攻击案例中,就发现黑客使用超级管理员权限来监视受害者。
根据Mandiant的研究报告显示,攻击者在发起超级劫持攻击时采取了以下攻击行动:
- 维持对hypervisor的持久管理访问权限;
- 向hypervisor发送可以路由到客户虚拟机(VM)的执行命令;
- 在ESXi管理程序和在其上运行的客户机之间传输文件;
- 篡改管理程序上的日志服务;
- 从一个客户VM向运行在同一管理程序上的另一个客户VM执行恶意操作命令。
VMware公司的研究人员还证实了在其虚拟化应用环境中发现了一种新的针对vSphere的恶意软件变体,当此恶意软件被激活时,攻击者可以使用存在的安全漏洞来损害客户利益。
攻击者或恶意内部人员部署的恶意软件有效负载
超级劫持攻击防护策略
值得庆幸的是,与网络钓鱼和勒索软件等非常流行的攻击策略相比,超级劫持攻击目前还是一种相对较新的网络犯罪手段,但它很可能会在黑产犯罪组织中快速流行起来,以实现其监视受害者并窃取数据资产的犯罪企图。因此,如果企业正在使用一个或多个虚拟机,请尽快加强对它们的防护措施,以避免沦为高级劫持攻击的受害者。
1、认证与授权
企业在部署虚拟基础设施时常常忽略建立适当的访问控制策略。系统管理员通常可以不受限制地访问大型虚拟机的根目录,这将使企业更容易遭受超级劫持攻击。通过应用基本的纵深防御安全原则和采用最小特权模型,可以有效阻止这种攻击。作为最小权限模型的一部分,强密码策略和多因素身份验证的使用可以帮助减轻这些攻击。
2、基于角色的访问控制
除了使用最小特权模型,企业还应该在部署虚拟机之前实现基于角色的访问控制策略,以防止超级劫持攻击威胁。通过定义详细的、细粒度的基于角色的访问控制,使用最小特权访问原则来限制超级管理员的能力。这些举措还可以帮助确定谁可以访问虚拟环境中的内容。
3、二级审核
二级审核(Secondary approval)可以在用户对资源执行敏感的、破坏性的操作之前强制执行额外的审核。例如,如果某些特权用户正在执行删除或关闭虚拟机、编辑防火墙或创建边缘网关服务,系统可以要求二级审核。此外,特权用户不能批准自己发起的请求,即使他们在审核组中。
最小权限、二级审批和基于角色的访问控制
4、主机认证
主机认证是另一个防范超级劫持攻击的关键举措,虚拟环境管理员可以使用它在某些场景中帮助阻止攻击者。例如,主机认证可以确保在主机启动周期中,可以通过利用“指纹”或一组唯一的主机测量值来确定虚拟机系统当前的可信任状态。
5、完善基础安全措施
企业应该始终确保为虚拟机应用系统配备了完善的基础防护措施。例如,可以使用防火墙隔离每个虚拟机,并确保主机设备具有足够的防病毒保护。当攻击者获得对虚拟机的控制时,他们可以使用它访问其他硬件。因此,尽量不要将虚拟机链接到不必要的设备,以避免攻击者在完成攻击后进一步利用它。
组织还应该确保为hypervisor定期打补丁,以防恶意行为者利用软件中的错误和漏洞。这是网络犯罪分子实施攻击的最常见方式之一,有时在软件供应商意识到安全漏洞存在之前,他们就会造成大量破坏。