CN114444083A - 一种基于bmc的服务器bios全生命周期安全保护系统 - Google Patents
一种基于bmc的服务器bios全生命周期安全保护系统 Download PDFInfo
- Publication number
- CN114444083A CN114444083A CN202210018565.7A CN202210018565A CN114444083A CN 114444083 A CN114444083 A CN 114444083A CN 202210018565 A CN202210018565 A CN 202210018565A CN 114444083 A CN114444083 A CN 114444083A
- Authority
- CN
- China
- Prior art keywords
- bios
- bmc
- server
- file
- protection
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 48
- 230000008569 process Effects 0.000 claims abstract description 36
- 238000005259 measurement Methods 0.000 claims abstract description 19
- 230000002159 abnormal effect Effects 0.000 claims abstract description 15
- 238000011084 recovery Methods 0.000 claims abstract description 14
- 238000012795 verification Methods 0.000 claims description 24
- 238000004422 calculation algorithm Methods 0.000 claims description 12
- 238000012544 monitoring process Methods 0.000 claims description 9
- 238000004519 manufacturing process Methods 0.000 claims description 4
- 238000004806 packaging method and process Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 abstract description 10
- 230000006870 function Effects 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提出的一种基于BMC的服务器BIOS全生命周期安全保护系统,包括:服务器BMC、BIOS镜像生成保护模块、BIOS镜像刷新保护模块、BIOS加载启动保护模块和BIOS运行保护模块;上述四个保护模块均基于服务器BMC相互关联和控制,通过服务器BMC生成的密钥对作用于BIOS镜像生成保护模块,之后以存储在服务器BMC不可更改区域的公钥为可信根,执行BIOS镜像刷新及BIOS加载启动过程的逐级度量和比对;在BIOS运行故障时,切换BIOS备份区并实施度量和比对,以实现BIOS全面安全保护。本发明能够基于现有服务器BMC的对BIOS镜像生成、刷新、启动、运行异常检测及自动恢复等BIOS全生命周期的保护,确保了BIOS全生命周期的完整性和合法性,实现对BIOS的安全保护功能。
Description
技术领域
本发明涉及计算机技术领域,更具体的说是涉及一种基于BMC的服务器BIOS全生命周期安全保护系统。
背景技术
BIOS(Basic Input/Output System)是固化在服务器主板芯片里的软件系统。服务器开机上电后,首先执行BIOS指令,完成基础硬件和外围设备的检测及初始化,装载为系统运行时提供的服务,最后引导操作系统。
一般而言,传统信息安全威胁较多集中在上层应用软件上,而忽略了服务器BIOS固件的安全风险。随着BIOS功能增强和技术发展,固件BIOS的安全风险问题正日益突出。BIOS安全风险和威胁的出现是多种因素共同作用的结果。由于BIOS是一种固件系统,是在固体FLASH芯片中的软件系统。与传统的基于软件的信息安全风险相比较,BIOS安全风险存在于硬件芯片中,具有更隐蔽、不易检测、不易清除、不受操作系统和磁盘更新影响等特点。BIOS安全风险体现在从二进制文件生成到服务器到运行整个生命周期中,对BIOS芯片和存储内容的破坏,导致对服务硬件层和固件层攻击。
为了尽可能的降低BIOS安全风险,当前通常在BIOS固件更新时,首先验证固件的签名值,验证通过后才进行固件的更新操作。由于BIOS的镜像程序文件存储于外部的非易失性存储器Flash中,在BIOS启动时,利用平台提供的安全技术对BIOS进行校验,校验通过后才可启动。
但是,采用此种手段进行BIOS安全校验,无法确保BIOS从FW产生到运行的全过程安全,具体来说:
(1)对BIOS的保护局限于某一环节或某两个环节,而在其他未保护环节的任一环节遭到破坏或违法攻击时,原有保护都会演变成“无效”状态,导致服务器被攻击,故安全性差;
(2)对BIOS有保护的环节其保护各自独立,无法形成有效的完整的环环相扣的保护机制,连续性和可用性差;
(3)对BIOS的保护分别采用不同类别的保护方法,且对硬件平台有一定依赖,带来相对较多资源的消耗,增加资源成本的同时,其可维护性差。
发明内容
针对以上问题,本发明的目的在于提供一种基于BMC的服务器BIOS全生命周期安全保护系统,能够基于现有服务器BMC的对BIOS镜像生成、刷新、启动、运行异常检测及自动恢复等BIOS全生命周期的保护,确保BIOS不管在哪个阶段受到攻击时均被安全保护。
本发明为实现上述目的,通过以下技术方案实现:一种基于BMC的服务器BIOS全生命周期安全保护系统,包括:
服务器BMC、BIOS镜像生成保护模块、BIOS镜像刷新保护模块、BIOS加载启动保护模块和BIOS运行保护模块;
BIOS镜像生成保护模块,用于在BIOS Flash镜像文件生成时,通过服务器BMC提供的密钥及镜像生成要求对BIOS FW文件进行数字签名及防误刷保护;同时将服务器BMC的公钥存储至服务器BMC不可更改的区域;
BIOS镜像刷新保护模块,用于在执行BIOS FW文件刷新到服务器时,通过服务器BMC利用可信根公钥,先对BIOS FW文件进行完整性度量,并与服务器BMC中存储的BIOS基准值进行比对,校验通过允许刷新,不通过则禁止刷新;
BIOS加载启动保护模块,用于在BIOS上电启动时,通过服务器BMC先利用可信根公钥,对存储在BIOS Flash中的BIOS FW文件进行完整性度量并控制BIOS的程序加载运行;同时对启动过程进行监控,以保护BIOS安全可用;
BIOS运行保护模块,用于在BIOS运行过程中通过服务器BMC对BIOS的实时监控,当检测到BIOS异常时,通过服务器BMC利用启动过程中的度量及监控过程尝试进行重启,启动失败时自动切换BIOS至备份区。
进一步,所述通过服务器BMC提供的密钥及镜像生成要求对BIOS FW文件进行数字签名及防误刷保护,包括:
对BIOS程序编译后生成镜像文件BIOS Image,通过服务器BMC生成公私密钥对,利用SHA-256杂凑算法生成BIOS Image的完整性校验值Diges;
通过RSA算法,利用服务器BMC提供的私钥对摘要值进行加密,生成数字签名值;把数字签名值写入文件中,与原始镜像文件BIOS Image组成新的BIOS文件。
进一步,所述生成数字签名值时,同时记录BIOS适用的主板信息,并写入文件中。
进一步,所述服务器BMC,用于使用HPM打包方式对BIOS进行新的镜像文件的生成,将生成的镜像名、需要打包的镜像文件、版本命名中的版本号信息、BoardInfo信息整理成Jason格式的配置文件,将HPM包制作相关命令写成可运行的脚本文件,以通过执行脚本文件完成BIOS镜像文件的生成。
进一步,所述BIOS异常包括:BIOS芯片损坏和BIOS FW异常。
进一步,所述服务器BMC具体用于,
通过BIOS镜像刷新保护模块进行基于BMC的BIOS刷新保护;
通过BIOS加载启动保护模块进行基于BMC的BIOS启动保护,所述基于BMC的BIOS启动保护包括启动前的镜像文件校验保护和BISO启动过程保护;
通过BIOS运行保护模块进行基于BMC的BIOS故障自动恢复。
进一步,所述基于BMC的BIOS刷新保护,包括:
通过服务器BMC对上传的BIOS镜像文件进行文件类型判断,若文件类型为BIOS镜像文件,则进行BIOS镜像文件上传;
上传成功后,提取BIOS镜像文件中的数字签名信息及主板信息,先对主板信息进行匹配校验,如匹配失败,则停止刷新;匹配成功后利用服务器BMC的可信根公钥对上传的BIOS镜像文件进行度量,并与服务器BMC中存储的基准值做比对,比对相同则允许BIOS镜像文件的解密和刷新执行;
如果比对不通过,则停止执行BIOS镜像文件刷新,并在服务器BMC中记录日志。
进一步,所述启动前的镜像文件校验保护包括:
当BIOS启动时,通过服务器BMC从BIOS Flash中导出对应的BIOS镜像文件,提取BIOS镜像文件中的数字签名信息,利用可信根公钥对导出的BIOS镜像文件进行完整性度量和与基准值比对;
若比对通过,则启动BIOS;若不通过,则阻止BIOS对当前非法镜像进行加载启动,并尝试进行重复验证;
若验证仍未通过,则将BIOS自动切换到BIOS备份区,继续验证备份文件的签名值,直到验证通过才会从备份的BIOS镜像文件进行加载启动。
进一步,所述BISO启动过程保护,包括:
在服务器BMC的预置Watchdog功能中加入BIOS切换选项;
在BIOS备份区采用双BIOS Flash备份,用于热备加载启动;
通过服务器BMC对BIOS镜像文件校验,校验成功后,执行BIOS启动,同时启动预置Watchdog功能;
BIOS成功启动后,向服务器BMC发送Disable Watchdog信号;
若在Watchdog Timer时间内未收到Disable Watchdog时,服务器BMC认为BIOS启动故障,则启动切换BIOS Flash功能,以完成BIOS安全启动。
进一步,所述基于BMC的BIOS故障自动恢复,包括:
BIOS成功启动后,通过服务器BMC设置一个BIOS运行的信号S1,并使用BMCWatchdog Timer设置计时时间;
BIOS不间断的发送S1信号给服务器BMC,当服务器BMC在预设时间内未检测到S1信号,则认为BIOS异常,此时通过服务器BMC控制BIOS进行重新启动,如仍启动失败,则关机、切换到备份BIOS后再开机启动备份BIOS,启动过程仍由通过服务器BMC执行BISO启动过程保护。
对比现有技术,本发明有益效果在于:
1、本发明综合利用了公钥算法、数字签名、备份存储区、自动检测、Watchdog等技术实现BMC对BIOS镜像文件的各阶段保护,确保了BIOS全生命周期的完整性和合法性,实现对BIOS的安全保护功能。
2、本发明实现了对BIOS固件各阶段的安全保护,保证了BIOS生命周期内的安全性。
3、本发明实现了基于BMC对BIOS的保护,不需额外引入或设计其他保护机制如多套密钥、多个硬件等,易维护,成本低。
4、本发明能够基于现有服务器BMC的对BIOS镜像生成、刷新、启动、运行异常检测及自动恢复等BIOS全生命周期的保护,确保BIOS不管在哪个阶段受到攻击时均被安全保护,安全性较高。本发明利用每个服务器均具备的BMC去实现,不需额外增加资源,不受CPU平台限制,适用于所有CPU平台的服务器,可维护性及易用性较高,且成本较低。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
附图1是本发明具体实施方式的系统结构图。
附图2是本发明具体实施方式的基于BMC的BIOS FW生成保护流程图。
附图3是本发明具体实施方式的基于BMC的BIOS刷新保护流程图。
附图4是本发明具体实施方式的基于BMC的BIOS启动保护流程图。
具体实施方式
本发明的核心是提供一种基于BMC的服务器BIOS全生命周期安全保护系统,现有技术中,通常在BIOS固件更新时,首先验证固件的签名值,验证通过后才进行固件的更新操作。由于BIOS的镜像程序文件存储于外部的非易失性存储器Flash中,在BIOS启动时,利用平台提供的安全技术对BIOS进行校验,校验通过后才可启动,采用此种手段进行BIOS安全校验,无法确保BIOS从FW产生到运行的全过程安全
而本发明提供的基于BMC的服务器BIOS全生命周期安全保护系统,基于现有服务器BMC的对BIOS镜像生成、刷新、启动、运行异常检测及自动恢复等BIOS全生命周期的保护,确保BIOS不管在哪个阶段受到攻击时均被安全保护,安全性较高。本发明利用每个服务器均具备的BMC去实现,不需额外增加资源,不受CPU平台限制,适用于所有CPU平台的服务器,可维护性及易用性较高,且成本较低。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
如图1所示,本发明提供了一种基于BMC的服务器BIOS全生命周期安全保护系统,包括服务器BMC、BIOS镜像生成保护模块、BIOS镜像刷新保护模块、BIOS加载启动保护模块和BIOS运行保护模块。上述四个保护模块均基于服务器BMC相互关联和控制,通过服务器BMC生成的密钥对作用于BIOS镜像生成保护模块,之后以存储在服务器BMC不可更改区域的公钥为可信根,执行BIOS镜像刷新及BIOS加载启动过程的逐级度量和比对;在BIOS运行故障时,切换BIOS备份区并实施度量和比对,以实现BIOS全面安全保护。
BIOS镜像生成保护模块,用于在BIOS Flash镜像文件生成时,通过服务器BMC提供的密钥及镜像生成要求对BIOS FW文件进行数字签名及防误刷保护;同时将服务器BMC的公钥存储至服务器BMC不可更改的区域。
具体来说,首先,对BIOS程序编译后生成镜像文件BIOS Image,通过服务器BMC生成公私密钥对,利用SHA-256杂凑算法生成BIOS Image的完整性校验值Diges。然后,通过RSA算法,利用服务器BMC提供的私钥对摘要值进行加密,生成数字签名值;把数字签名值写入文件中,与原始镜像文件BIOS Image组成新的BIOS文件。生成数字签名值时,同时记录BIOS适用的主板信息,并写入文件中。
本模块结合服务器BMC生成BISO镜像文件的过程包括:使用HPM打包方式对BIOS进行新的镜像文件的生成,将生成的镜像名、需要打包的镜像文件、版本命名中的版本号信息、BoardInfo信息整理成Jason格式的配置文件,将HPM包制作相关命令写成可运行的脚本文件,以通过执行脚本文件完成BIOS镜像文件的生成。
BIOS镜像刷新保护模块,用于在执行BIOS FW文件刷新到服务器时,通过服务器BMC利用可信根公钥,先对BIOS FW文件进行完整性度量,并与服务器BMC中存储的BIOS基准值进行比对,校验通过允许刷新,不通过则禁止刷新。
BIOS加载启动保护模块,用于在BIOS上电启动时,通过服务器BMC先利用可信根公钥,对存储在BIOS Flash中的BIOS FW文件进行完整性度量并控制BIOS的程序加载运行;同时对启动过程进行监控,以保护BIOS安全可用。
BIOS运行保护模块,用于在BIOS运行过程中通过服务器BMC对BIOS的实时监控,当检测到BIOS异常时,通过服务器BMC利用启动过程中的度量及监控过程尝试进行重启,启动失败时自动切换BIOS至备份区。其中,BIOS异常包括:BIOS芯片损坏和BIOS FW异常。
基于上述四大保护模块,服务器BMC具体用于,
通过BIOS镜像刷新保护模块进行基于BMC的BIOS刷新保护;
通过BIOS加载启动保护模块进行基于BMC的BIOS启动保护,所述基于BMC的BIOS启动保护包括启动前的镜像文件校验保护和BISO启动过程保护;
通过BIOS运行保护模块进行基于BMC的BIOS故障自动恢复。
本实施例提供了一种基于BMC的服务器BIOS全生命周期安全保护系统,基于现有服务器BMC的对BIOS镜像生成、刷新、启动、运行异常检测及自动恢复等BIOS全生命周期的保护,确保BIOS不管在哪个阶段受到攻击时均被安全保护,安全性较高。本发明利用每个服务器均具备的BMC去实现,不需额外增加资源,不受CPU平台限制,适用于所有CPU平台的服务器,可维护性及易用性较高,且成本较低。
实施例二:
基于实施例一,本发明还公开了一种基于BMC的服务器BIOS全生命周期安全保护系统,包括服务器BMC、BIOS镜像生成保护模块、BIOS镜像刷新保护模块、BIOS加载启动保护模块和BIOS运行保护模块。上述四个保护模块均基于服务器BMC相互关联和控制。
具体来说:
BIOS镜像生成保护模块,用于在BIOS Flash镜像文件生成时,通过服务器BMC提供的密钥及镜像生成要求对BIOS FW文件进行数字签名及防误刷保护,以保护其合法性、完整性及可用性等不被篡改、假冒等破坏,与此同时将服务器BMC的公钥存储至BMC不可更改的区域,为BIOS后续过程的信任链建立提供可信根。
BIOS镜像刷新保护模块,用于在执行BIOS FW文件刷新到服务器时,BMC利用可信根公钥,先对FW文件进行完整性度量,并与服务器BMC中存储的BIOS基准值进行比对,校验通过允许刷新,不通过则禁止刷新。
BIOS加载启动保护模块,用于在BIOS上电启动时,服务器BMC先利用可信根公钥,对存储在BIOS Flash中的FW文件进行完整性度量并控制BIOS的程序加载运行,以杜绝对BIOS文件的篡改,同时通过对启动过程的监控保护BIOS安全可用。
BIOS运行保护模块,用于在BIOS运行过程中通过服务器BMC对BIOS的实时监控,当检测到BIOS出现异常时,如BIOS芯片被破坏或FW异常时,服务器BMC利用启动过程中的度量及监控过程尝试进行重启,启动失败时自动切换BIOS至备份区,以保证BIOS的连续性和可用性,从而确保BIOS从FW产生到运行的全过程安全。
本系统通过服务器BMC与上述四个保护模块配置使用,实现了的对BIOS镜像生成、刷新、启动、运行异常检测及自动恢复等BIOS全生命周期的保护。具体功能是实现过程如下:
1、基于BMC的BIOS FW生成保护功能:
如图2所示,BIOS程序编译后生成镜像文件Image,服务器BMC生成公私密钥对,利用SHA-256杂凑算法生成BIOS Image的完整性校验值Digest(256bit);之后通过RSA算法,利用服务器BMC提供的私钥对摘要值进行加密,生成数字签名值;把数字签名值写入文件中,与原始镜像文件Image组成新的BIOS文件。
为防止BIOS FW文件误刷、乱刷,在为BIOS进行数字签名的同时记录BIOS适用的主板信息,进一步保护BIOS提高可用性及安全性。此外在加密过程中用到的RSA公钥存储于BMC的安全可信存储空间中。
实施时,服务器BMC使用HPM打包方式对BIOS进行新的镜像文件的生成,将生成的镜像名、需要打包的镜像文件、版本命名中的版本号信息、BoardInfo信息整理成Jason格式的配置文件,将HPM包制作相关命令写成可运行的脚本文件,脚本文件执行时通过调用配置文件即可完成BIOS镜像文件的生成,可维护性及易用性较强。同时BMC将公钥预置至一块只读区域,并存储BIOS签名值至Flash中。
2、基于BMC的BIOS刷新保护功能:
如图3所示,BIOS镜像文件刷新时,带外通过服务器BMC进行刷新操作。服务器BMC会对上传的BIOS镜像文件进行文件类型等的判断,允许BIOS文件上传并上传成功后,提取BIOS文件中的数字签名信息及主板信息,先对主板信息进行匹配校验,如匹配失败,则停止刷新;匹配成功后利用服务器BMC可信根公钥对上传的BIOS镜像文件进行度量,并与服务器BMC中存储的基准值做比对,比对相同允许镜像文件的解密和刷新执行。如果比对不通过,说明镜像文件已被篡改,完整性受到了破坏或可能被植入了恶意代码等,停止执行BIOS文件刷新,并在BMC中记录日志,以保护BIOS刷新过程安全且通过日志报警提醒用户需对BIOS进行保护。
3、基于BMC的BIOS启动保护功能:
如图4所示,基于BMC的BIOS启动保护过程包括:启动前的镜像文件校验保护和BIOS启动国产保护。
当BIOS启动时,服务器BMC从BIOS Flash中导出对应的BIOS镜像文件,提取BIOS文件中的数字签名信息,利用可信根公钥对导出的BIOS文件进行完整性度量和与基准值比对,若比对通过,则启动BIOS;若不通过,会阻止BIOS对当前非法镜像进行加载启动,并尝试进行重复验证,若验证仍未通过,则将BIOS自动切换到BIOS备份区,继续验证备份文件的签名值,直到验证通过才会从备份镜像备份文件进行加载启动,以保护BIOS启动前的镜像安全,防止因加载恶意程序而引发服务器的安全风险。
为保护BIOS执行启动过程,服务器BMC在Watchdog功能中加入BIOS切换选项,BIOS备份区采用双BIOS Flash实现,备份BIOS Flash中存储于主Flash中完全一致的信息,用于热备加载启动。服务器BMC对BIOS镜像文件校验成功后,执行BIOS启动,与此同时BMCEnable Watchdog,BIOS成功启动后给BMC发送Disable Watchdog信号;若在WatchdogTimer时间内未收到Disable Watchdog时,BMC认为BIOS启动故障,则启动切换BIOS Flash功能,完成BIOS安全启动。
4、基于BMC的BIOS故障自动恢复功能:
BIOS在运行过程中当遇到或出现故障时,例如Main BIOS Flash芯片本身损坏、周边电路或者clock问题、Main BIOS Flash ME区域内容损坏或者为空、启动区域损坏等各类故障场景,服务器BMC可检测到BIOS异常,并尝试对BIOS进行重启,如仍启动失败,则自动切换到备份BIOS继续运行。通过自动恢复机制可以确保BMC的可用性和连续性。
BIOS成功启动后,服务器BMC同时设置一个BIOS运行的信号(设为S1),并使用BMCWatchdog Timer设置计时时间。BIOS不间断的发送S1信号给服务器BMC,当服务器BMC在一定时间内未检测到S1信号,则认为BIOS受到损坏,运行异常,此时由服务器BMC控制BIOS进行重新启动,如仍启动失败,则关机、切换到另外备份BIOS后再开机启动备份BIOS,启动过程仍由服务器BMC执行启动过程的保护。
本实施例提供了一种基于BMC的服务器BIOS全生命周期安全保护系统,综合利用了公钥算法、数字签名、备份存储区、自动检测、Watchdog等技术实现BMC对BIOS镜像文件的各阶段保护,确保了BIOS全生命周期的完整性和合法性,实现对BIOS的安全保护功能。
综上所述,本发明能够对BIOS镜像生成、刷新、启动、运行异常检测及自动恢复等BIOS全生命周期的保护,确保BIOS不管在哪个阶段受到攻击时均被安全保护。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的方法而言,由于其与实施例公开的系统相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统、系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。
同理,在本发明各个实施例中的各处理单元可以集成在一个功能模块中,也可以是各个处理单元物理存在,也可以两个或两个以上处理单元集成在一个功能模块中。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的基于BMC的服务器BIOS全生命周期安全保护系统进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种基于BMC的服务器BIOS全生命周期安全保护系统,其特征在于,包括:服务器BMC、BIOS镜像生成保护模块、BIOS镜像刷新保护模块、BIOS加载启动保护模块和BIOS运行保护模块;
BIOS镜像生成保护模块,用于在BIOS Flash镜像文件生成时,通过服务器BMC提供的密钥及镜像生成要求对BIOS FW文件进行数字签名及防误刷保护;同时将服务器BMC的公钥存储至服务器BMC不可更改的区域;
BIOS镜像刷新保护模块,用于在执行BIOS FW文件刷新到服务器时,通过服务器BMC利用可信根公钥,先对BIOS FW文件进行完整性度量,并与服务器BMC中存储的BIOS基准值进行比对,校验通过允许刷新,不通过则禁止刷新;
BIOS加载启动保护模块,用于在BIOS上电启动时,通过服务器BMC先利用可信根公钥,对存储在BIOS Flash中的BIOS FW文件进行完整性度量并控制BIOS的程序加载运行;同时对启动过程进行监控,以保护BIOS安全可用;
BIOS运行保护模块,用于在BIOS运行过程中通过服务器BMC对BIOS的实时监控,当检测到BIOS异常时,通过服务器BMC利用启动过程中的度量及监控过程尝试进行重启,启动失败时自动切换BIOS至备份区。
2.根据权利要求1所述的基于BMC的服务器BIOS全生命周期安全保护系统,其特征在于,所述通过服务器BMC提供的密钥及镜像生成要求对BIOS FW文件进行数字签名及防误刷保护,包括:
对BIOS程序编译后生成镜像文件BIOS Image,通过服务器BMC生成公私密钥对,利用SHA-256杂凑算法生成BIOS Image的完整性校验值Diges;
通过RSA算法,利用服务器BMC提供的私钥对摘要值进行加密,生成数字签名值;把数字签名值写入文件中,与原始镜像文件BIOS Image组成新的BIOS文件。
3.根据权利要求2所述的基于BMC的服务器BIOS全生命周期安全保护系统,其特征在于,所述生成数字签名值时,同时记录BIOS适用的主板信息,并写入文件中。
4.根据权利要求3所述的基于BMC的服务器BIOS全生命周期安全保护系统,其特征在于,所述服务器BMC,用于使用HPM打包方式对BIOS进行新的镜像文件的生成,将生成的镜像名、需要打包的镜像文件、版本命名中的版本号信息、
BoardInfo信息整理成Jason格式的配置文件,将HPM包制作相关命令写成可运行的脚本文件,以通过执行脚本文件完成BIOS镜像文件的生成。
5.根据权利要求1所述的基于BMC的服务器BIOS全生命周期安全保护系统,其特征在于,所述BIOS异常包括:BIOS芯片损坏和BIOS FW异常。
6.根据权利要求1所述的基于BMC的服务器BIOS全生命周期安全保护系统,其特征在于,所述服务器BMC具体用于,
通过BIOS镜像刷新保护模块进行基于BMC的BIOS刷新保护;
通过BIOS加载启动保护模块进行基于BMC的BIOS启动保护,所述基于BMC的BIOS启动保护包括启动前的镜像文件校验保护和BISO启动过程保护;
通过BIOS运行保护模块进行基于BMC的BIOS故障自动恢复。
7.根据权利要求6所述的基于BMC的服务器BIOS全生命周期安全保护系统,其特征在于,所述基于BMC的BIOS刷新保护,包括:
通过服务器BMC对上传的BIOS镜像文件进行文件类型判断,若文件类型为BIOS镜像文件,则进行BIOS镜像文件上传;
上传成功后,提取BIOS镜像文件中的数字签名信息及主板信息,先对主板信息进行匹配校验,如匹配失败,则停止刷新;匹配成功后利用服务器BMC的可信根公钥对上传的BIOS镜像文件进行度量,并与服务器BMC中存储的基准值做比对,比对相同则允许BIOS镜像文件的解密和刷新执行;
如果比对不通过,则停止执行BIOS镜像文件刷新,并在服务器BMC中记录日志。
8.根据权利要求6所述的基于BMC的服务器BIOS全生命周期安全保护系统,其特征在于,所述启动前的镜像文件校验保护包括:
当BIOS启动时,通过服务器BMC从BIOS Flash中导出对应的BIOS镜像文件,提取BIOS镜像文件中的数字签名信息,利用可信根公钥对导出的BIOS镜像文件进行完整性度量和与基准值比对;
若比对通过,则启动BIOS;若不通过,则阻止BIOS对当前非法镜像进行加载启动,并尝试进行重复验证;
若验证仍未通过,则将BIOS自动切换到BIOS备份区,继续验证备份文件的签名值,直到验证通过才会从备份的BIOS镜像文件进行加载启动。
9.根据权利要求6所述的基于BMC的服务器BIOS全生命周期安全保护系统,其特征在于,所述BISO启动过程保护,包括:
在服务器BMC的预置Watchdog功能中加入BIOS切换选项;
在BIOS备份区采用双BIOS Flash备份,用于热备加载启动;
通过服务器BMC对BIOS镜像文件校验,校验成功后,执行BIOS启动,同时启动预置Watchdog功能;
BIOS成功启动后,向服务器BMC发送Disable Watchdog信号;
若在Watchdog Timer时间内未收到Disable Watchdog时,服务器BMC认为BIOS启动故障,则启动切换BIOS Flash功能,以完成BIOS安全启动。
10.根据权利要求9所述的基于BMC的服务器BIOS全生命周期安全保护系统,其特征在于,所述基于BMC的BIOS故障自动恢复,包括:
BIOS成功启动后,通过服务器BMC设置一个BIOS运行的信号S1,并使用BMC WatchdogTimer设置计时时间;
BIOS不间断的发送S1信号给服务器BMC,当服务器BMC在预设时间内未检测到S1信号,则认为BIOS异常,此时通过服务器BMC控制BIOS进行重新启动,如仍启动失败,则关机、切换到备份BIOS后再开机启动备份BIOS,启动过程仍由通过服务器BMC执行BISO启动过程保护。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210018565.7A CN114444083B (zh) | 2022-01-07 | 2022-01-07 | 一种基于bmc的服务器bios全生命周期安全保护系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210018565.7A CN114444083B (zh) | 2022-01-07 | 2022-01-07 | 一种基于bmc的服务器bios全生命周期安全保护系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114444083A true CN114444083A (zh) | 2022-05-06 |
CN114444083B CN114444083B (zh) | 2023-12-22 |
Family
ID=81367339
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210018565.7A Active CN114444083B (zh) | 2022-01-07 | 2022-01-07 | 一种基于bmc的服务器bios全生命周期安全保护系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114444083B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115729647A (zh) * | 2023-01-09 | 2023-03-03 | 苏州浪潮智能科技有限公司 | 服务器启动管理系统及方法 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572168A (zh) * | 2014-09-10 | 2015-04-29 | 中电科技(北京)有限公司 | 一种bios自更新保护系统及方法 |
CN107256168A (zh) * | 2017-06-12 | 2017-10-17 | 郑州云海信息技术有限公司 | 一种uefi bios安全升级机制的设计方法 |
US20180096154A1 (en) * | 2016-09-30 | 2018-04-05 | Hewlett Packard Enterprise Development Lp | Multiple roots of trust to verify integrity |
CN108959973A (zh) * | 2018-06-27 | 2018-12-07 | 郑州云海信息技术有限公司 | 一种针对bmc固件刷新的保护方法与系统 |
CN109446815A (zh) * | 2018-09-30 | 2019-03-08 | 华为技术有限公司 | 基本输入输出系统固件的管理方法、装置和服务器 |
CN109714303A (zh) * | 2017-10-25 | 2019-05-03 | 阿里巴巴集团控股有限公司 | Bios启动方法及数据处理方法 |
CN109710315A (zh) * | 2017-10-25 | 2019-05-03 | 阿里巴巴集团控股有限公司 | Bios刷写方法及bios镜像文件的处理方法 |
CN111523112A (zh) * | 2020-04-23 | 2020-08-11 | 苏州浪潮智能科技有限公司 | 一种服务器安全启动方法、装置、设备及介质 |
CN111709033A (zh) * | 2020-05-29 | 2020-09-25 | 苏州浪潮智能科技有限公司 | 一种基于puf安全启动服务器的方法、系统、设备及介质 |
CN112507343A (zh) * | 2020-12-11 | 2021-03-16 | 浪潮电子信息产业股份有限公司 | 一种bios更新方法、装置、设备及介质 |
CN112817621A (zh) * | 2021-01-22 | 2021-05-18 | 浪潮电子信息产业股份有限公司 | 一种bios固件刷新方法、装置及相关组件 |
CN113065140A (zh) * | 2021-06-02 | 2021-07-02 | 南方电网数字电网研究院有限公司 | 一种芯片化控制保护装置内嵌安全防护系统及方法 |
-
2022
- 2022-01-07 CN CN202210018565.7A patent/CN114444083B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572168A (zh) * | 2014-09-10 | 2015-04-29 | 中电科技(北京)有限公司 | 一种bios自更新保护系统及方法 |
US20180096154A1 (en) * | 2016-09-30 | 2018-04-05 | Hewlett Packard Enterprise Development Lp | Multiple roots of trust to verify integrity |
CN107256168A (zh) * | 2017-06-12 | 2017-10-17 | 郑州云海信息技术有限公司 | 一种uefi bios安全升级机制的设计方法 |
CN109714303A (zh) * | 2017-10-25 | 2019-05-03 | 阿里巴巴集团控股有限公司 | Bios启动方法及数据处理方法 |
CN109710315A (zh) * | 2017-10-25 | 2019-05-03 | 阿里巴巴集团控股有限公司 | Bios刷写方法及bios镜像文件的处理方法 |
CN108959973A (zh) * | 2018-06-27 | 2018-12-07 | 郑州云海信息技术有限公司 | 一种针对bmc固件刷新的保护方法与系统 |
CN109446815A (zh) * | 2018-09-30 | 2019-03-08 | 华为技术有限公司 | 基本输入输出系统固件的管理方法、装置和服务器 |
CN111523112A (zh) * | 2020-04-23 | 2020-08-11 | 苏州浪潮智能科技有限公司 | 一种服务器安全启动方法、装置、设备及介质 |
CN111709033A (zh) * | 2020-05-29 | 2020-09-25 | 苏州浪潮智能科技有限公司 | 一种基于puf安全启动服务器的方法、系统、设备及介质 |
CN112507343A (zh) * | 2020-12-11 | 2021-03-16 | 浪潮电子信息产业股份有限公司 | 一种bios更新方法、装置、设备及介质 |
CN112817621A (zh) * | 2021-01-22 | 2021-05-18 | 浪潮电子信息产业股份有限公司 | 一种bios固件刷新方法、装置及相关组件 |
CN113065140A (zh) * | 2021-06-02 | 2021-07-02 | 南方电网数字电网研究院有限公司 | 一种芯片化控制保护装置内嵌安全防护系统及方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115729647A (zh) * | 2023-01-09 | 2023-03-03 | 苏州浪潮智能科技有限公司 | 服务器启动管理系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114444083B (zh) | 2023-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI539324B (zh) | 驗證控制器碼及系統啓動碼之技術 | |
CN103718165B (zh) | Bios闪存攻击保护和通知 | |
US8151249B2 (en) | Operating system monitoring setting information generator apparatus and operating system monitoring apparatus | |
CN100437502C (zh) | 基于安全芯片的防病毒方法 | |
US8028172B2 (en) | Systems and methods for updating a secure boot process on a computer with a hardware security module | |
CN102880828B (zh) | 一种针对虚拟化支撑环境的入侵检测与恢复系统 | |
KR100543268B1 (ko) | 컴퓨터 시스템의 보안성을 향상시키는 보안용 코프로세서 | |
CN111158767B (zh) | 基于bmc的服务器安全启动方法及装置 | |
JP2006501581A (ja) | サーバ管理コプロセッササブシステム内部のtcpaによる信頼性の高いプラットフォームモジュール機能のカプセル化 | |
JP2007257197A (ja) | 起動検証機能を有する情報処理装置 | |
CN105122261A (zh) | 从遭到破坏的系统启动代码中恢复 | |
CN113168474A (zh) | 固件的安全验证 | |
CN104572168A (zh) | 一种bios自更新保护系统及方法 | |
KR102395258B1 (ko) | 부트 메모리 버스의 경로 절체 기능을 이용한 시큐어 부팅 방법 및 이를 이용한 장치 | |
CN110069361A (zh) | 用于tpm故障切换的方法和装置 | |
US20210367781A1 (en) | Method and system for accelerating verification procedure for image file | |
CN113553115B (zh) | 一种基于异构多核芯片的启动方法以及存储介质 | |
CN114003915A (zh) | 基于芯片的安全启动方法及装置 | |
CN115062307A (zh) | 基于Open POWER的程序完整性校验方法、系统、终端及存储介质 | |
CN114444083B (zh) | 一种基于bmc的服务器bios全生命周期安全保护系统 | |
US20070226390A1 (en) | Method for Detecting Illegal Modifications Made to Manufacturer Software | |
CN107657170A (zh) | 支持智能修复的可信加载启动控制系统和方法 | |
US20200244461A1 (en) | Data Processing Method and Apparatus | |
CN114692160A (zh) | 计算机安全可信启动的处理方法及装置 | |
CN108629185B (zh) | 服务器可信平台度量控制系统及其运行方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |