CN114556343A - 经由物理接口的基板管理控制器固件的安全安装 - Google Patents

经由物理接口的基板管理控制器固件的安全安装 Download PDF

Info

Publication number
CN114556343A
CN114556343A CN202080070284.5A CN202080070284A CN114556343A CN 114556343 A CN114556343 A CN 114556343A CN 202080070284 A CN202080070284 A CN 202080070284A CN 114556343 A CN114556343 A CN 114556343A
Authority
CN
China
Prior art keywords
bmc
physical interface
computing device
firmware
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202080070284.5A
Other languages
English (en)
Inventor
N·拉德卡尼
B·D·凯利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN114556343A publication Critical patent/CN114556343A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Abstract

一种计算设备,包括被电路装置,该电路装置被配置为当BMC不运行并且BMC与处理器之间的逻辑接口不可用时停用基板管理控制器(BMC)与处理器之间的物理接口。停用物理接口防止攻击者使用物理接口向BMC写入恶意代码。计算设备还包括如下电路装置:该电路装置响应于从可信外部实体接收到唯一信号序列而启用BMC与处理器之间的物理接口。当固件应当被安装在BMC上时,具有适当授权的某方可以使可信外部实体向计算设备上的电路装置发送唯一信号序列,从而启用BMC与处理器之间的物理接口。然后,处理器可以跨物理接口将固件写入到BMC内的非易失性存储器。

Description

