FPGA 在数据中心系统的角色被不断颠覆。目前主流的用法是和 GPU 一样,用于计算密集型任务的加速计算。然而,FPGA 只适合于这些工作吗?
其实,FPGA 的特性决定了它还非常适合于低延迟的流式处理工作,在整个系统中的角色类似于“通信大管家”。如果再加上安全特性,就是妥妥的安全管家。而目前需求最大的就是服务器市场。
5G、边缘计算和物联网正在加快设备之间的互联速度,但是,随着在线设备数量增加,暴露出来的漏洞数量也随之增长。设备固件已经成为越来越流行的攻击媒介,不管是厂商的路由器,还是在线的安全监控设备,都曾遇到固件被入侵的情况。
根据美国国家漏洞数据库(National Vulnerability Database)报告,2016 至 2019 年间,固件漏洞数量增加了 7 倍以上。另据 Gartner 去年 7 月的大胆预测,如果 2022 年这些公司还没有去做及时的固件升级计划,补上固件安全漏洞,那么 2022 年将会有 70%的公司因为固件漏洞遭到各种入侵。
造成这种增长的原因主要有两方面:一是传统的安全性保护都在上层软件或 OS,而固件并没有受到足够的重视;二是在线硬件产品越来越多,不管是云端、管道还是终端设备,基本上都有相应的固件存在。
还有一些中短期的风险在雪上加霜。以前很多安全措施需要工作人员到现场操作,但是受新冠疫情影响,很多人员无法到现场,只能进行远程管理、升级和操作,如果远程操作没有足够的安全性保护,会加剧这些风险的发生。
那么,受损的固件有哪些危害?会让用户数据易受入侵,对系统造成永久性损坏,极大降低了用户体验,OEM 也要承担相应的责任。正因如此,OEM 设备商对安全性的关注度也在上升,固件保护问题也越来越受到重视。为保护系统免遭未经授权的固件访问,为所有互联设备提供动态、持久、实时的硬件平台安全性成为必要。
美国国家标准与技术研究所(NIST)定义了一种标准的安全机制,称为平台固件保护恢复(PFR)。PFR 采用了基于硬件的解决方案,为保护企业服务器固件提供了一种全新的方法,可全面防止对服务器所有固件的攻击。
针对于固件攻击的保护,NIST 800-193 对整个硬件平台上的固件保护提出了规范性要求,主要包含了三个部分:首先能够检测到黑客在对固件进行攻击;第二是进行保护,例如有人在对固件进行非法的读写操作时,要阻止这些非法行为,并汇报给上层软件,发出警告信息;第三是即使在固件遭到破坏的情况下,也能够进行恢复,例如从备份文件中恢复。这三部分(恢复、检测、保护)相互融合、相互配合,主要目的就是保护硬件平台上的固件。
开发者需要清楚其硬件平台已受到保护,能够免于网络攻击和 IP 遭窃。它们需要安全解决方案,以确保在整个产品生命周期中获得全面保护,这意味着解决方案必须能够动态适应不断演变的威胁形势。
对平台固件的保护恢复功能,以往的硬件平台主要基于 TPM 和 MCU 来实现。其中,TPM 更为“资深”,不过它需要搭配主芯片,通过 SPI 接口来回传输信息。而不论是 TPM 还是 MCU,它们的控制流程和时序都采用串行处理。
据 Lattice 半导体亚太区应用工程(AE)总监谢征帆介绍,实时性成为客户当前的最大痛点。与 FPGA 这样的并行处理解决方案相比,TPM 和 MCU 实时性较弱,无法进行更快地识别和响应。特别是一些对时间比较敏感的应用,以及强度较大的破坏,更加需要做出实时地保护。
再结合上 FPGA 本身的小尺寸、高性能、低功耗、灵活性等特点,使得很多 Tier-1 服务器厂商,在下一代服务器平台的 PFR 功能时,开始优先考虑基于 FPGA 的方案。
Lattice 正是看准了这个方向,推出 Sentry 解决方案堆栈与 SupplyGuard 服务,提供具有动态信任的端到端供应链保护。
安全 FPGA、RISC-V 嵌入式软件等形成的 Sentry 方案堆栈
Sentry 方案并不仅仅只是一个硬件产品,它有一系列相配套的工具、软件和服务。
底层硬件平台基于 MachXO3 FPGA,这是 Lattice 符合 NIST 平台固件保护恢复标准、面向控制的 FPGA。当使用 MachXO3 FPGA 实现系统控制功能时,它们通常是电路板上“最先上电 / 最后断电”的器件,通过集成安全和系统控制功能,MachXO3D 便成为系统保护信任链上的首个环节。
硬件平台之上是一系列 IP 核、软件工具、参考设计、演示示例、定制设计服务,共同构成了 Sentry 方案。
值得一提的是,动态信任强调安全保护机制并不是静态、固化的保护方式,其中,RISC-V 可以通过相应的 C 代码,去实现客户所需要的功能;同时,通过 RISC-V 软核可以调度不同硬件模块,例如监视器、Mux 等底层模块。随着产品的演进,如果用户将来在新的产品中需要新的保护方式,只要底层模块没有变化,只需改变它相应的 C 代码,就可以实现新的保护方式。
以下是 Sentry 解决方案的主要特性:
硬件安全功能——提供经过预验证、符合 NIST 的 PFR 实现方案,可在系统启动期间和之后对所有系统固件实施严格的实时访问控制。若检测到损坏的固件,Sentry 可以自动回滚到固件之前已知的完好版本,确保安全的系统操作不会中断。
符合最新的 NIST SP-800-193 标准,通过 CAVP 认证——通过支持严格加密的 MachXO3D FPGA 系列器件实现硬件 RoT。
易于使用——开发人员可以在没有任何 FPGA 设计经验的情况下,将 Sentry 经过验证的 IP 模块拖放到 Lattice Propel 设计环境中,修改所给的 RISC-V C 语言参考代码。
缩短上市时间——Sentry 提供预验证和经过测试的应用演示、参考设计和开发板,可以将 PFR 应用的开发时间从 10 个月缩短到 6 周。
灵活、适用于所有平台的安全解决方案——Sentry 为固件和可编程外设提供全方位、实时的 PFR 支持。它可以用作系统中的 RoT/ 补充现有的基于 BMC/MCU/TPM 的体系,使之完全符合 NIST SP-800-193 标准。
SupplyGuard 服务将系统保护拓展至供应链
SupplyGuard 是 Lattice 推出的一项订阅服务,从产品制造到全球供应链运输、系统集成和组装、再到首次配置和部署的整个生命周期内,通过跟踪锁定 FPGA,让 OEM 和 ODM 应对供应链风险。它也可以按需定制,满足各个行业 OEM 的特定安全和供应链需求,并降低实施安全生产生态系统的运营成本。
那么,SupplyGuard 通过哪些方式来保护 OEM?第一,确保只有授权的制造商才能构建 OEM 的设计,无论这些制造商身在何处;第二,为 OEM 提供安全的密钥机制,防止在未经授权的组件上激活其 IP,阻断产品克隆和过度构建;第三,防止设备下载和安装木马、恶意软件或其他未经授权的软件,保护平台和系统免遭设备劫持或其他网络攻击。
“固件攻击是所有终端市场面临的日益严重的安全问题,针对供应链的攻击日益增多,防不胜防”,谢征帆介绍,“我们目前接触的客户是服务器厂商,主要因为他们是最需要符合 NIST 800-193 规范的。”
而下一步的拓展,将随着安全问题在越来越多领域受到重视而扩大范围。据介绍,工业自动化的网络安全规范与 PFR 安全机制比较接近;随着车联网的发展,会越来越多接入到数据平台,安全性也将成为重要考量;笔记本、台式机虽然不会像其他领域推进得那么快,但也有这一需求趋势。