背景
文章中提到专注于固件的网络安全公司Eclypsium的研究人员透露,他们在台湾制造商技嘉出售的主板固件中发现了一种隐藏机制,其组件通常用于游戏PC和其他高性能计算机。Eclypsium发现,每当装有受影响的技嘉主板的计算机重新启动时,主板固件中的代码就会无形地启动一个在计算机上运行的更新程序,然后下载并执行另一个软件[2]。
Eclypsium表示虽然该隐藏机制可以保持主板固件更新,但研究人员发现它并不安全,该机制可能会被劫持并用于安装恶意软件而不是技嘉的预期程序。而且由于更新程序是由计算机的固件触发的,在其操作系统之外,用户很难删除甚至发现它。在这项研究中,Eclypsium研究人员共列出了两百多种受到影响的技嘉主板型号。
该文章发布后引起国内外安全研究员的重视,奇安信威胁情报中心基于Eclypsium文章原文整理分析出此次事件,并通过奇安信威胁情报中心TIP研判该事件的影响面,最后对此事件进行一个整体分析。
Eclypsium原文的分析解读
(一)主要发现
Eclypsium检测到技嘉系统上的固件会在Windows启动过程中释放并执行Windows二进制文件。
此二进制文件可以从Internet下载并执行其他有效负载,而下载渠道无法保证安全。
(二)通信域名
释放的Windows可执行文件是一个.NET应用程序,它从以下域名之一下载并执行可执行负载,具体取决于其配置方式。
(三)执行过程
Eclypsium对受影响的UEFI固件初步分析确定了以下文件:
文件名 | wpbbin.exe |
MD5 | 015654475E4A6F923D9A7FB96F05EAC9 |
文件大小 | 1209656 bytes |
创建时间 | 2022-10-21 07:15:51 UTC |
该文件嵌在UEFI固件卷中,其GUID为: AEB1671D-019C-4B3B-BA-00-35-A2-E6-28-04-36。该可执行文件被嵌入到UEFI固件中,并作为系统启动过程的一部分由固件写入磁盘,这是UEFI植入程序和后门程序常用的一种技术。
在UEFI固件启动阶段,“WpbtDxe.efi”固件模块使用上述GUID将嵌入式Windows可执行文件加载到内存中,将其安装到即将加载的WPBT ACPI表中,并在Windows启动时由Windows会话管理器子系统(smss.exe)执行。在将可执行文件安装到WPBT ACPI表之前,“WpbtDxe.efi”模块会检查BIOS/UEFI设置中是否启用了“APP 中心下载和安装”功能。尽管此设置默认情况下似乎是禁用的,但它在Eclypsium研究人员检查的系统上是启用的。
然后该可执行文件在%SystemRoot%\system32\目录下释放GigabyteUpdateService.exe,并将其注册为Windows服务运行,随即从资源段中释放另一个Windows可执行文件,该文件为.NET应用程序,其向服务器请求下载并执行更新程序。
代码分析
根据Eclypsium披露的文件,我们无需技嘉公司的主板,通过对代码的分析,我们亦可验证该OEM潜在后门。披露的初始可执行文件携带技嘉公司有效签名。
该可执行文件执行后,使用Windows Native API将内嵌在自身的可执行文件的内容写入%SystemRoot%\system32\目录下,并命名为GigabyteUpdateService.exe。
然后设置注册表项,将GigabyteUpdateService.exe作为Windows服务运行。
在GigabyteUpdateService.exe可执行程序的服务函数中,其从资源段中释放.NET可执行程序。
最终使用CreateProcessAsUserW函数调用该.NET可执行文件。
并且在调用时,根据不同的场景传递不同的参数。
在.NET可执行文件中,初始化依赖时创建MainWindow的回调函数。
在其回调函数中,通过switch case结构来分配不同的分支。
传入的参数为DownloadAndInstall时,向服务器请求下载指定的更新程序,并且下载时拼接的URL可选选项有HTTP和HTTPS。
最终在下载后并未做验证就运行下载的程序。
通过代码分析可以看到正如Eclypsium文章中所说,纯HTTP下载永远不应该用于更新特权代码,因为它很容易遭受中间人攻击(MITM),另外即使使用HTTPS选项,也没有实现对远程服务器证书的验证。
影响面分析
通过奇安信威胁情报中心的TIP对更新域名mb.download.gigabyte.com查询结果显示,客户端访问量级较大。
由于该域名可能挂载了技嘉公司的其他更新服务,根据奇安信的数据视野范围的评估,全球受影响机器的数量级至少在十万以上。
总结
在历史上,使用该种类型的OEM潜在后门攻击案例不在少数,甚至有APT组织利用该种手法进行攻击。可见OEM底层代码的安全性不足会产生极其严重的后果。
参考链接
[2].https://eclypsium.com/blog/supply-chain-risk-from-gigabyte-app-center-backdoor/
点击阅读原文至ALPHA 6.0
即刻助力威胁研判