经由物理接口的基板管理控制器固件的安全安装
背景技术
基板管理控制器(BMC)是可以嵌入在计算设备的主板上的专用微控制器。在多个计算设备被连接并一起工作的情况下,BMC通常被包括在计算设备中,因为它们允许系统管理员远程地执行各种任务。例如,系统管理员可以远程地与BMC通信以采取校正动作,诸如使计算设备复位(reset)或使计算设备功率循环。此外,内置于计算设备中的不同类型的传感器向BMC报告诸如温度,冷却风扇速度,功率状态,操作系统(OS)状态等参数。BMC监视传感器,并且如果参数中的任何参数不保持在预设限制内,则可以向另一实体(例如,由系统管理员操作的另一计算设备)发送警报。
由于各种原因,BMC是恶意攻击者的高价值目标。例如,攻击者可以使用BMC的带外管理特征来损害甚至低于操作系统和系统固件级别的计算设备。因此,BMC目前是涉及安全相关问题的公司和其他组织的活跃研究领域。已经发现了关于BMC的若干安全漏洞,包括涉及BMC内固件的安装的安全漏洞。如果利用这样的安全漏洞,则攻击者可以将恶意代码写入到BMC固件中。因此,可以通过用于保护BMC免受安全攻击的改进技术来实现益处。
发明内容
根据本公开的一个方面,公开了一种计算设备,该计算设备包括处理器、与处理器电子通信的存储器、包括非易失性存储器的基带管理控制器(BMC)、以及BMC与处理器之间的物理接口。该计算设备还包括电路装置,该电路装置被配置为当BMC未运行时停用物理接口并且响应于从可信外部实体接收到授权信号序列而启用物理接口。该计算设备还包括存储在存储器中的指令,该指令可由处理器执行以在BMC未运行并且物理接口被启用时经由物理接口在BMC的非易失性存储器内安装固件。
该电路装置可以包括停用电路装置和启用电路装置,该停用电路装置被配置为响应于检测到BMC已经进入复位模式而停用物理接口,该启用电路装置被配置为响应于接收到授权信号序列而启用物理接口。
停用电路装置可以被配置为:响应于检测到BMC已经进入复位模式、并且授权信号序列没有与BMC进入复位模式协同地被接收,停用物理接口。
启用电路装置可以被配置为:响应于接收到授权信号序列而仅针对单个BMC引导序列启用物理接口。
固件可以实现BMC与处理器之间的逻辑接口。该逻辑接口可以被配置为验证固件的真实性(authenticity)。逻辑接口在BMC不运行时可以不可用。
授权信号序列可以包括二进制信号的唯一序列。启用物理接口的电路装置可以包括可编程逻辑器件,该可编程逻辑器件被编程为识别唯一序列。
停用物理接口可以包括将物理接口从系统时钟断开,并且启用物理接口可以包括将物理接口连接到系统时钟。
计算设备可以是位于机架内的多个计算设备中的一个计算设备。可信外部实体可以包括机架管理器。
可以经由安全的带外通信信道从可信外部实体接收授权信号序列。
根据本公开的另一方面,公开了一种系统,该系统包括可信外部实体和与该可信外部实体电子通信的多个主机计算设备。多个主机计算设备中的每个主机计算设备包括主机处理器、基带管理控制器(BMC)、主机处理器与BMC之间的物理接口、以及电路装置。该电路装置被配置为当BMC不运行时停用主机处理器与BMC之间的物理接口,并且响应于从可信外部实体接收到授权信号序列而启用主机处理器与BMC之间的物理接口。
多个主机计算设备中的每个主机计算设备还可以包括与主机处理器电子通信的存储器和存储在存储器中的指令。当BMC不运行并且物理接口被启用时,指令可以由主机处理器可执行以经由物理接口在BMC的非易失性存储器内安装固件。
该电路装置可以包括停用电路装置和启用电路装置,该停用电路装置被配置为响应于检测到BMC已经进入复位模式而停用物理接口,该启用电路装置被配置为响应于接收到授权信号序列而启用物理接口。
停用电路装置可以被配置为:响应于检测到BMC已经进入复位模式、并且授权信号序列没有与BMC进入所述复位模式协同地被接收,停用物理接口。
启用电路装置可以被配置为响应于接收到授权信号序列而仅针对单个BMC引导序列启用物理接口。
BMC中的固件可以实现BMC与主机处理器之间的逻辑接口。逻辑接口可以被配置为验证固件的真实性。逻辑接口在BMC不运行时可以不可用。
授权信号序列包括二进制信号的唯一序列。启用物理接口的电路装置可以包括可编程逻辑器件,该可编程逻辑器件被编程为识别唯一序列。
停用物理接口可以包括从系统时钟断开物理接口。启用物理接口可以包括将物理接口连接到系统时钟。
多个主机计算设备可以位于机架内。可信外部实体可以包括机架管理器。
该系统还可以包括可信外部实体和接收授权信号序列的电路装置之间的安全的带外通信信道。可信外部实体经由安全的带外通信信道来向电路装置发送授权信号序列。
根据本公开的另一方面,公开了一种计算机可读介质。该计算机可读介质包括指令,该指令由一个或多个处理器可执行以使计算系统检测到主机计算设备内的基板管理控制器(BMC)已经停止运行,使替换固件对主机计算设备内的主机处理器可用,以及向可信外部实体发送信号以使可信外部实体向主机计算设备发送授权信号序列。
提供此概述内容以便以简化形式介绍将在以下详细描述中进一步描述的一些概念。本概述不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
另外的特征和优点将在下面的描述中阐述。本公开的特征和优点可以通过所附权利要求中特别指出的系统和方法来实现和获得。本公开的特征将从以下描述和所附权利要求中变得更加完全地明显,或者可以通过如下文阐述的所公开的主题的实践来获知。
附图说明
为了描述可以获得本公开的上述和其他特征的方式,将通过参考在附图中图示的其特定实施例来呈现更具体的描述。为了更好地理解,在各个附图中相同的元件用相同的参考编号标明。理解附图描绘了一些示例性实施例,将通过使用附图以附加的特征和细节来描述和解释实施例,其中:
图1图示了使固件即使在BMC不运行时也能够安全地被安装在BMC内的系统的示例。
图2图示了可以由系统管理器执行以便在BMC已经停止运行时在BMC内安全地安装替换固件的方法的示例。
图3图示了可以由可信外部实体执行以便在BMC已经停止运行时在BMC内安全地安装替换固件的方法的示例。
图4图示了可以由主机计算设备执行以便在BMC已经停止运行时在BMC内安全地安装替换固件的方法的示例。
图5图示了使固件即使在BMC不运行时也能够被安装在BMC内的系统的另一示例。
图6图示了可以由主机计算设备执行以便在BMC已经停止运行时在BMC内安全地安装替换固件的方法的另一示例。
图7图示了可以位于同一物理结构内并且可以被配置为实现本文所公开的技术的多个主机计算设备的示例。
图8图示了可以被包括在计算设备内的某些组件。
具体实施方式
本公开总体上涉及保护BMC免受安全攻击。BMC的一个已知安全漏洞涉及在BMC内安装固件的过程。在正常情况下,主机处理器可以经由主机处理器与BMC之间的逻辑接口在BMC内安装固件。逻辑接口可以指定某些安全机制,这些安全机制使在BMC内安装固件的过程相对安全。例如,逻辑接口可以被配置为验证被安装在BMC内的固件的真实性。
BMC与主机处理器之间的逻辑接口可以至少部分地由BMC内的固件来实现。因此,BMC的当前固件可以实现安全机制,该安全机制使得在BMC内可能安全地安装替换固件。然而,在某些情况下,BMC可能停止适当运作。当此发生时,主机处理器与BMC之间的逻辑接口不再可用,因为逻辑接口部分地取决于BMC的固件内包含的指令。如果BMC与主机处理器之间的逻辑接口不可用,则使得在BMC内可能安全地安装替换固件的安全机制也不可用。
当BMC不运行并且主机处理器与BMC之间的逻辑接口不可用时,主机处理器可以仍然可能仅使用物理接口在BMC内安装固件。主机处理器可以控制BMC并且跨物理接口将信息(例如,替换固件)写入到BMC内的非易失性存储器。不幸的是,这种仅使用物理接口来安装固件的机制使得BMC易受安全攻击。例如,如果攻击者能够获得对主机处理器的访问,则攻击者可以经由物理接口将恶意代码写入到BMC的非易失性存储器。因为BMC不运行并且主机处理器与BMC之间的逻辑接口不可用,所以被包括在逻辑接口内的安全机制对阻止这样的攻击不可用。
为了解决这个漏洞,当BMC不运行时,BMC与主机处理器之间的物理接口可以被停用。因此,即使攻击者能够获得对主机处理器的访问,攻击者也不能将任何恶意代码写入到BMC的非易失性存储器。然而,停用物理接口也防止经授权的用户(例如,系统管理员)在BMC不运行时在BMC内安装固件,这可能是有问题的。如果BMC不运作,则BMC可能需要固件被安装以便再次开始运作(重新安装先前安装的固件,或者安装更新的固件)。然而,因为BMC不能适当地运作,所以用于经由逻辑接口在BMC内安装固件的正常机制是不可用的。如果BMC与主机处理器之间的物理接口被停用以解决上述潜在的安全漏洞,则没有办法在BMC内远程安装固件。换句话说,BMC本质上卡在非运作状态。
本文公开的技术使得具有适当授权的某方能够在BMC不运行时在BMC内安装固件,同时仍然解决上述安全漏洞。换句话说,本文公开的技术使得固件即使在BMC不运行时也能够以安全的方式被安装在BMC内。BMC固件可以从远程位置被安装,这在BMC固件应被安装在多个计算设备中的环境中尤其有用。
根据本公开,主机计算设备可以包括如下电路装置:该电路装置被配置为在BMC未运行并且BMC与主机处理器之间的逻辑接口不可用时停用BMC与主机处理器之间的物理接口,从而防止攻击者使用物理接口将恶意代码写入到BMC。然而,有利地,主机计算设备还包括如下电路装置:该电路装置被配置为响应于从可信外部实体接收到唯一信号序列而启用BMC与主机处理器之间的物理接口。因此,当BMC未运行并且固件应被安装在BMC上时,具有适当授权的某方可以通过以下使得固件可能被安装:使可信外部实体将唯一信号序列发送给主机计算设备上的电路装置,从而启用BMC与主机处理器之间的物理接口。一旦物理接口已经被启用,则主机处理器然后可以跨物理接口将固件写入到BMC内的非易失性存储器。
图1图示了使得固件112a即使在BMC 104不运行时也能够被安装在BMC 104内的系统100的示例。系统100包括主机计算设备102,其包括BMC 104和处理器106。处理器106在本文中可以被称为主机处理器106。在正常操作期间,BMC 104经由物理接口108和逻辑接口110连接到主机处理器106。物理接口108可以是例如低引脚数(LPC)总线、外围组件互连高速(PCI-e)总线、或者通用串行总线(USB)。逻辑接口110可以是例如智能平台管理接口(IPMI),Redfish接口或定制接口。
BMC 104包括固件112,其被存储在BMC 104内的非易失性存储器114中。固件112包括由BMC 104内的处理器128执行的指令,以便提供各种功能性,包括实现逻辑接口110。
在正常操作期间,当主机处理器106和BMC 104两者都适当地运作时,物理接口108和逻辑接口110两者都可以用于在BMC 104内安装替换固件112a。特别地,主机处理器106与BMC 104之间的通信可以根据由逻辑接口110指定的各种要求而跨物理接口108发生。逻辑接口110可以指定某些安全机制,这些安全机制使得在BMC104内安装替换固件112a的过程相对安全。例如,逻辑接口110可以被配置为验证正在被安装的替换固件112a的真实性。
在一些实施例中,替换固件112a可以是BMC 104上现有固件112的重新安装。换句话说,当现有固件112初始被安装时,替换固件112a可以与现有固件112相同(或大体上相同),并且重新安装可以因为现有固件112已经以某种方式被破坏而被执行。备选地,替换固件112a可以是现有固件112的更新的版本。
然而,在某些情况下,BMC 104可能停止适当运作。当此发生时,主机处理器106与BMC 104之间的逻辑接口110不再可用,因为逻辑接口110部分地取决于固件112内所包含的指令。
当BMC 104未运行并且主机处理器106与BMC 104之间的逻辑接口110不可用时,主机处理器106可能仅使用物理接口108在BMC104内安装替换固件112a。换句话说,BMC 104提供一种机制,该机制使得主机处理器106即使当逻辑接口110不可用时也能够经由物理接口108访问BMC 104的非易失性存储器114。在一些实施例中,主机处理器106可以控制BMC 104并且将BMC 104置于复位模式。在该上下文中,术语“复位模式(reset mode)”可以指代码能够被写入到BMC 104的非易失性存储器114的状态。BMC 104可以被配置为以使得当BMC 104处于复位模式中时,BMC处理器128不执行被存储在非易失性存储器114中的任何代码(例如,固件112)。在BMC104被重新引导(reboot)之前,BMC 104可以被置于复位模式。一旦BMC104已经被置于复位模式,主机处理器106然后就可以跨物理接口108将信息(例如,替换固件112a)写入到非易失性存储器114。
然而,如上所述,这种仅使用物理接口108安装固件112a的机制使得BMC 104易受到安全攻击。例如,如果攻击者能够获得对主机处理器106的访问,则攻击者可以将恶意代码写入到非易失性存储器114。这种安全漏洞的一个潜在解决方案是当BMC 104不运行时,停用BMC 104与主机处理器106之间的物理接口108。换句话说,主机计算设备102可以被配置为使得当BMC 104运行时,物理接口108将BMC 104连接到主机处理器106。这允许以上述方式使用物理接口108和逻辑接口110来安装替换固件112a。然而,当BMC 104不运行时,BMC104与主机处理器106之间的物理接口108可以被停用,以便防止对BMC 104的恶意攻击。
当BMC 104不运行时停用BMC 104与主机处理器106之间的物理接口108防止攻击者能够将恶意代码写入到固件112,这是重要的。然而,当BMC 104未运行时停用物理接口108也防止授权用户(例如,系统管理员)在BMC 104内安装替换固件112a。
为了使具有适当授权的人可能在BMC 104内安装替换固件112a,主机计算设备102包括电路装置116,电路装置112a被配置为响应于从另一实体120接收到授权信号序列118而启用BMC 104与主机处理器106之间的物理接口108。因此,当BMC 104不运行时,具有适当授权的某方可以通过以下来使替换固件112a可能被安装在BMC104内:使实体120向主机计算设备102上的电路装置116发送授权信号序列118,从而启用BMC 104与主机处理器106之间的物理接口108。一旦物理接口108已经被启用,然后主机处理器106就可以跨物理接口108将替换固件112a写入到BMC 104内的非易失性存储器114。
发送授权信号序列118的实体120可以在主机计算设备102的外部。换句话说,发送授权信号序列118的实体120可以与主机计算设备102分离且独立于主机计算设备102而存在。此外,发送授权信号序列118的实体120可以受主机计算设备102信任。换句话说,发送授权信号序列118的实体120可以为主机计算设备102所知,且主机计算设备102可以被配置为依赖于来自实体120的通信。举例来说,主机计算设备102可以被配置为在实体120指示执行动作时执行动作。因为实体120在主机计算设备102外部且受其信任,所以实体120可以称为可信外部实体120。
电路装置116可以被配置为:每当BMC 104进入复位模式时停用物理接口108,除非电路装置116已经从可信外部实体120接收到授权信号序列118。在一些实施例中,如果BMC104进入复位模式并且授权信号序列118没有与BMC 104进入复位模式协同地被接收,则电路装置116停用物理接口108。另一方面,电路装置116可以被配置为:如果BMC 104进入复位模式并且授权信号序列118与BMC104进入复位模式协同地从可信外部实体120被接收,则启用物理接口108。
在一些实施例中,电路装置116可以被配置为响应于接收到授权信号序列118而在有限的持续时间内启用物理接口108。例如,电路装置116可以被配置为:响应于接收到授权信号序列118,仅针对BMC104的单个引导序列来启用物理接口108。这允许主机处理器106在BMC 104的非易失性存储器114内安装替换固件112a,并且重新引导BMC 104。如果BMC 104利用固件112a被重新引导之后再次开始工作,则物理接口108可以被启用,因为逻辑接口110是可用的以保护在BMC 104中免受安装恶意代码。然而,如果BMC 104利用固件112a被重新引导之后仍然未运行,则在引导序列已经结束之后,物理接口108可以再次被停用,以便保护免受上述安全漏洞。
图1示出主机计算设备102上的主机处理器106从系统管理器122接收替换固件112a。图1还示出主机处理器106从系统管理器122接收命令126以在BMC 104上安装替换固件112a。除了向主机处理器106提供替换固件112a和命令126之外,还示出了系统管理器122向可信外部实体120提供信号124,该信号124使可信外部实体120向主机计算设备102上的电路装置116发送授权信号序列118。可信外部实体120与电路装置116之间的通信可以经由安全通信信道发生,使得攻击者极不可能获得对这样的通信的访问或损害这样的通信。
系统管理器122可以表示执行针对主机计算设备102的管理功能的服务。在一些实施例中,主机计算设备102可以是系统管理器122为其执行管理功能的多个主机计算设备中的一个主机计算机设备。在一些实施例中,主机计算设备102可以是被出租给客户的多个裸金属服务器中的一个裸金属服务器,并且系统管理器122可以表示执行针对裸金属服务器的管理功能的服务。作为另一示例,主机计算设备102可以是作为分布式计算系统(例如,云计算系统)的一部分的多个主机计算设备中的一个主机计算机设备。系统管理器122可以表示为执行针对分布式计算系统的管理功能的服务。
图1所示的系统100实现了上述两个目的。首先,主机计算设备102被配置为使得攻击者极不可能将恶意代码写入到BMC 104。第二,主机计算设备102被配置为使得经授权用户即使在BMC 104未运行时仍然可以从远程位置在BMC 104内安装替换固件112a。
关于第一目标,假设攻击者能够获得对主机处理器106的访问。如上所述,BMC 104提供了一种机制,该机制使得主机处理器106即使在BMC 104不运行并且BMC 104与主机处理器106之间的逻辑接口110不可用时也能够经由物理接口108访问BMC 104的非易失性存储器114。然而,在图1所示的系统100中,当BMC 104未运行时(例如,当BMC 104进入复位模式时),主机计算设备102上的电路装置116停用物理接口108,从而防止攻击者利用该机制并经由物理接口108向BMC 104写入恶意代码。
关于第二目的,即使当BMC 104不运行时,授权用户也可能通过使可信外部实体120向主机计算设备102上的电路装置116发送授权信号序列118来在BMC 104内安装替换固件112a。授权信号序列118使主机计算设备102上的电路装置116启用BMC 104与主机处理器106之间的物理接口108。一旦物理接口108已经被启用,主机处理器106就可以跨物理接口108将替换固件112a写入到BMC 104内的非易失性存储器114。
在图1所示的系统100中,主机计算设备102通常示出为具有电路装置116,当BMC104不运行时,该电路装置停用BMC 104与主机处理器106之间的物理接口108,并且还响应于从可信外部实体120接收到授权信号序列118而启用物理接口108。在备选实施例中,主机计算设备102可以包括用于执行这些动作的不同电路装置。例如,主机计算设备102可以包括停用电路装置和启用电路装置,停用电路装置被配置为在BMC 104未运行时停用BMC 104与主机处理器106之间的物理接口108,启用电路装置被配置为响应于从可信外部实体120接收到授权信号序列118而启用物理接口108。
尽管在图1中单独示出了替换固件112a和命令126,但这并不意味着替换固件112a和命令126必须在单独的通信中被发送给主机处理器106。在一些实施例中,替换固件112a和命令126可以在由系统管理器122发送给主机处理器106的相同通信(例如,相同消息)中被发送给主机处理器106。然而,在其它一些实施例中,替换固件112a和命令126可以在由系统管理器122发送给主机处理器106的单独通信(例如,单独消息)中被发送给主机处理器106。
图2图示了可以由系统管理器122可执行以便在BMC 104已经停止运行时在BMC104内安全地安装替换固件112a的方法200的示例。将关于图1所示的系统100中的系统管理器122和其它组件来描述方法200。
根据方法200,系统管理器122可以检测到(202)BMC 204已经停止运行。这可以有许多不同的方式发生。例如,系统管理器122可以向BMC 104发送信号(例如,经由主机处理器106),如果BMC104正常工作,则该信号将触发来自BMC 104的响应。如果BMC 104不响应该信号,则系统管理器122可以推断BMC 104已经停止运行。作为另一实例,另一实体(例如,主机计算设备102上的实体)可以确定BMC 204已经停止运行并将其报告给系统管理器122。
响应于检测到(202)BMC 204已经停止运行,系统管理器122可以使(204)替换固件112a对主机处理器106可用。在一些实施例中,系统管理器122可以将替换固件112a发送给主机处理器106。在其它一些实施例中,系统管理器122可以向主机处理器106发送到替换固件112a可以被访问和被下载的位置的链接。
系统管理器122还可以向主机处理器106发送(206)命令126,以在BMC 104上安装替换固件112a。如上所述,替换固件112a和安装替换固件112a的命令126可以在相同的通信(例如,相同的消息)中或在不同的通信(例如,不同的消息)中被发送。
此外,系统管理器122还可以向可信外部实体120发送(208)信号124,该信号124使可信外部实体120向主机计算设备102发送授权信号序列118。主机计算设备102包括被配置为识别授权信号序列118的电路装置116。响应于接收和识别授权信号序列118,电路装置116启用BMC 104与主机处理器106之间的物理接口108。一旦物理接口108已经被启用,然后主机处理器106就可以跨物理接口108将替换固件112a写入到BMC 104内的非易失性存储器114。
图3图示了可以由可信外部实体120执行以便在BMC 104停止运行时在BMC 104内安全地安装替换固件112a的方法300的示例。将关于图1所示的系统100中的可信外部实体120和其它组件来描述方法300。
根据方法300,可信外部实体120可以从系统管理器122接收(302)信号124。信号124可以包括(或可以被解释为包括)向主机计算设备102发送授权信号序列118的指令。
响应于从系统管理器122接收到(302)信号124,可信外部实体120可以向主机计算设备102发送(304)授权信号序列118。如上所述,授权信号序列118使主机计算设备102内的电路装置116启用BMC 104与主机处理器106之间的物理接口108,使得主机处理器106可以跨物理接口108将替换固件112a写入到BMC 104内的非易失性存储器114。
图4图示了可以由主机计算设备102执行以便在BMC 104已经停止运行时在BMC104内安全地安装替换固件112a的方法400的示例。将关于图1所示的系统100中的主机计算设备102和其它组件来描述方法400。方法400中所包括的一些动作可以由执行存储在主机计算设备102内的存储器中的指令的主机处理器106执行,并且方法400中所包括的动作中的一些动作可以由主机计算设备102内的电路装置116执行。
根据方法400,主机计算设备102内的主机处理器106可以从系统管理器122接收(402)替换固件112a。在一些实施例中,主机处理器106可以直接从系统管理器122接收(402)替换固件112a。在其它一些实施例中,主机处理器106可以从系统管理器122接收(402)使得主机处理器106能够从另一位置访问和下载替换固件112a的信息(例如,链接)。
主机处理器106还可以接收(404)在BMC 104上安装替换固件112a的命令126。响应于接收到(402)替换固件112a和接收到(404)安装替换固件112a的命令126,主机处理器106可以使BMC 104进入(406)复位模式。例如,主机处理器106可以向BMC 104发送使BMC 104进入复位模式的一个或多个命令。
电路装置116可以检测到(408)BMC 104已经进入复位模式。响应于检测到(408)BMC 104已经进入复位模式,电路装置116可以确定(410)授权信号序列118是否已经从可信外部实体120被接收。如果授权信号序列118已经从可信外部实体120被接收,则电路装置116可以启用(412)BMC 104与主机处理器106之间的物理接口108。如上所述,启用(412)BMC104与主机处理器106之间的物理接口108允许主机处理器106跨物理接口108将替换固件112a写入(414)到BMC 104内的非易失性存储器114。
如上所述,电路装置116可以被配置为响应于接收到授权信号序列118而在有限的持续时间内启用(412)物理接口108。例如,电路装置116可以被配置为响应于接收到授权信号序列118而仅针对BMC 104的单个引导序列来启用物理接口108。如果BMC 104利用固件112a被重新引导之后再次开始工作,则物理接口108可以被启用,因为逻辑接口110可用于保护在BMC 104中免受安装恶意代码。然而,如果即使在利用替换固件112a被重新引导之后BMC 104仍然未运行,则在引导序列已经结束之后,物理接口108可以再次被停用,以便保护免受上述安全漏洞。
如果确定(410)授权信号序列118未从可信外部实体120被接收,则电路装置116可以停用(416)BMC 104与主机处理器106之间的物理接口108。停用(416)BMC 104与主机处理器106之间的物理接口108防止主机处理器106向BMC 104内的非易失性存储器114写入任何东西。如上所述,如果攻击者已经获得对主机处理器106的访问并且试图将恶意代码写入BMC 104内的非易失性存储器114,则该特征是有利的。
在一些实施例中,每当BMC 104进入复位模式,电路装置116就停用物理接口108,除非授权信号序列118与BMC 104进入复位模式协同地从可信外部实体120被接收。换句话说,在一些实施例中,电路装置116可以被配置为:每当BMC 104进入复位模式时默认地停用物理接口108,并且电路装置116还可以被配置为使得仅在(a)授权信号序列118从可信外部实体120被接收,以及(b)在授权信号序列118的接收与BMC 104进入复位模式之间存在某种关系(例如,时间关系)的情况下改变该默认条件。在一些实施例中,如果授权信号序列118在与BMC 104进入复位模式相同的时间(或基本上相同的时间)被接收,则授权信号序列118可以被认为与BMC 104进入复位模式协同地被接收。在其它一些实施例中,授权信号序列118如果在从BMC 104进入复位模式时起的某个时间段(之前或之后)内被接收,则授权信号序列118可以被认为与BMC 104进入复位模式协同地被接收。该时间段可被以作为(可能可配置的)参数被预定义并且被存储在主机计算设备102的存储器中。
图5图示了即使在BMC 504不运行时也能够将固件512a安装在BMC 504内的系统500的另一示例。除了如下所述,图5中所示的系统500类似于图1中所示的系统100。
在图5所示的系统500中,主机计算设备502包括启用电路装置516a,启用电路装置516a被配置为响应于从可信外部实体接收到授权信号序列518而启用BMC 504与主机处理器506之间的物理接口508。主机计算设备502还包括停用电路装置516b,停用电路装置516b被配置为当BMC 504未运行并且BMC 504与主机处理器506之间的逻辑接口510不可用时停用物理接口508。总之,启用电路装置516a和停用电路装置516b表示图1所示的系统100中的电路装置116的一种可能的实现。
在所描绘的系统500中,物理接口508的启用和停用可以通过物理接口508与系统时钟542的连接和断开来实现。图5示出了系统时钟542与物理接口508之间的开关546。当停用电路装置516b检测到BMC 504未运行时(例如,BMC 504已经进入复位模式),停用电路装置516b可以配置开关546,使得物理接口508从系统时钟542断开。当启用电路装置516a接收到授权信号序列518时,启用电路装置516a可以配置开关546,使得物理接口508连接到系统时钟542。
在一些实施例中,启用电路装置516a可以是可编程逻辑器件(PLD),其已经被编程以识别授权信号序列518。授权信号序列518可以是二进制信号的唯一序列。例如,授权信号序列可以是高信号和低信号的序列,并且可以选择高信号和低信号的持续时间,使得整个序列是唯一的。授权信号序列518可以是预定义的。例如,在接收授权信号序列518之前,启动电路装置516a可以被编程以识别由授权信号序列518形成的唯一模式。此外,启用电路装置516a可以被编程为响应于识别出由授权信号序列518形成的唯一模式而启用物理接口508。
主机计算设备502可以是位于同一物理结构(诸如机架)内的多个主机计算设备中的一个主机计算设备。向启用电路装置516a发送授权信号序列518的可信外部实体可以是管理同一机架内的主机计算设备中的所有主机计算设备的实体。这样的实体在本文中可以被称为机架管理器520。图5示出了机架管理器520与主机计算设备502之间的安全通信信道544。机架管理器520可以被配置为经由安全通信信道544向启用电路装置516a发送授权信号序列518。
机架管理器520可以经由到计算机网络548的连接与系统管理器522进行电子通信。主机计算设备502还可以连接到网络548。网络548可以是广域网(WAN)或局域网(LAN)。在一些实施例中,网络548可以包括因特网。跨网络548的通信可以经由无线的和/或有线的连接发生。
系统管理器522可以使用其到网络548的连接来向主机计算设备502提供待安装在BMC 504内的非易失性存储器514中的替换固件512a。系统管理器522还可以使用其与网络548的连接来向机架管理器520发送信号,该信号使机架管理器520经由安全通信信道544向主机计算设备502内的启用电路装置516a发送授权信号序列518。
机架管理器520与主机计算设备502之间的安全通信信道544可以被认为是带外通信信道。一般而言,带外通信信道可以指与主通信信道分离的通信信道。在所描绘的系统500中,机架管理器520与主机计算设备502之间的主通信信道可以经由网络548发生。机架管理器520与主机计算设备502之间的通信中的许多通信可以经由主通信信道(即,经由网络548)发生。然而,将授权信号序列518发送给主机计算设备502内的启用电路装置516a可以经由安全带外通信信道544发生。
图6图示了可以由主机计算设备502执行以便在BMC 504已经停止运行时在BMC504内安全地安装替换固件512a的方法600的另一实例。将关于图5所示的系统500中的主机计算设备502和其它组件来描述方法600。方法600中所包含的动作中的一些动作可以由执行存储在主机计算设备502内的存储器中的指令的主机处理器506执行,并且方法600中所包括的动作中的一些动作可以由主机计算设备502内的电路装置516执行。
方法600的前几个动作类似于上面结合图4讨论的方法400的前几个动作。主机计算设备502内的主机处理器506可以从系统管理器522接收(602)替换固件512a。主机处理器506还可以接收(604)在BMC 504上安装替换固件512a的命令。响应于接收到(602)替换固件512a和接收到(604)安装替换固件512a的命令,主机处理器506可以使BMC 504进入(606)复位模式。
在所描绘的方法600中,停用电路装置516b检测到(608)BMC504已经进入复位模式。停用电路装置516b可以被配置为每当BMC504进入复位模式时停用物理接口508,除非授权信号序列518已经从可信外部实体520被接收。因此,方法600还包括确定(610)是否授权信号序列518已经从诸如机架管理器520的可信外部实体被接收。
如果到授权信号序列518已经从机架管理器520被接收,则启用电路装置516a可以将物理接口508临时连接(612)到系统时钟542。换句话说,启用电路装置516a可以在有限的持续时间内将物理接口508连接(612)到系统时钟542,诸如BMC 504的单个引导序列。这允许主机处理器506跨物理接口508将替换固件512a写入(614)到BMC 504内的非易失性存储器514,如上所述。然后,主机处理器506可以重新引导(616)BMC 504。
方法600还包括在BMC 504被重新引导之后确定(618)BMC 504是否在运行。如果BMC 504在运行,则物理接口508可以保持(620)连接到系统时钟542,因为逻辑接口510内的安全机制可用于保护在BMC 504中免受安装恶意代码。然而,如果BMC 504未运行,则停用电路装置516b可以将物理接口508从系统时钟542断开(622),以便保护BMC 504免受上述安全漏洞害。
如上所述,本文所公开的技术可以在包括具有BMC的多个计算设备的系统中实现。在一些实施例中,多个计算设备可以位于同一物理结构内,例如机架。向计算设备内的电路装置发送授权信号序列的可信外部实体可以是机架管理器(即,对机架内的主机计算设备执行管理操作的实体)。
图7图示了可以位于诸如机架754的同一物理结构内并且可以被配置为实现本文所公开的技术的多个主机计算设备702的示例。每个主机计算设备702包括BMC 704,主机处理器706、以及BMC 704与主机处理器706之间的物理接口708。每个主机计算设备702还包括电路装置716,电路装置716被配置为在BMC 704不运行时停用物理接口708,以及响应于从可信外部实体接收到授权信号序列而启用物理接口708。
在所描绘的实施例中,可信外部实体可以是负责执行关于机架754内的主机计算设备702的管理操作的机架管理器720。机架管理器720被示出为经由配电单元(PDU)758与主机计算设备702进行电子通信。机架管理器720可以经由PDU 758向一个或多个主机计算设备702内的电路装置716发送授权信号序列。
图7还示出了机架管理器720和主机计算设备702与网络交换机756进行电子通信,网络交换机756支持到网络(诸如图5所示的网络548)的连接。因此,机架管理器720能够经由网络连接与主机计算设备702通信。该网络连接可以被认为是机架管理器720与主机计算设备702之间的主通信信道(或通信路径)。经由PDU 758从机架管理器720到主机计算设备702内的电路装置716的通信信道(或通信路径)可以被认为是带外通信信道(或通信路径)。
本文所公开的技术可以对向客户出租裸金属服务器的服务提供方。例如,机架754中的主机计算设备702可以是被出租给客户的裸金属服务器。在此上下文中,术语“裸金属服务器”可以指具有单个租户的主机机器。换句话说,裸金属服务器完全专用于租用裸金属服务器的单个客户(而不是在客户之间共享)。向客户出租裸金属服务器的服务提供方通常不控制客户在服务器上运行的软件的类型。客户可能在服务器上(无意地或可能甚至有意地)安装恶意软件。如果这样的软件可以将恶意代码写入BMC固件,则整个服务器可能变得受损害。断开BMC与主机处理器之间的物理接口的策略保护免受这种安全漏洞。因此,裸金属服务器提供方可以利用此策略以便保护其裸金属服务器免受损害。然而,如上所述,断开BMC与主机处理器之间的物理接口使得不可能在BMC内安装固件。因此,裸金属服务器提供方可以使用本文所公开的技术来使BMC固件可能在其裸金属服务器内被更新,同时仍然保护其裸金属服务器免受上文所描述的安全漏洞。
如上所述,本文公开的技术涉及在BMC内安装固件。在此上下文中,术语“安装”(及其语法变体)可以指将固件转移到BMC内的非易失性存储器中并且准备固件以供BMC的处理器执行的过程。在一些实施例中,被安装在BMC内的固件可以是当前存在于BMC内的固件的更新的版本。在其它一些实施例中,被安装在BMC内的固件可以与当前存在于BMC内的固件相同(或基本相同)。在这种情况下,固件的安装实质上可以是先前已安装的相同固件的重新安装。根据情况,可以响应于检测到BMC已经停止运行而执行任一类型的安装。如果更新的固件可用,则更新的固件可以被安装在BMC内,作为使BMC再次开始运行的尝试的一部分。然而,如果只有相同版本的固件可用,则在使BMC再次开始运行的尝试中,相同的固件可以被重新安装在BMC内。
一个或多个计算设备800可以用于实现本文所公开的技术的至少一些方面。图8图示了可以被包括在计算设备800内的某些组件。
计算设备800包括处理器801和与处理器801电子通信的存储器803。指令805和数据807可以存储在存储器803中。指令805可以由处理器801可执行以实现本文所公开的方法、步骤、操作、动作或其它功能性中的一些或全部。执行指令805可以涉及使用存储在存储器803中的数据807。除非另外指明,否则本文所述的模块和组件的任何各种示例中都可以部分地或全部地实现为存储在存储器803中并且由处理器801执行的指令805。本文描述的数据的各种示例中的任何示例可以是存储在存储器803中并且在处理器801执行指令805期间使用的数据807。
尽管在图8的计算设备800中仅示出了单个处理器801,但是在备选配置中,可以使用处理器的组合(例如,ARM和DSP)。
计算设备800还可以包括用于与其它电子设备通信的一个或多个通信接口809。(多个)通信接口809可以基于有线通信技术、无线通信技术或两者。通信接口809的一些示例包括通用串行总线(USB)、以太网适配器、根据电气和电子工程师协会(IEEE)802.11无线通信协议操作的无线适配器,
Figure BDA0003582909860000201
无线通信适配器和红外(IR)通信端口。
计算设备800还可以包括一个或多个输入设备811和一个或多个输出设备813。输入设备811的一些示例包括键盘、鼠标、麦克风、遥控设备、按钮、操纵杆、跟踪球、触摸板和光笔。通常包括在计算设备800中的一种特定类型的输出设备813是显示设备815。与本文公开的实施例一起使用的显示设备815可以利用任何合适的图像投影技术,例如液晶显示器(LCD)、发光二极管(LED)、气体等离子体、电致发光等。还可以提供显示控制器817,用于将存储在存储器803中的数据807转换成在显示设备815上示出的文本、图形和/或运动图像(适当时)。计算设备800还可以包括其它类型的输出设备813,诸如扬声器、打印机等。
计算设备800的各个组件可以通过一个或多个总线耦合在一起,总线可以包括电源总线、控制信号总线、状态信号总线、数据总线等。为了清楚起见,在图8中将各个总线图示为总线系统819。
除非明确描述为以特定方式实现,否则本文所公开的技术可以实现于硬件、软件、固件或其任何组合中。被描述为模块、组件等的任何特征也可以一起实现在集成逻辑器件中,或者单独实现为分离但可以互操作的逻辑器件。如果以软件实现,那么该技术可以至少部分由其上存储有计算机可执行指令的非瞬态计算机可读介质实现,计算机可以执行指令在由至少一个处理器执行时执行本文所公开的步骤、操作、动作或其它功能性中的一些或全部步骤、操作、动作或其它功能性。指令可以被组织成例程、程序、对象、组件、数据结构等,其可以执行特定任务和/或实现特定数据类型,并且其可以在各种实施例中按需组合或分布。
术语“处理器”可以指通用单芯片或多芯片微处理器(例如,高级RISC(精简指令集计算机)机器(ARM))、专用微处理器(例如,数字信号处理器(DSP))、微控制器、可编程门阵列等。处理器可以是中央处理单元(CPU)。在一些实施例中,可以使用处理器的组合(例如,ARM和DSP)来实现本文所公开的技术中的一些或全部技术。
术语“存储器”可以指能够存储电子信息的任何电子组件。举例来说,存储器可以实现为随机存取存储器(RAM)、只读存储器(ROM)、磁盘存储介质、光学存储介质、RAM中的闪存装置、与处理器一起被包括的板上存储器、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)存储器、寄存器等,包括其组合。
作为示例,术语“电路装置”可以指一个或多个集成电路,其中集成电路可以包括在一块半导体材料(例如,硅)上的一组电子电路。在一些实施例中,电路装置可以包括可编程逻辑器件,例如现场可编程门阵列(FPGA)和/或复杂可编程逻辑器件(CPLD)。在一些实施例中,电路装置可以包括专用集成电路(ASIC)。作为另一示例,术语“电路装置”可以指包括个体电子组件的一个或多个分立电子电路。作为另一个例子,术语“电路装置”可以指数字电路、模拟电路或混合信号电路。“电路装置”还可以包括前述的组合。
本文描述的方法的步骤、操作和/或动作可以在不脱离权利要求的范围的情况下彼此互换。换句话说,除非所描述的方法的适当运作要求步骤、操作和/或动作的特定次序来,否则可以在不脱离权利要求的范围的情况下修改特定步骤、操作和/或动作的次序和/或使用。
术语“确定”(及其语法变体)可以涵盖多种动作。例如,“确定”可以包括计算(calculating)、计算(computing)、处理、导出、调查、查找(例如,在表、数据库或另一数据结构中查找)、查明等。此外,“确定”可以包括接收(例如,接收信息)、访问(例如,访问存储器中的数据)等。而且,“确定”可以包括解析、选择、挑选、建立等。
术语“包括(comprising)”、“包括(including)”和“具有”旨在是包括性的,并且意味着可以存在除了所列出的元素之外的另外的元素。此外,应当理解,对本公开的“一个实施例”或“实施例”的引用不旨在被解释为排除也结合了所述特征的附加实施例的存在。例如,在兼容处,关于本文的实施例描述的任何元素或特征可以与本文描述的任何其他实施例的任何元素或特征组合。
本公开可以在不脱离其精神或特征的情况下以其他特定形式来体现。所描述的实施例应被认为是说明性的而非限制性的。因此,本公开的范围由所附权利要求而不是由前面的描述来指示。在权利要求的等同物的含义和范围内的改变将被包含在其范围内。

