CN103514399A - 固件验证方法及系统 - Google Patents

固件验证方法及系统 Download PDF

Info

Publication number
CN103514399A
CN103514399A CN201210202272.0A CN201210202272A CN103514399A CN 103514399 A CN103514399 A CN 103514399A CN 201210202272 A CN201210202272 A CN 201210202272A CN 103514399 A CN103514399 A CN 103514399A
Authority
CN
China
Prior art keywords
firmware
identifying code
calculation element
motherboard
bios
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
CN201210202272.0A
Other languages
English (en)
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.)
Yun Chuan Intellectual Property Services Co Ltd Of Zhongshan City
Original Assignee
Hongfujin Precision Industry Shenzhen Co Ltd
Hon Hai Precision Industry Co 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 Hongfujin Precision Industry Shenzhen Co Ltd, Hon Hai Precision Industry Co Ltd filed Critical Hongfujin Precision Industry Shenzhen Co Ltd
Priority to CN201210202272.0A priority Critical patent/CN103514399A/zh
Publication of CN103514399A publication Critical patent/CN103514399A/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/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种固件验证方法及系统,该方法包括:烧录步骤,编写一组验证码,将该验证码分别存放在计算装置的基板管理控制器BMC固件与基本输入输出系统BIOS固件中的特定位置,并将BMC固件与BIOS固件分别烧录在计算装置主机板上的两块存储芯片中;第一验证步骤,当主机板上电自检时,验证所述两块存储芯片中BMC固件与BIOS固件中的验证码是否一致;第一触发步骤,当验证码不一致时,触发计算装置自动断电停机;第二触发步骤,当验证码一致时,触发计算装置开机进入操作系统。本发明使黑客无法让服务器系统执行非经授权的基板管理控制器固件和BIOS的固件。

Description

固件验证方法及系统
技术领域
本发明涉及一种固件验证方法及系统, 尤其是基板管理控制器和BIOS的固件验证方法及系统。
背景技术
一般情况下,服务器只能在进入操作系统后利用杀毒软件防范计算机病毒,试想今天如果有的系统管理者利用职务之便把非经授权的BMC固件或BIOS固件烧录于服务器的主机板上。这样当主机板上电进入操作系统前就会执行到非经授权的BMC固件或BIOS固件将资讯暴露于高度的风险中,防毒软件对此往往无法侦测,最终造成系统的损坏,数据被盗取或是毁损。以上所称固件,英文全称为Firmware,就是写入Flash、EROM或EPROM可编程只读存储器中的程序,通俗的理解就是“固化的软件”,简称称为“固件”,其与普通软件完全不同,它固化在集成电路内部,负责控制和协调集成电路,通常固件是无法被用户直接读出或修改的。
发明内容
鉴于以上内容,有必要提供一种固件验证方法及系统,其可在服务器进入操作系统前对BMC固件或BIOS固件进行验证。
本发明提供一种固件验证方法,该方法包括:烧录步骤,编写一组验证码,将该验证码分别存放在该计算装置的基板管理控制器BMC固件与基本输入输出系统BIOS固件中的特定位置,并将BMC固件与BIOS固件分别烧录在该计算装置的主机板上的两块存储芯片中;第一验证步骤,当主机板上电自检时,验证所述两块存储芯片中的BMC固件与BIOS固件的验证码是否一致;第一触发步骤,当验证码不一致时,触发主机板自动断电停机;及第二触发步骤,当验证码一致时,触发计算装置开机进入操作系统。
本发明还提供一种基板管理控制器固件与BIOS固件验证系统,包括:烧录模块,用于将编写的一组验证码分别存放在该计算装置的基板管理控制器BMC固件与基本输入输出系统BIOS固件中的特定位置,并将BMC固件与BIOS固件分别烧录在该计算装置的主机板上的两块存储芯片中;第一验证模块,用于当主机板上电自检时,验证所述两块存储芯片中的BMC固件与BIOS固件中的验证码是否一致;第一触发模块,用于当验证码不一致时,触发主机板自动断电停机;第二触发模块,用于当验证码一致时,触发计算装置开机进入操作系统。
本发明提供了一种固件验证方法及系统,在服务器进入操作系统前对BMC固件或BIOS固件进行验证,使黑客无法让服务器系统执行非经授权的BMC固件与BIOS固件。
附图说明
图1是本发明固件验证系统的较佳实施方式的运行环境图。
图2是本发明固件验证系统的较佳实施方式的功能模块图。
图3是本发明固件验证方法的较佳实施方式的流程图。
主要元件符号说明
服务器 1
固件验证系统 10
存储器 12
处理器 14
主机板 16
基板管理控制器BMC 18
基本输入输出系统BIOS 20
南桥芯片 22
第一存储芯片 24
第二存储芯片 26
时钟芯片 28
报警器 30
烧录模块 100
第一验证模块 102
触发模块 104
第二验证模块 106
停止模块 108
验证码编写模块 110
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
如图1所示为本发明固件验证系统较佳实施例的运行环境图,本发明固件验证系统10运行在服务器1上或其他计算装置(如桌上电脑),该服务器1包括存储器12、处理器14、主机板16、基板管理控制器18、BIOS (Basic Input Output System,基本输入输出系统)20、南桥芯片22、第一存储芯片 24、第二存储芯片 26、时钟芯片28,还可以包括报警器30。所述存储器12、处理器14、基板管理控制器18、BIOS 20、南桥芯片22、第一存储芯片24、第二存储芯片26、时钟芯片28及报警器30通过焊接或扩展插槽连接在主机板16上。
所述存储器12,可以是服务器1中的硬盘,用于存储固件验证系统10的程序代码等资料。
所述主机板16,安装在服务器1的机箱内,是微机最基本的部件之一,一般为矩形电路板,其上安装有计算机主要电路系统,例如,BIOS芯片、I/O控制芯片、键盘和面板控制开关接口、扩充插槽等元件。
所述基板管理控制器18,英文全称Baseboard Management Controller(BMC),是支持行业标准IPMI 规范的专用芯片,该规范描述了已经内置到主板上的管理功能,例如:本地和远程诊断、控制台支持、配置管理、硬件管理和故障排除。
所述BIOS 20,英文全称Basic Input Output System,中文名称为"基本输入输出系统",它是一组固化到计算机主板上一个ROM芯片上的程序,该程序包括:计算机输入输出的程序,系统开机自检程序等,其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。
所述南桥芯片(PCH)22,负责I/O总线之间的通信。
所述第一存储芯片24与第二存储芯片26,为连接在主机板16上的两块存储芯片,用于为验证码提供烧录载体。例如,所述第一存储芯片24可以是SPI (Serial peripheral Interface-串行外设接口)flash,所述第二存储芯片26可以是FRU(Field Replace Unit—现场可更换单元)EEPROM。
所述时钟芯片28,英文全称是Real-Time Clock, 由计算机主机板上的晶振及相关电路组成,本实施方式中,时钟芯片28用于定时触发验证基板管理控制器和BIOS的验证码的一致性。
所述报警器30,安装于主机板16上,用于当BMC固件与BIOS固件的验证码不一致时,发出报警钟声报警。
在本实施例中,所述固件验证系统10可以被分割成一个或多个模块,所述一个或多个模块被存储在所述服务器1的存储器12中并被配置成由一个或多个处理器(本实施例为一个处理器14)执行,以完成本发明。例如,参阅图2所示,所述固件验证系统10被分割成烧录模块100、第一验证模块102、触发模块104、第二验证模块106、停止模块108及验证码编写模块110,本发明所称的模块是完成一特定功能的程序段,比程序更适合于描述软件在服务器1中的执行过程,关于各模块的功能参阅图3的描述。
如图3所示,是本发明固件验证方法的较佳实施例流程图。
步骤S200,编写一组验证码,将其分别存放在基板管理控制器固件与BIOS固件的特定位置,本实施方式中,可以将基板管理控制器18的版本号作为验证码,例如,基板管理控制器18的版本号为“1”,转化成二进制为“0001”,将“0001”分别存放在基板管理控制器固件与BIOS固件中的开始位置,则基板管理控制器固件与BIOS固件中的前四位为“0001”。
步骤S202,烧录模块100将基板管理控制器固件与BIOS固件分别烧录在第一存储芯片 24和第二存储芯片 26上。
步骤S204, 当主机板16上电自检时,第一验证模块102验证基板管理控制器固件和BIOS固件中的验证码是否一致,若一致,说明验证成功,否则,说明验证失败。所述主机板16上电自检包括对CPU、基本的640KB内存、1MB以上的扩展内存、系统ROM BIOS的测试,也包括对CMOS中系统配置进行校验、初始化视频控制器、测试视频内存、检验视频信号和同步信号、对CRT接口进行测试、对键盘、软驱、硬盘及CD-ROM子系统作检查、对并行口(打印机)和串行口(RS232)进行检查。
步骤S206,若验证失败,触发模块104触发主机板16自动断电停机。
步骤S208,若验证成功,触发模块104触发服务器1进入操作系统,一般当主机板上电自检完成后,会转入BIOS 20的下一步骤:从A驱、C驱或CD-ROM以及网络服务器上寻找操作系统进行启动并将控制权交给该操作系统。
步骤S210, 时钟芯片28定时产生触发讯号,当南桥芯片22收到时钟芯片28的触发讯号时,触发主机板16的系统管理中断(System Management Interrupt)。
步骤S212,当触发主机板16的系统管理中断时,第二验证模块106重复验证基板管理控制器固件和BIOS固件中的验证码是否一致,若一致,说明验证成功,返回步骤S210,否则,验证失败,进入步骤S214。重复验证在于使服务器1进入操作系统之后仍可以实时防范黑客让服务器1执行非经授权的BMC固件与BIOS固件
步骤S214, 停止模块108停止服务器1的所有输入与输出的动作,以防BMC固件或BIOS固件的数据遭受破坏与非经授权的使用。此处还可以由触发模块104触发报警器30报警,来提示验证码验证失败。
以上实施方式仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种固件验证方法,应用于计算装置上,其特征在于,该方法包括:
烧录步骤,编写一组验证码,将该验证码分别存放在该计算装置的基板管理控制器BMC固件与基本输入输出系统BIOS固件中的特定位置,并将BMC固件与BIOS固件分别烧录在该计算装置的主机板上的两块存储芯片中;
第一验证步骤,当主机板上电自检时,验证所述两块存储芯片中的BMC固件与BIOS固件的验证码是否一致;
第一触发步骤,当验证码不一致时,触发主机板自动断电停机;及
第二触发步骤,当验证码一致时,触发计算装置开机进入操作系统。
2.根据权利要求1所述的固件验证方法,其特征在于,该方法还包括:
第二验证步骤,当计算装置的南桥芯片接收到主机板的系统管理中断后,重复验证所述两块存储芯片中的BMC固件与BIOS固件的验证码是否一致,若一致,则验证码验证成功,继续等待主机板的系统管理中断并重复验证,若不一致,则验证码验证失败,进入停止步骤;
停止步骤,停止该计算装置所有的输入与输出动作。
3.根据权利要求2所述的固件验证方法,其特征在于,所述停止步骤还包括:当所述验证码验证失败时,触发报警器报警。
4.根据权利要求2所述的固件验证方法,其特征在于,所述主机板的系统管理中断由该计算装置的主机板上的时钟芯片定时产生的触发讯号触发产生。
5.根据权利要求1所述的固件验证方法,其特征在于,所述验证码为通过将基板管理控制器的版本号转换成的一组计算装置可以识别的编码。
6.一种固件验证系统,应用于计算装置上,其特征在于,该系统包括:
烧录模块,用于将编写的一组验证码分别存放在该计算装置的基板管理控制器BMC固件与基本输入输出系统BIOS固件中的特定位置,并将BMC固件与BIOS固件分别烧录在该计算装置的主机板上的两块存储芯片中;
第一验证模块,用于当主机板上电自检时,验证所述两块存储芯片中的BMC固件与BIOS固件中的验证码是否一致;
第一触发模块,用于当验证码不一致时,触发主机板自动断电停机;及
第二触发模块,用于当验证码一致时,触发计算装置开机进入操作系统。
7.根据权利要求6所述的固件验证系统,其特征在于,该系统还包括:
第二验证模块,用于当计算装置的南桥芯片接收到主机板系统管理中断后,重复验证所述两块存储芯片中的BMC固件与BIOS的固件的验证码是否一致,若一致,则验证码验证成功,继续等待主机板系统管理中断并重复验证,若不一致,触发停止模块;
停止模块,用于当验证码验证失败时,停止该计算装置所有的输入与输出动作。
8.根据权利要求7所述的固件验证系统,其特征在于,所述停止模块还用于:当所述验证码验证失败时,触发报警器报警。
9.根据权利要求7所述的固件验证系统,其特征在于,所述主机板系统管理中断由该计算装置的时钟芯片定时产生的触发讯号触发产生。
10.根据权利要求6所述的固件验证系统,其特征在于,所述验证码为通过验证码产生器将基板管理控制器的版本号转换成的一组计算装置可以识别的编码。
CN201210202272.0A 2012-06-19 2012-06-19 固件验证方法及系统 Pending CN103514399A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210202272.0A CN103514399A (zh) 2012-06-19 2012-06-19 固件验证方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210202272.0A CN103514399A (zh) 2012-06-19 2012-06-19 固件验证方法及系统

Publications (1)

Publication Number Publication Date
CN103514399A true CN103514399A (zh) 2014-01-15

Family

ID=49897106

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210202272.0A Pending CN103514399A (zh) 2012-06-19 2012-06-19 固件验证方法及系统

Country Status (1)

Country Link
CN (1) CN103514399A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104809398A (zh) * 2015-04-21 2015-07-29 深圳怡化电脑股份有限公司 密码键盘引导程序固件防篡改方法及装置
CN104881105A (zh) * 2015-04-17 2015-09-02 英业达科技有限公司 电子装置
CN105446751A (zh) * 2014-06-27 2016-03-30 联想(北京)有限公司 一种信息处理方法及电子设备
CN109583212A (zh) * 2018-11-16 2019-04-05 郑州云海信息技术有限公司 一种基于Intel Whitley平台的固件文件保护方法与系统
CN110119330A (zh) * 2019-04-03 2019-08-13 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 云备份bios文件自动还原服务器biosrom方法
CN111742297A (zh) * 2019-07-23 2020-10-02 深圳市大疆创新科技有限公司 固件启动方法、设备及计算机可读存储介质
CN113761544A (zh) * 2020-06-02 2021-12-07 佛山市顺德区顺达电脑厂有限公司 服务器系统
CN115237429A (zh) * 2022-07-18 2022-10-25 江苏卓易信息科技股份有限公司 一种基于固件动态参数调整的云服务器测试验证方法
WO2023193351A1 (zh) * 2022-04-06 2023-10-12 浪潮(山东)计算机科技有限公司 一种服务器启动方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200506731A (en) * 2003-08-05 2005-02-16 Via Tech Inc Computer system with multiple basic input/output system (BIOS) memory blocks
US20050251673A1 (en) * 2004-05-05 2005-11-10 International Business Machines Corporation Updatable firmware having boot and/or communication redundancy
CN101645127A (zh) * 2009-06-17 2010-02-10 北京交通大学 一种建立基于efi的可信引导系统的方法
TW201025132A (en) * 2008-12-17 2010-07-01 Universal Scient Ind Co Ltd BIOS for self-verifying option ROM and the verifying method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200506731A (en) * 2003-08-05 2005-02-16 Via Tech Inc Computer system with multiple basic input/output system (BIOS) memory blocks
US20050251673A1 (en) * 2004-05-05 2005-11-10 International Business Machines Corporation Updatable firmware having boot and/or communication redundancy
TW201025132A (en) * 2008-12-17 2010-07-01 Universal Scient Ind Co Ltd BIOS for self-verifying option ROM and the verifying method thereof
CN101645127A (zh) * 2009-06-17 2010-02-10 北京交通大学 一种建立基于efi的可信引导系统的方法

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105446751A (zh) * 2014-06-27 2016-03-30 联想(北京)有限公司 一种信息处理方法及电子设备
CN105446751B (zh) * 2014-06-27 2019-04-23 联想(北京)有限公司 一种信息处理方法及电子设备
CN104881105A (zh) * 2015-04-17 2015-09-02 英业达科技有限公司 电子装置
CN104881105B (zh) * 2015-04-17 2017-09-22 英业达科技有限公司 电子装置
CN104809398A (zh) * 2015-04-21 2015-07-29 深圳怡化电脑股份有限公司 密码键盘引导程序固件防篡改方法及装置
CN109583212B (zh) * 2018-11-16 2021-11-02 郑州云海信息技术有限公司 一种基于Intel Whitley平台的固件文件保护方法与系统
CN109583212A (zh) * 2018-11-16 2019-04-05 郑州云海信息技术有限公司 一种基于Intel Whitley平台的固件文件保护方法与系统
CN110119330A (zh) * 2019-04-03 2019-08-13 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 云备份bios文件自动还原服务器biosrom方法
CN111742297A (zh) * 2019-07-23 2020-10-02 深圳市大疆创新科技有限公司 固件启动方法、设备及计算机可读存储介质
CN113761544A (zh) * 2020-06-02 2021-12-07 佛山市顺德区顺达电脑厂有限公司 服务器系统
WO2023193351A1 (zh) * 2022-04-06 2023-10-12 浪潮(山东)计算机科技有限公司 一种服务器启动方法、装置、设备及存储介质
CN115237429A (zh) * 2022-07-18 2022-10-25 江苏卓易信息科技股份有限公司 一种基于固件动态参数调整的云服务器测试验证方法
CN115237429B (zh) * 2022-07-18 2024-05-28 江苏卓易信息科技股份有限公司 一种基于固件动态参数调整的云服务器测试验证方法

Similar Documents

Publication Publication Date Title
CN103514399A (zh) 固件验证方法及系统
CN107122321B (zh) 硬件修复方法、硬件修复系统以及计算机可读取存储装置
TW201401098A (zh) 固件驗證方法及系統
CN107025406B (zh) 母板、计算机可读存储装置以及固件验证方法
US9361170B2 (en) Method for checking data consistency in a system on chip
CN107665308B (zh) 用于构建和保持可信运行环境的tpcm系统以及相应方法
CN107111595B (zh) 用于检测早期引导错误的方法、设备及系统
KR20090118863A (ko) 오퍼레이팅 시스템 메모리 핫 애드를 시뮬레이션하여 파워온 시간을 감소시키는 방법
CN104850792A (zh) 一种服务器信任链的构建方法和装置
CN110162435B (zh) 一种服务器pxe启动测试方法、系统、终端及存储介质
US20190033367A1 (en) System, Apparatus And Method For Functional Testing Of One Or More Fabrics Of A Processor
CN106919845B (zh) 系统安全信任链构建装置和构建方法
CN104750600A (zh) 设备状态记录方法和系统
US10061722B2 (en) Method to handle concurrent fatal events in a multicore execution environment
TW201527965A (zh) Bios調試偵測系統及方法
CN114003416B (zh) 内存错误动态处理方法、系统、终端及存储介质
CN116430962A (zh) 一种arm架构均衡计算型服务器框架系统
CN115168146A (zh) 一种异常检测方法和装置
CN104615521A (zh) 一种测试bmc蓝屏捕获功能的方法
US20160274984A1 (en) Information processing device and computer-readable recording medium
CN107315962A (zh) 一种嵌入式平台的可信处理模块
CN104572208A (zh) 一种保存tpm初始化log的方法
CN109710495A (zh) 一种信息处理方法及电子设备
JP2015130023A (ja) 情報記録装置、情報処理装置、情報記録方法、及び情報記録プログラム
US11775372B2 (en) Logging messages in a baseboard management controller using a co-processor

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20160630

Address after: 528437 Guangdong province Zhongshan Torch Development Zone, Cheung Hing Road 6 No. 222 north wing trade building room

Applicant after: Yun Chuan intellectual property Services Co., Ltd of Zhongshan city

Address before: 518109 Guangdong city of Shenzhen province Baoan District Longhua Town Industrial Zone tabulaeformis tenth East Ring Road No. 2 two

Applicant before: Hongfujin Precise Industry (Shenzhen) Co., Ltd.

Applicant before: Hon Hai Precision Industry Co., Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20140115