据报道,安全研究人员在英特尔生产的芯片组中发现了一个从未公开披露的内部功能,黑客可以利用这一功能截获设备内存中的数据。
该功能被称为“英特尔可视化内部信号架构”(Intel VISA),用来读取内存中的数据并截获芯片与外设间的通信。该功能主要用来帮助芯片工厂在生产线上测试芯片。虽然英特尔从未公开披露 VISA 的存在,相关信息一直高度保密,但研究人员找到了多种方法来启用英特尔芯片组上的这一隐藏功能,并利用它从 CPU 中截获数据。
在新加坡举办的 2019 年亚洲黑帽安全会议上,Positive Technologies 的安全研究人员 Mark Ermolov 和 Maxim Goryachy 进行了这一名为“Intel VISA: Through the Rabbit Hole.“(https://www.blackhat.com/asia-19/briefings/schedule/index.html#intel-visa-through-the-rabbit-hole-13513)的演示。VISA 是现代英特尔主板 PCH 芯片组内置的一种逻辑信号分析器,在现代英特尔处理器中也能找到类似的组件。通过 VISA,测试人员可以实时监控芯片内部的数据流动。
处理器需要通过主板芯片组来同外设(显示器、摄像头、键盘鼠标等等)通讯,而黑客利用 VISA 就能截获这些通信,从而掌握几乎所有的关键数据。芯片出厂后 VISA 功能已经关闭,且因为其从未公开,正常情况下是不会被利用的。
但演示中两位研究者证实,他们无需任何硬件修改或特殊设备就能重新开启并控制 VISA 功能。研究人员还分享了关于 Intel-SA-00086 安全建议中所提到的漏洞细节(https://www.intel.com/content/www/us/en/support/articles/000025619/software.html),黑客可以利用该漏洞访问英特尔管理引擎(Intel ME),进而启用 VISA。启用 VISA 后,黑客将更容易获取设备的所有数据。研究者甚至提到,在 VISA 的帮助下黑客可以重构芯片组的部分逻辑功能,从而编写定制化的数据监控策略。
英特尔想要低调处理这一漏洞,他们告诉ZDNet说,利用 VISA 发起攻击需要攻击者物理接触设备本身,并且英特尔已经处理了 Intel-SA-00086 漏洞。然而,研究人员并不赞同英特尔的反应。有报道指出,一些网络讨论发现修补过的英特尔芯片组固件可以使用英特尔 ME 降级,从而重新让芯片组暴露在危险之中,并让攻击者可以进而获得 VISA 的控制权。但也有安全人员提醒说,由于利用该漏洞需要获得对英特尔管理引擎的控制权,鉴于大多数企业都会为该引擎设置严格的安全屏障,所以黑客从这一渠道下手的成本可能比较高昂。
Mark Ermolov 还指出,Intel-SA-00086 中提到的漏洞只是访问 VISA 的方法之一,此外还有其他方法,包括 Orange Mystery 和 Intel JTAG 密码。了解相关技术细节可以查看 Blackhat Asia 网站上分享的演示幻灯片(https://i.blackhat.com/asia-19/Thu-March-28/bh-asia-Goryachy-Ermolov-Intel-Visa-Through-the-Rabbit-Hole.pdf)。
评论