Claims (15)

1.一种计算设备,包括:
处理器;
存储器,所述存储器与所述处理器电子通信;
基带管理控制器(BMC),包括非易失性存储器;
所述BMC和所述处理器之间的物理接口;
电路装置,所述电路装置被配置为当所述BMC未运行时停用所述物理接口,并且响应于从可信外部实体接收到授权信号序列而启用所述物理接口;以及
被存储在所述存储器中的指令,所述指令由所述处理器可执行以在所述BMC不运行并且所述物理接口被启用时经由所述物理接口将固件安装在所述BMC的所述非易失性存储器内。
2.根据权利要求1所述的计算设备,其中所述电路装置包含:
停用电路装置,所述停用电路装置被配置为响应于检测到所述BMC已经进入复位模式而停用所述物理接口;以及
启用电路装置,所述启用电路装置被配置为响应于接收到所述授权信号序列而启用所述物理接口。
3.根据权利要求2所述的计算设备,其中所述停用电路装置被配置为:响应于检测到所述BMC已经进入所述复位模式、并且所述授权信号序列没有与所述BMC进入所述复位模式协同地被接收,停用所述物理接口。
4.根据权利要求2所述的计算设备,其中所述启用电路装置被配置为响应于接收到所述授权信号序列而仅针对单个BMC引导序列启用所述物理接口。
5.根据权利要求1所述的计算设备,其中:
所述固件实现所述BMC与所述处理器之间的逻辑接口;
所述逻辑接口被配置为验证所述固件的真实性;以及
所述逻辑接口在所述BMC不运行时不可用。
6.根据权利要求1所述的计算设备,其中:
所述授权信号序列包括二进制信号的唯一序列;以及
启用所述物理接口的所述电路装置包括可编程逻辑器件,所述可编程逻辑器件被编程以识别所述唯一序列。
7.根据权利要求1所述的计算设备,其中:
停用所述物理接口包括将所述物理接口从系统时钟断开;以及
启用所述物理接口包括将所述物理接口连接到所述系统时钟。
8.根据权利要求1所述的计算设备,其中:
所述计算设备是位于机架内的多个计算设备中的一个计算设备;以及
所述可信外部实体包括机架管理器。
9.根据权利要求1所述的计算设备,其中所述授权信号序列经由安全的带外通信信道从所述可信外部实体被接收。
10.一种系统,包括:
可信外部实体;以及
与所述可信外部实体电子通信的多个主机计算设备,其中所述多个主机计算设备中的每个主机计算设备包括主机处理器、基带管理控制器(BMC)、所述主机处理器与所述BMC之间的物理接口、以及电路装置,所述电路装置被配置为:
当所述BMC不运行时停用所述主机处理器与所述BMC之间的所述物理接口;以及
响应于从所述可信外部实体接收到授权信号序列,启用所述主机处理器与所述BMC之间的所述物理接口。
11.根据权利要求10所述的系统,其中所述多个主机计算设备中的每个主机计算设备还包括:
与所述主机处理器电子通信的存储器;以及
被存储在所述存储器中的指令,所述指令由所述主机处理器可执行以在所述BMC不运行并且所述物理接口被启用时经由所述物理接口将固件安装在所述BMC的非易失性存储器内。
12.根据权利要求10所述的系统,其中所述电路装置包括:
停用电路装置,所述停用电路装置被配置为响应于检测到所述BMC已经进入复位模式而停用所述物理接口;以及
启用电路装置,所述启用电路装置被配置为响应于接收到所述授权信号序列而启用所述物理接口。
13.根据权利要求12所述的系统,其中所述停用电路装置被配置为:响应于检测到所述BMC已经进入所述复位模式、并且所述授权信号序列没有与所述BMC进入所述复位模式协同地被接收,停用所述物理接口。
14.根据权利要求12所述的系统,其中所述启用电路装置被配置为响应于接收到所述授权信号序列而仅针对单个BMC引导序列启用所述物理接口。
15.根据权利要求10所述的系统,其中:
所述BMC中的固件实现所述BMC与所述主机处理器之间的逻辑接口;
所述逻辑接口被配置为验证所述固件的真实性;以及
所述逻辑接口在所述BMC不运行时不可用。
CN202080070284.5A 2019-10-07 2020-08-19 经由物理接口的基板管理控制器固件的安全安装 Pending CN114556343A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/595,159 2019-10-07
US16/595,159 US11288372B2 (en) 2019-10-07 2019-10-07 Secure installation of baseboard management controller firmware via a physical interface
PCT/US2020/046875 WO2021071590A1 (en) 2019-10-07 2020-08-19 Secure installation of baseboard management controller firmware via a physical interface

Publications (1)

Publication Number Publication Date
CN114556343A true CN114556343A (zh) 2022-05-27

Family

ID=72292675

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080070284.5A Pending CN114556343A (zh) 2019-10-07 2020-08-19 经由物理接口的基板管理控制器固件的安全安装

Country Status (4)

Country Link
US (1) US11288372B2 (zh)
EP (1) EP4042306B1 (zh)
CN (1) CN114556343A (zh)
WO (1) WO2021071590A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230216607A1 (en) * 2021-12-30 2023-07-06 Microsoft Technology Licensing, Llc Systems and methods to initiate device recovery

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030196126A1 (en) 2002-04-11 2003-10-16 Fung Henry T. System, method, and architecture for dynamic server power management and dynamic workload management for multi-server environment
EP1854250B1 (en) 2005-02-28 2011-09-21 International Business Machines Corporation Blade server system with at least one rack-switch having multiple switches interconnected and configured for management and operation as a single virtual switch
US7849454B2 (en) 2006-01-13 2010-12-07 Dell Products L.P. Automatic firmware corruption recovery and update
CA2672100A1 (en) 2006-12-06 2008-06-12 Fusion Multisystems, Inc. Apparatus, system, and method for solid-state storage as cache for high-capacity, non-volatile storage
US7802069B2 (en) * 2007-03-07 2010-09-21 Harris Corporation Method and apparatus for protecting flash memory
US9565207B1 (en) 2009-09-04 2017-02-07 Amazon Technologies, Inc. Firmware updates from an external channel
US9652216B2 (en) 2012-10-04 2017-05-16 Dell Products L.P. System and method for providing out-of-band software or firmware upgrades for a switching device
US9235710B2 (en) 2013-05-23 2016-01-12 Cisco Technology, Inc. Out of band management of basic input/output system secure boot variables
CN103984584A (zh) 2014-06-05 2014-08-13 浪潮电子信息产业股份有限公司 一种BIOS firmware的远程带外更新方法
US10133637B2 (en) 2016-08-04 2018-11-20 Dell Products L.P. Systems and methods for secure recovery of host system code
US10691803B2 (en) 2016-12-13 2020-06-23 Amazon Technologies, Inc. Secure execution environment on a server
US10997296B2 (en) 2017-03-22 2021-05-04 Oracle International Corporation System and method for restoration of a trusted system firmware state
US11829478B2 (en) * 2019-01-08 2023-11-28 Oracle International Corporation Full server recovery architecture for cloud bare metal instances

