CN105138378A - 一种bios刷写方法及电子设备 - Google Patents

一种bios刷写方法及电子设备 Download PDF

Info

Publication number
CN105138378A
CN105138378A CN201510586709.9A CN201510586709A CN105138378A CN 105138378 A CN105138378 A CN 105138378A CN 201510586709 A CN201510586709 A CN 201510586709A CN 105138378 A CN105138378 A CN 105138378A
Authority
CN
China
Prior art keywords
chinese ink
bios
brush dipped
pattern
write
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
Application number
CN201510586709.9A
Other languages
English (en)
Other versions
CN105138378B (zh
Inventor
彭文武
胡斌
李�权
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.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing Ltd
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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201510586709.9A priority Critical patent/CN105138378B/zh
Publication of CN105138378A publication Critical patent/CN105138378A/zh
Application granted granted Critical
Publication of CN105138378B publication Critical patent/CN105138378B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本申请公开一种BIOS刷写方法和电子设备,所述方法及电子设备在接收到用户的BIOS刷写请求时,获取待刷写的目标BIOS文件,并识别实现BIOS刷写需采用的刷写模式,在此基础上,依据所识别出的刷写模式,对所述目标BIOS文件执行相应的刷写处理操作,以实现向所述电子设备的BIOS芯片刷写BIOS。可见本申请在刷写BIOS时,通过识别需采用的刷写模式,并触发与识别出的刷写模式相匹配的刷写处理操作,实现了对不同模式下BIOS刷写过程的支持,降低了BIOS刷写场景的复杂性。

Description

一种BIOS刷写方法及电子设备
技术领域
本发明属于固件的安全刷写技术领域,尤其涉及一种BIOS(BasicInputOutputSystem,基本输入输出系统)刷写方法及电子设备。
背景技术
SecureFlash是符合NIST-SP800-147国际安全标准的一种BIOS刷写方案,BIOSGuard是新推出的同样符合所述标准的一个增强型安全机制,包含BIOS安全刷写内容,可实现刷写BIOS。
目前,SecureFlash模式下的BIOS刷写工具不兼容BIOSguard,无法支持BIOSguard模式下的BIOS刷写过程,导致SecureFlash模式的BIOS刷写方案,及BIOSGuard模式的BIOS刷写方案无法共用一套刷写工具,进而会造成厂商和用户在内BIOS刷写场景的复杂性。
发明内容
有鉴于此,本发明的目的在于提供一种BIOS刷写方法及电子设备,旨在解决BIOS刷写工具对以上两种模式BIOS刷写方案的兼容问题,从而降低BIOS刷写场景的复杂性。
为此,本发明公开如下技术方案:
一种基本输入输出系统BIOS刷写方法,应用于电子设备,所述方法包括:
在接收到用户的BIOS刷写请求时,获取待刷写的目标BIOS文件;
识别实现BIOS刷写需采用的刷写模式;
对所述目标BIOS文件执行与所述刷写模式相对应的刷写处理。
上述方法,优选的,所述目标BIOS文件为经过签名认证的BIOS文件。
上述方法,优选的,所述识别实现BIOS刷写需采用的刷写模式包括:
读取预置的模式标志位的数值;所述模式标志位的数值由所述电子设备在开机时依据侦测的硬件情况所设定;
如果所述模式标志位的数值表征BIOSguard模式开启,则识别出实现BIOS刷写需采用的刷写模式为BIOSguard模式;
如果所述模式标志位的数值表征BIOSguard模式未开启,则识别出实现BIOS刷写需采用的刷写模式为SecureFlash模式。
上述方法,优选的,如果识别出需采用的刷写模式为BIOSguard模式,则所述对所述目标BIOS文件执行与所述刷写模式相对应的刷写处理,包括:
复制所述目标BIOS文件至所述电子设备的中央处理器CPU上的AC-RAM;
基于BIOSguard刷写要求,对AC-RAM中的所述目标BIOS文件进行合法性验证及BIOS刷写。
上述方法,优选的,在基于BIOSguard模式进行BIOS刷写时,屏蔽刷所述电子设备BIOS芯片中保留区块的数据。
上述方法,优选的,还包括:
在BIOS刷写结束后,将BIOS中的系统管理接口SMBIOS数据从启动区块移动至非易失性随机访问存储器NVRAM区块。
上述方法,优选的,还包括:
在BIOS开机自检结束且未启动操作系统时,锁定BIOS芯片启动区块和主区块中的数据。
上述方法,优选的,如果识别出需采用的刷写模式为SecureFlash模式,则所述对所述目标BIOS文件执行与所述刷写模式相对应的刷写处理,包括:
将所述目标BIOS文件转换为符合SecureFlash刷写格式的二进制文件;
将所述二进制文件封装为一封装包;
复制所述封装包至所述电子设备的系统内存;
基于SecureFlash刷写要求,对内存中的所述封装包进行合法性验证及BIOS刷写。
一种电子设备,包括:
获取模块,用于接收到用户的BIOS刷写请求时,获取待刷写的目标BIOS文件;
识别模块,用于识别实现BIOS刷写需采用的刷写模式;
刷写模块,用于对所述目标BIOS文件执行与所述刷写模式相对应的刷写处理。
上述电子设备,优选的,所述识别模块包括:
读取单元,用于读取预置的模式标志位的数值;所述模式标志位的数值由所述电子设备在开机时依据侦测的硬件情况所设定;
第一识别单元,用于在所述模式标志位的数值表征BIOSguard模式开启时,识别出实现BIOS刷写需采用的刷写模式为BIOSguard模式;
第二识别单元,用于在所述模式标志位的数值表征BIOSguard模式未开启时,识别出实现BIOS刷写需采用的刷写模式为SecureFlash模式。
上述电子设备,优选的,所述刷写模块包括:
第一复制单元,用于在所述识别模块识别出需采用的刷写模式为BIOSguard模式时,复制所述目标BIOS文件至所述电子设备CPU上的AC-RAM;
第一刷写单元,用于基于BIOSguard刷写要求,对AC-RAM中的所述目标BIOS文件执行合法性验证及BIOS刷写。
上述电子设备,优选的,还包括:
数据转移模块,用于在BIOS刷写结束后,将BIOS中的SMBIOS数据从启动区块移动至NVRAM区块。
上述电子设备,优选的,还包括:
锁定模块,用于在BIOS开机自检结束且未启动操作系统时,锁定BIOS芯片启动区块和主区块中的数据。
上述电子设备,优选的,所述刷写模块包括:
文件转换单元,用于在所述识别模块识别出需采用的刷写模式为secureflash模式时,将所述目标BIOS文件转换为符合SecureFlash刷写格式的二进制文件;
封装单元,用于将所述二进制文件封装为一封装包;
第二复制单元,用于复制所述封装包至所述电子设备的系统内存;
第二刷写单元,用于基于SecureFlash刷写要求,对内存中的所述封装包进行合法性验证及BIOS刷写。
由以上方案可知,本申请公开的BIOS刷写方法和电子设备,在接收到用户的BIOS刷写请求时,获取待刷写的目标BIOS文件,并识别实现BIOS刷写需采用的刷写模式,在此基础上,依据所识别出的刷写模式,对所述目标BIOS文件执行相应的刷写处理操作,以实现向所述电子设备的BIOS芯片刷写BIOS。可见本申请在刷写BIOS时,通过识别需采用的刷写模式,并触发与识别出的刷写模式相匹配的刷写处理操作,实现了对不同模式下BIOS刷写过程的支持,降低了BIOS刷写场景的复杂性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本申请提供的一种BIOS刷写方法实施例一的流程图;
图2是本申请提供的一种BIOS刷写方法实施例二的流程图;
图3是本申请提供的一种BIOS刷写方法实施例三的流程图;
图4是本申请提供的一种BIOS刷写方法实施例四的流程图;
图5是本申请提供的一种BIOS刷写方法实施例五的流程图;
图6是本申请提供的一种电子设备实施例六的结构示意图;
图7是本申请提供的一种电子设备实施例七的结构示意图;
图8是本申请提供的一种电子设备实施例八的结构示意图;
图9是本申请提供的一种电子设备实施例九的结构示意图;
图10是本申请提供的一种电子设备实施例十的结构示意图。
具体实施方式
为了引用和清楚起见,下文中使用的技术名词、简写或缩写总结解释如下:
BIOS:BasicInputOutputSystem,基本输入输出系统,是计算机底层固件,负责开机自检以及上层系统资源支持,目前已经发展到为UEFI即统一的可扩展固件接口。BIOS和UEFI可以理解为同义词。
DMI:即SMBIOS,系统管理接口,是操作系统跟BIOS沟通的一种途径,通过系统内存传递数据。
NVRAM:Non-VolatileRandomAccessMemory,非易失性存储区块,属于BIOS中一个区块,用来存储可变数据。
SecureFlash:现有的符合NIST-SP800-147国际安全标准的刷写BIOS方案。
BIOSguard:也叫PFAT,Intel推出的符合NIST-SP800-147国际安全标准的一个增强型的安全机制,包含BIOS安全刷写内容。
AC-RAM:AuthenticatedCodeRAM(已验证代码存储区),是BIOSGuard模式下使用的CPU上的一个安全内存区块,BIOSguard把经过认证的数据复制到这个CPU的内存块上以确保安全。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
参考图1,图1为本申请提供的一种BIOS刷写方法实施例一的流程图,所述方法可应用于台式机、一体机、笔记本电脑等电子设备中,如图1所示,所述方法可以包括以下步骤:
S101:在接收到用户的BIOS刷写请求时,获取待刷写的目标BIOS文件。
由于BIOSguard要求BIOS待刷写文件是经过签名认证的,从而,在实现兼容SecureFlash及BIOSguard等不同模式的BIOS刷写过程时,为了保证待刷写文件对不同模式的通用性,本申请中的待刷写文件需为经过签名认证的BIOS文件。针对此特点,发行商可通过预先采用相应的签名生成环境为BIOS文件生成一层签名,实现直接为用户提供经过签名认证的BIOS文件,以方便用户使用。
S102:识别实现BIOS刷写需采用的刷写模式。
本申请通过在电子设备中预先设置一模式标志位,实现为刷写BIOS文件时的刷写模式识别提供支持,其中,该模式标志位的数值具体由电子设备在开机时依据所侦测的硬件情况所设定。例如具体可通过侦测电子设备的CPU(CentralProcessingUnit,中央处理器)是否支持BIOSguard,相关产品定义是否支持BIOSguard,以及电子设备是否处于非工厂模式等,来获知电子设备的硬件情况是否适用于BIOSguard模式,最终依据侦测结果,在该模式标志位设置是否开启BIOSguard模式。比如当侦测到CPU支持BIOSguard、相关产品定义支持BIOSguard,且电子设备处于非工厂模式时,可设置开启BIOSguard模式。
本申请假定该标志位被置为1时,表征BIOSguard模式开启,否则,当该标志位被置为0时,则表征BIOSguard模式未开启。
在此基础上,电子设备可通过读取该模式标志位的数值,来识别此次BIOS刷写具体需采用的刷写模式,当读取的模式标志位数值为1时,则需采用的刷写模式为BIOSguard模式,否则,如果读取的模式标志位数值为0,则需采用的刷写模式为SecureFlash模式。
S103:对所述目标BIOS文件执行与所述刷写模式相对应的刷写处理。
当通过模式标志位的数值,识别出需采用的刷写模式为BIOSguard模式时,则本步骤调用并执行BIOSguard模式的BIOS刷写方案进行BIOS刷写;反之,当识别出需采用的刷写模式为SecureFlash模式时,则本步骤调用并执行SecureFlash模式的BIOS刷写方案实现BIOS刷写。
具体地,本实施例预先在BIOS芯片的主区块中分别刷入有SecureFlash及BIOSguard两种模式的服务程序:SecureFlash服务程序及BIOSguard服务程序,其中,SecureFlash服务程序涵盖SecureFlash模式下BIOS刷写方案的各环节处理脚本;BIOSguard服务程序涵盖BIOSguard模式下BIOS刷写方案的各环节处理脚本,从而为两种不同刷写模式下相应BIOS刷写方案的调用提供了支持。
其中,BIOSguard模式兼容原有SecureFlash模式下的各种参数,例如负责刷写主区块的参数P、负责刷写启动区块的参数B、负责刷写NVRAM(Non-VolatileRandomAccessMemory,非易失性随机访问存储器)区块的参数N、负责刷写保留区块的参数L以及负责保留用户设定的参数SP等等。从而,在构建BIOSguard服务程序时,可直接把各参数在SecureFlash下的行为转化为采用BIOSguard模式下的脚本程序实现其功能。
由以上方案可知,本申请公开的BIOS刷写方法,在接收到用户的BIOS刷写请求时,获取待刷写的目标BIOS文件,并识别实现BIOS刷写需采用的刷写模式,在此基础上,依据所识别出的刷写模式,对所述目标BIOS文件执行相应的刷写处理操作,以实现向所述电子设备的BIOS芯片刷写BIOS。可见本申请在刷写BIOS时,通过识别需采用的刷写模式,并触发与识别出的刷写模式相匹配的刷写处理操作,实现了对不同模式下BIOS刷写过程的支持,降低了BIOS刷写场景的复杂性。
实施例二
参考图2,图2为本申请提供的一种BIOS刷写方法实施例二的流程图,本实施例二提供BIOSguard模式下的BIOS刷写过程,如图1所示,当识别出需采用的刷写模式为BIOSguard模式时,所述步骤S103可以通过以下步骤实现:
S201:复制所述目标BIOS文件至所述电子设备CPU上的AC-RAM;
S202:基于BIOSguard刷写要求,对AC-RAM中的所述目标BIOS文件进行合法性验证及BIOS刷写。
其中,AC-RAM为BIOSGuard模式下使用的CPU上的一个安全内存区块。在刷写BIOS时,BIOSguard把经过签名认证的待刷写BIOS数据复制到CPU的该内存块上以确保安全,在此基础上,通过调用BIOS主区块的BIOSguard服务程序,实现对该安全区块上的待刷BIOS数据进行合法性验证及BIOS刷写,从而实现在BIOSGuard模式下向BIOS芯片刷写BIOS数据。本实施例在BIOSguard模式下进行BIOS刷写时,屏蔽刷BIOS芯片中保留区块的参数,从而使该区块仍然可以兼容原有刷写模式(例如SecureFlash)的脚本。
实施例三
参考图3,图3为本申请提供的一种BIOS刷写方法实施例三的流程图,本实施例三提供SecureFlash模式下的BIOS刷写过程,如图3所示,当识别出需采用的刷写模式为SecureFlash模式时,所述步骤S103可以通过以下步骤实现:
S301:将所述目标BIOS文件转换为符合SecureFlash刷写格式的二进制文件;
S302:将所述二进制文件封装为一封装包;
S303:复制所述封装包至所述电子设备的系统内存;
S304:基于SecureFlash刷写要求,对内存中的所述封装包进行合法性验证及BIOS刷写。
由于待刷文件为具有一层签名的BIOS文件,因此,在SecureFlash模式下刷写BIOS时,需首先从待刷写的BIOS文件中剥离掉符合BIOSguard格式文件的签名认证部分,实现将其转换为符合SecureFlash刷写格式的二进制文件;之后将该二进制文件封装为一封装包,并将其复制到电子设备的系统内存中。
在此基础上,可通过重启电子设备,并调用电子设备BIOS主区块中预先刷写的SecureFlash服务程序,实现对内存中的待刷BIOS封装包进行合法性验证及BIOS刷写,从而实现了SecureFlash模式下的BIOS刷写过程。
实施例四
参考图4,图4为本申请提供的一种BIOS刷写方法实施例四的流程图,其中,在基于BIOSguard模式完成BIOS刷写后,所述方法还可以包括以下步骤:
S401:在BIOS刷写结束后,将BIOS中的SMBIOS(SystemManagementBIOS,系统管理接口)数据从启动区块移动至NVRAM区块。
由于BIOSguard需要锁定BIOS启动区块和主区块,而SMBIOS等需要变更的数据存在于启动区块中,为方便BIOS锁定之后仍然可以对SMBIOS数据进行更新,本实施例在BIOS刷写结束后,通过将SMBIOS数据从BIOS芯片的启动区块移动至NVRAM区块,来避免SMBIOS数据被锁定。
实施例五
参考图5,图5为本申请提供的一种BIOS刷写方法实施例五的流程图,其中,在基于BIOSguard模式完成BIOS刷写后,所述方法还可以包括以下步骤:
S501:在BIOS开机自检结束且未启动操作系统时,锁定BIOS芯片启动区块和主区块中的数据。
由于BIOSguard需要锁定BIOS启动区块和主区块,为避免影响BIOS开机自检过程中对BIOS数据的读写,本申请将BIOS锁定动作转移至BIOS开机自检结束需启动操作系统的节点执行,从而可确保BIOS开机自检过程中对BIOS数据的正常读写。
实施例六
参考图6,图6为本申请提供的一种电子设备实施例六的结构示意图,所述电子设备具体可以是台式机、一体机、笔记本电脑等,如图6所示,所述电子设备可以包括:
获取模块100,用于接收到用户的BIOS刷写请求时,获取待刷写的目标BIOS文件。
由于BIOSguard要求BIOS待刷写文件是经过签名认证的,从而,在实现兼容SecureFlash及BIOSguard等不同模式的BIOS刷写过程时,为了保证待刷写文件对不同模式的通用性,本申请中的待刷写文件需为经过签名认证的BIOS文件。针对此特点,发行商可通过预先采用相应的签名生成环境为BIOS文件生成一层签名,实现直接为用户提供经过签名认证的BIOS文件,以方便用户使用。
识别模块200,用于识别实现BIOS刷写需采用的刷写模式。
所述识别模块200包括读取单元、第一识别单元和第二识别单元。
读取单元,用于读取预置的模式标志位的数值;所述模式标志位的数值由所述电子设备在开机时依据侦测的硬件情况所设定;
第一识别单元,用于在所述模式标志位的数值表征BIOSguard模式开启时,识别出实现BIOS刷写需采用的刷写模式为BIOSguard模式;
第二识别单元,用于在所述模式标志位的数值表征BIOSguard模式未开启时,识别出实现BIOS刷写需采用的刷写模式为SecureFlash模式。
本申请通过在电子设备中预先设置一模式标志位,实现为刷写BIOS文件时的刷写模式识别提供支持,其中,该模式标志位的数值具体由电子设备在开机时依据所侦测的硬件情况所设定。例如具体可通过侦测电子设备的CPU(CentralProcessingUnit,中央处理器)是否支持BIOSguard,相关产品定义是否支持BIOSguard,以及电子设备是否处于非工厂模式等,来获知电子设备的硬件情况是否适用于BIOSguard模式,最终依据侦测结果,在该模式标志位设置是否开启BIOSguard模式。比如当侦测到CPU支持BIOSguard、相关产品定义支持BIOSguard,且电子设备处于非工厂模式时,可设置开启BIOSguard模式。
本申请假定该标志位被置为1时,表征BIOSguard模式开启,否则,当该标志位被置为0时,则表征BIOSguard模式未开启。
在此基础上,电子设备可通过读取该模式标志位的数值,来识别此次BIOS刷写具体需采用的刷写模式,当读取的模式标志位数值为1时,则需采用的刷写模式为BIOSguard模式,否则,如果读取的模式标志位数值为0,则需采用的刷写模式为SecureFlash模式。
刷写模块300,用于对所述目标BIOS文件执行与所述刷写模式相对应的刷写处理。
当通过模式标志位的数值,识别出需采用的刷写模式为BIOSguard模式时,则本模块调用并执行BIOSguard模式的BIOS刷写方案进行BIOS刷写;反之,当识别出需采用的刷写模式为SecureFlash模式时,则本模块调用并执行SecureFlash模式的BIOS刷写方案实现BIOS刷写。
具体地,本实施例预先在BIOS芯片的主区块中分别刷入有SecureFlash及BIOSguard两种模式的服务程序:SecureFlash服务程序及BIOSguard服务程序,其中,SecureFlash服务程序涵盖SecureFlash模式下BIOS刷写方案的各环节处理脚本;BIOSguard服务程序涵盖BIOSguard模式下BIOS刷写方案的各环节处理脚本,从而为两种不同刷写模式下相应BIOS刷写方案的调用提供了支持。
其中,BIOSguard模式兼容原有SecureFlash模式下的各种参数,例如负责刷写主区块的参数P、负责刷写启动区块的参数B、负责刷写NVRAM(Non-VolatileRandomAccessMemory,非易失性随机访问存储器)区块的参数N、负责刷写保留区块的参数L以及负责保留用户设定的参数SP等等。从而,在构建BIOSguard服务程序时,可直接把各参数在SecureFlash下的行为转化为采用BIOSguard模式下的脚本程序实现其功能。
由以上方案可知,本申请公开的电子设备,在接收到用户的BIOS刷写请求时,获取待刷写的目标BIOS文件,并识别实现BIOS刷写需采用的刷写模式,在此基础上,依据所识别出的刷写模式,对所述目标BIOS文件执行相应的刷写处理操作,以实现向所述电子设备的BIOS芯片刷写BIOS。可见本申请在刷写BIOS时,通过识别需采用的刷写模式,并触发与识别出的刷写模式相匹配的刷写处理操作,实现了对不同模式下BIOS刷写过程的支持,降低了BIOS刷写场景的复杂性。
实施例七
参考图7,图7为本申请提供的一种电子设备实施例七的结构示意图,其中,所述刷写模块300包括:
第一复制单元311,用于在所述识别模块200识别出需采用的刷写模式为BIOSguard模式时,复制所述目标BIOS文件至所述电子设备CPU上的AC-RAM;
第一刷写单元312,用于基于BIOSguard刷写要求,对AC-RAM中的所述目标BIOS文件执行合法性验证及BIOS刷写。
本实施例七提供BIOSguard模式下的BIOS刷写过程。
其中,AC-RAM为BIOSGuard模式下使用的CPU上的一个安全内存区块。在刷写BIOS时,BIOSguard把经过签名认证的待刷写BIOS数据复制到CPU的该内存块上以确保安全,在此基础上,通过调用BIOS主区块的BIOSguard服务程序,实现对该安全区块上的待刷BIOS数据进行合法性验证及BIOS刷写,从而实现在BIOSGuard模式下向BIOS芯片刷写BIOS数据。本实施例在BIOSguard模式下进行BIOS刷写时,屏蔽刷BIOS芯片中保留区块的参数,从而使该区块仍然可以兼容原有刷写模式(例如SecureFlash)的脚本。
实施例八
参考图8,图8为本申请提供的一种电子设备实施例八的结构示意图,其中,所述刷写模块300包括:
文件转换单元321,用于在所述识别模块200识别出需采用的刷写模式为secureflash模式时,将所述目标BIOS文件转换为符合SecureFlash刷写格式的二进制文件;
封装单元322,用于将所述二进制文件封装为一封装包;
第二复制单元323,用于复制所述封装包至所述电子设备的系统内存;
第二刷写单元324,用于基于SecureFlash刷写要求,对内存中的所述封装包进行合法性验证及BIOS刷写。
本实施例八提供SecureFlash模式下的BIOS刷写过程。
由于待刷文件为具有一层签名的BIOS文件,因此,在SecureFlash模式下刷写BIOS时,需首先从待刷写的BIOS文件中剥离掉符合BIOSguard格式文件的签名认证部分,实现将其转换为符合SecureFlash刷写格式的二进制文件;之后将该二进制文件封装为一封装包,并将其复制到电子设备的系统内存中。
在此基础上,可通过重启电子设备,并调用电子设备BIOS主区块中预先刷写的SecureFlash服务程序,实现对内存中的待刷BIOS封装包进行合法性验证及BIOS刷写,从而实现了SecureFlash模式下的BIOS刷写过程。
实施例九
参考图9,图9为本申请提供的一种电子设备实施例九的结构示意图,其中,所述电子设备还可以包括:
数据转移模块400,用于在基于BIOSguard模式完成BIOS刷写后,将BIOS中的SMBIOS数据从启动区块移动至NVRAM区块。
由于BIOSguard需要锁定BIOS启动区块和主区块,而SMBIOS等需要变更的数据存在于启动区块中,为方便BIOS锁定之后仍然可以对SMBIOS数据进行更新,本实施例在BIOS刷写结束后,通过将SMBIOS数据从BIOS芯片的启动区块移动至NVRAM区块,来避免SMBIOS数据被锁定。
实施例十
参考图10,图10为本申请提供的一种电子设备实施例十的结构示意图,其中,所述电子设备还可以包括:
锁定模块500,用于在基于BIOSguard模式完成BIOS刷写后,在BIOS开机自检结束且未启动操作系统时,锁定BIOS芯片启动区块和主区块中的数据。
由于BIOSguard需要锁定BIOS启动区块和主区块,为避免影响BIOS开机自检过程中对BIOS数据的读写,本申请将BIOS锁定动作转移至BIOS开机自检结束需启动操作系统的节点执行,从而可确保BIOS开机自检过程中对BIOS数据的正常读写。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
为了描述的方便,描述以上系统或装置时以功能分为各种模块或单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
最后,还需要说明的是,在本文中,诸如第一、第二、第三和第四等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (14)

1.一种基本输入输出系统BIOS刷写方法,其特征在于,应用于电子设备,所述方法包括:
在接收到用户的BIOS刷写请求时,获取待刷写的目标BIOS文件;
识别实现BIOS刷写需采用的刷写模式;
对所述目标BIOS文件执行与所述刷写模式相对应的刷写处理。
2.根据权利要求1所述的方法,其特征在于,所述目标BIOS文件为经过签名认证的BIOS文件。
3.根据权利要求2所述的方法,其特征在于,所述识别实现BIOS刷写需采用的刷写模式包括:
读取预置的模式标志位的数值;所述模式标志位的数值由所述电子设备在开机时依据侦测的硬件情况所设定;
如果所述模式标志位的数值表征BIOSguard模式开启,则识别出实现BIOS刷写需采用的刷写模式为BIOSguard模式;
如果所述模式标志位的数值表征BIOSguard模式未开启,则识别出实现BIOS刷写需采用的刷写模式为SecureFlash模式。
4.根据权利要求3所述的方法,其特征在于,如果识别出需采用的刷写模式为BIOSguard模式,则所述对所述目标BIOS文件执行与所述刷写模式相对应的刷写处理,包括:
复制所述目标BIOS文件至所述电子设备的中央处理器CPU上的已验证代码存储区AC-RAM;
基于BIOSguard刷写要求,对AC-RAM中的所述目标BIOS文件进行合法性验证及BIOS刷写。
5.根据权利要求4所述的方法,其特征在于,在基于BIOSguard模式进行BIOS刷写时,屏蔽刷所述电子设备BIOS芯片中保留区块的数据。
6.根据权利要求4所述的方法,其特征在于,还包括:
在BIOS刷写结束后,将BIOS中的系统管理接口SMBIOS数据从启动区块移动至非易失性随机访问存储器NVRAM区块。
7.根据权利要求6所述的方法,其特征在于,还包括:
在BIOS开机自检结束且未启动操作系统时,锁定BIOS芯片启动区块和主区块中的数据。
8.根据权利要求3所述的方法,其特征在于,如果识别出需采用的刷写模式为SecureFlash模式,则所述对所述目标BIOS文件执行与所述刷写模式相对应的刷写处理,包括:
将所述目标BIOS文件转换为符合SecureFlash刷写格式的二进制文件;
将所述二进制文件封装为一封装包;
复制所述封装包至所述电子设备的系统内存;
基于SecureFlash刷写要求,对内存中的所述封装包进行合法性验证及BIOS刷写。
9.一种电子设备,其特征在于,包括:
获取模块,用于接收到用户的BIOS刷写请求时,获取待刷写的目标BIOS文件;
识别模块,用于识别实现BIOS刷写需采用的刷写模式;
刷写模块,用于对所述目标BIOS文件执行与所述刷写模式相对应的刷写处理。
10.根据权利要求9所述的电子设备,其特征在于,所述识别模块包括:
读取单元,用于读取预置的模式标志位的数值;所述模式标志位的数值由所述电子设备在开机时依据侦测的硬件情况所设定;
第一识别单元,用于在所述模式标志位的数值表征BIOSguard模式开启时,识别出实现BIOS刷写需采用的刷写模式为BIOSguard模式;
第二识别单元,用于在所述模式标志位的数值表征BIOSguard模式未开启时,识别出实现BIOS刷写需采用的刷写模式为SecureFlash模式。
11.根据权利要求10所述的电子设备,其特征在于,所述刷写模块包括:
第一复制单元,用于在所述识别模块识别出需采用的刷写模式为BIOSguard模式时,复制所述目标BIOS文件至所述电子设备CPU上的AC-RAM;
第一刷写单元,用于基于BIOSguard刷写要求,对AC-RAM中的所述目标BIOS文件执行合法性验证及BIOS刷写。
12.根据权利要求11所述的电子设备,其特征在于,还包括:
数据转移模块,用于在BIOS刷写结束后,将BIOS中的SMBIOS数据从启动区块移动至NVRAM区块。
13.根据权利要求12所述的电子设备,其特征在于,还包括:
锁定模块,用于在BIOS开机自检结束且未启动操作系统时,锁定BIOS芯片启动区块和主区块中的数据。
14.根据权利要求10所述的电子设备,其特征在于,所述刷写模块包括:
文件转换单元,用于在所述识别模块识别出需采用的刷写模式为secureflash模式时,将所述目标BIOS文件转换为符合SecureFlash刷写格式的二进制文件;
封装单元,用于将所述二进制文件封装为一封装包;
第二复制单元,用于复制所述封装包至所述电子设备的系统内存;
第二刷写单元,用于基于SecureFlash刷写要求,对内存中的所述封装包进行合法性验证及BIOS刷写。
CN201510586709.9A 2015-09-15 2015-09-15 一种bios刷写方法及电子设备 Active CN105138378B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510586709.9A CN105138378B (zh) 2015-09-15 2015-09-15 一种bios刷写方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510586709.9A CN105138378B (zh) 2015-09-15 2015-09-15 一种bios刷写方法及电子设备

Publications (2)

Publication Number Publication Date
CN105138378A true CN105138378A (zh) 2015-12-09
CN105138378B CN105138378B (zh) 2019-06-25

Family

ID=54723735

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510586709.9A Active CN105138378B (zh) 2015-09-15 2015-09-15 一种bios刷写方法及电子设备

Country Status (1)

Country Link
CN (1) CN105138378B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107817981A (zh) * 2017-11-23 2018-03-20 合肥联宝信息技术有限公司 一种嵌入式控制器的控制方法及电子设备
CN108170495A (zh) * 2018-01-29 2018-06-15 郑州云海信息技术有限公司 一种bios升级方法、系统、设备及计算机可读存储介质
CN111176686A (zh) * 2019-12-29 2020-05-19 山东英信计算机技术有限公司 一种bios升级方法、系统、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101364193A (zh) * 2007-08-06 2009-02-11 英业达股份有限公司 自动恢复bios的方法以及使用该方法的电脑与系统
CN103119553A (zh) * 2010-09-22 2013-05-22 英特尔公司 平台固件铠装技术
US9424434B2 (en) * 2014-01-29 2016-08-23 Wistron Corp. Personal electronic device and data theft prevention system and method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101364193A (zh) * 2007-08-06 2009-02-11 英业达股份有限公司 自动恢复bios的方法以及使用该方法的电脑与系统
CN103119553A (zh) * 2010-09-22 2013-05-22 英特尔公司 平台固件铠装技术
US9092632B2 (en) * 2010-09-22 2015-07-28 Intel Corporation Platform firmware armoring technology
US9424434B2 (en) * 2014-01-29 2016-08-23 Wistron Corp. Personal electronic device and data theft prevention system and method thereof

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107817981A (zh) * 2017-11-23 2018-03-20 合肥联宝信息技术有限公司 一种嵌入式控制器的控制方法及电子设备
CN108170495A (zh) * 2018-01-29 2018-06-15 郑州云海信息技术有限公司 一种bios升级方法、系统、设备及计算机可读存储介质
CN108170495B (zh) * 2018-01-29 2021-04-02 苏州浪潮智能科技有限公司 一种bios升级方法、系统、设备及计算机可读存储介质
CN111176686A (zh) * 2019-12-29 2020-05-19 山东英信计算机技术有限公司 一种bios升级方法、系统、电子设备及存储介质
CN111176686B (zh) * 2019-12-29 2022-03-22 山东英信计算机技术有限公司 一种bios升级方法、系统、电子设备及存储介质

Also Published As

Publication number Publication date
CN105138378B (zh) 2019-06-25

Similar Documents

Publication Publication Date Title
CN110096857B (zh) 区块链系统的权限管理方法、装置、设备和介质
CN110310205B (zh) 一种区块链数据监控方法、装置、设备和介质
US10102155B2 (en) Method and device of information protection for micro control unit chip
CN106682497A (zh) 在管理程序模式下安全执行代码的系统和方法
CN103412769A (zh) 外接卡参数配置方法、设备以及系统
US9262631B2 (en) Embedded device and control method thereof
CN102385671B (zh) 软件加密方法及系统
US10489582B1 (en) Firmware security vulnerability verification service
US20210089684A1 (en) Controlled access to data stored in a secure partition
CN104112089A (zh) 基于多策略融合的强制访问控制方法
CN114089975B (zh) 计算软件的扩展方法、装置、非易失性存储介质及处理器
US20220237144A1 (en) Baseboard management controller and construction method thereof
CN105138378A (zh) 一种bios刷写方法及电子设备
US9659156B1 (en) Systems and methods for protecting virtual machine program code
CN112612533A (zh) ARM服务器中基于CentOS的BMC setup选项修改方法
JP2006268861A (ja) ユーザーデータに対するコンピュータのアクセスを制御する方法および制御装置
CN101446915A (zh) 一种bios级日志的记录方法及装置
CN112613011B (zh) U盘系统认证方法、装置、电子设备及存储介质
EP3454216A1 (en) Method for protecting unauthorized data access from a memory
US20140109234A1 (en) Systems and methods for limiting the number of electronic devices accessing digital rights management (drm) content in a portable memory device
CN109522174B (zh) 控制adb使能的方法、装置、终端及存储介质
CN1983195A (zh) 嵌入设备、电子设备、嵌入设备的控制方法、控制程序、记录介质
US8347387B1 (en) Addressing security in writes to memory
CN114297592A (zh) 固件启动方法、装置、设备及可读存储介质
CN101414284A (zh) 数据保护方法及其存取权限管理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant