Subscribe to receive notifications of new posts:

Subscription confirmed. Thank you for subscribing!

Cloudflare 处理 BMC 漏洞的方法

Loading...

Cloudflare’s approach to handling BMC vulnerabilities.

近年来,服务器上的管理接口,例如基板管理控制器(Baseboard Management Controller,BMC),一直是网络攻击的目标,包括勒索软件、植入和破坏性操作。常见的 BMC 漏洞,例如 PantsdownUSBAnywhere,加上固件更新不及时,导致服务器容易受到攻击。

我们最近从一家可信的供应商获悉,我们服务器所用的流行 BMC 软件存在一个新的严重漏洞。下面概述有关发现,我们如何缓解影响,以及我们如何预防这些类型的漏洞对 Cloudflare 及客户产生影响。

背景

BMC 是一种小型的专用处理器,用于对主机系统进行远程监控和管理。该处理器与主机系统有多重连接,使其能够监视硬件、更新 BIOS 固件、启动/关闭主机等很多操作。

可以通过本地方式访问 BMC,有时也可以通过远程方式访问。在远程途径开放的情况下,恶意软件有可能通过 PCI Express 或低引脚数(LPC)接口从本地主机安装到 BMC 上。在 BMC 上的软件受到感染的情况下,恶意软件或间谍软件能在服务器上持久存在。

根据国家漏洞数据库(National Vulnerability Database),两款 BMC 芯片(ASPEED AST2400 和 AST2500) 实施了高级高性能总线 (AHB)桥,后者允许从主机对 BMC 物理地址空间的任意读写访问。这意味着服务器上运行的恶意软件也可以访问 BMC 的 RAM。

这些 BMC 漏洞足以使勒索软件传播、服务器变砖和数据窃取成为可能。

受影响的版本

由于 BMC 中发现的软件漏洞,发现有多个漏洞影响到 QuantaGrid D52B 云服务器。这些漏洞与 AST2400 和 AST2500 上暴露的特定接口相关,在 CVE-2019-6260 中已有说明。易受攻击的接口为:

  • iLPC2AHB bridge Pt I
  • iLPC2AHB bridge Pt II
  • PCIe VGA P2A bridge
  • 经 X-DMA 对/来自任意 BMC 内存的 DMA(直接内存访问)
  • 基于 UART 的 SoC 调试接口
  • LPC2AHB bridge
  • PCIe BMC P2A bridge
  • Watchdog 配置

攻击者可以通过带内 LPC 或 BMC 调试 UART (通用异步收发传输器)串行控制台,直接使用 SoCFlash 更新 BMC。虽然这可能被认为是完全损坏情况下的常见路径,但实际上是在 SoCFlash 中使用任何开放接口进行刷新的滥用。

缓解与回应

更新固件

我们联系了制造商之一的 Quanta,证实一个系统子集内的现有固件实际上已经针对这些漏洞打了补丁。虽然我们固件中的部分版本没有漏洞,但其他版本有。针对我们服务器中受影响的 BMC,已发布、测试并部署了一个补丁。

Cloudflare 安全和基础设施团队还主动与其他制造商合作,验证他们自己的 BMC 补丁是否明确易受这些固件漏洞和接口的攻击。

降低 BMC 远程接口的暴露

在我们的数据中心中,实施网络隔离来分开不同的流量平面是一种标准做法。我们的带外网络并不对外开放,仅可在各自的数据中心内访问。对任何管理网络的访问要使用一个纵深防御方式,通过我们的 Zero Trust Cloudflare One 服务限制对任何跳转主机的连接和身份验证/授权。

降低 BMC 本地接口的暴露

主机内的应用程序对 BMC 的调用受到限制。这样做是为了限制从主机对 BMC 能采取的操作,并允许安全的带内更新和用户空间日志记录和监控。

不使用默认密码

这听起来像是大多数公司的常识,但我们依然遵循一个标准的流程,不仅更改 BMC 软件的默认用户名和密码,而且禁用默认帐户以防其被利用。任何静态帐户都遵循定期密码轮换。

BMC 日志记录和审计

我们默认记录 BMC 上的所有活动。捕获的日志包括如下:

  • 身份验证(成功,失败)
  • 授权(用户/服务)
  • 接口(SOL、CLI、UI)
  • 系统状态(开/关机,重启)
  • 系统更改(固件更新,刷新方式)

我们能够确认没有检测到任何恶意活动。

针对 BMC 的下一步行动

Cloudflare 经常与几家原始设计制造商(ODM)合作,根据我们自己的规范生产性能最高、高效和安全的计算系统。我们的基板管理系统控制器所用的标准处理器通常带有专用固件,对我们和我们的 ODM 而言,透明度较低,维护更加麻烦。我们相信,对我们在全球 270 多个城市运行的系统而言,每个组件都能得到改进。

OpenBMC

我们正在推进 OpenBMC,这是用于我们受支持的基板管理控制器的开源固件。OpenBMC 基于 Yocto 项目(一个用于嵌入式 Linux 系统的工具链),将使我们能够根据自己的规范,基于最新的 Linux 内核特性集指定、构建和配置我们自己的固件,类似于物理硬件和 ODM。

OpenBMC 固件将能实现:

  • 稳定及已打补丁的最新 Linux 内核
  • 内部管理的 TLS 证书,用于通过我们隔离的管理网络进行安全、可信的通信
  • 细粒度的凭据管理
  • 对补丁和关键更新的更快响应时间

虽然这些特征中的很多是由社区驱动的,但诸如 Pantsdown 这样的漏洞迅速得到修补

扩展安全启动

您可能已经了解到我们有关使用硬件信任根来保护启动过程的工作,但 BMC 有自己的启动过程,通常在系统加电后就开始了。我们所用 BMC 芯片的更新版本,以及利用最先进的安全协处理器,使我们能够通过验证 BMC/OpenBMC 固件的加密签名,将安全启动能力扩大至加载 UEFI 固件前。通过将安全启动过程扩大到系统上加电的第一个设备,我们显著减少了可用于摧毁服务器的恶意植入软件的影响。

总结

虽然最终可以通过 Quanta 的固件更新来快速解决这个漏洞,并通过我们的团队快速行动来验证和修补我们的服务器,但我们仍在通过 OpenBMC 和安全信任根来继续创新,以确保我们的服务器尽可能安全。我们非常感激合作伙伴的快速行动,并始终乐于报告任何风险和我们的缓解措施,以确保您能相信我们有多么重视您的安全。

We protect entire corporate networks, help customers build Internet-scale applications efficiently, accelerate any website or Internet application, ward off DDoS attacks, keep hackers at bay, and can help you on your journey to Zero Trust.

Visit 1.1.1.1 from any device to get started with our free app that makes your Internet faster and safer.

To learn more about our mission to help build a better Internet, start here. If you're looking for a new career direction, check out our open positions.

漏洞 (CN) 硬件 简体中文 (CN) 产品新闻

Follow on Twitter

Derek Chamorro |@theredinthesky
Rebecca Weekly |@rebeccalipon
Cloudflare |Cloudflare

Related Posts