Also Published As

Publication number Publication date
US20210103659A1 (en) 2021-04-08
EP4042306B1 (en) 2023-11-01
WO2021071590A1 (en) 2021-04-15
EP4042306A1 (en) 2022-08-17
US11288372B2 (en) 2022-03-29

Similar Documents

Publication Publication Date Title
US9990325B2 (en) Universal serial bus (USB) filter hub malicious code prevention system
US8862803B2 (en) Mediating communciation of a univeral serial bus device
US11797684B2 (en) Methods and systems for hardware and firmware security monitoring
CN111008379A (zh) 电子设备的固件安全检测方法及相关设备
US8127124B2 (en) Remote configuration of computing platforms
EP3486824B1 (en) Determine malware using firmware
US20160217283A1 (en) Method for Logging Firmware Attack Event and System Therefor
US9245122B1 (en) Anti-malware support for firmware
US11436324B2 (en) Monitoring parameters of controllers for unauthorized modification
US20170201373A1 (en) Systems and methods for management controller management of key encryption key
US11347856B2 (en) Bios method to block compromised preboot features
US20190034620A1 (en) System shipment lock
US10019577B2 (en) Hardware hardened advanced threat protection
US9608884B2 (en) System and method for remote management of a computer
EP4042306B1 (en) Secure installation of baseboard management controller firmware via a physical interface
CN113961984A (zh) 主机计算系统的外围端口的访问控制
US10409734B1 (en) Systems and methods for controlling auxiliary device access to computing devices based on device functionality descriptors
US11797679B2 (en) Trust verification system and method for a baseboard management controller (BMC)
US20230009470A1 (en) Workspace-based fixed pass-through monitoring system and method for hardware devices using a baseboard management controller (bmc)
US11328055B2 (en) Process verification
US11593490B2 (en) System and method for maintaining trusted execution in an untrusted computing environment using a secure communication channel
US9483420B2 (en) Self-service terminal (SST) device driver
US20240086288A1 (en) Privacy and security assurance during operating system crash events
US20230342467A1 (en) Storage identity validation for a supply chain
US11275817B2 (en) System lockdown and data protection

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination