WO2022100014A1 - 一种系统启动控制方法、装置、设备及可读存储介质 - Google Patents

一种系统启动控制方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
WO2022100014A1
WO2022100014A1 PCT/CN2021/089877 CN2021089877W WO2022100014A1 WO 2022100014 A1 WO2022100014 A1 WO 2022100014A1 CN 2021089877 W CN2021089877 W CN 2021089877W WO 2022100014 A1 WO2022100014 A1 WO 2022100014A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
kernel
hash value
bmc
executable
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.)
Ceased
Application number
PCT/CN2021/089877
Other languages
English (en)
French (fr)
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.)
Suzhou Wave Intelligent Technology Co Ltd
Original Assignee
Suzhou Wave Intelligent Technology 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 Suzhou Wave Intelligent Technology Co Ltd filed Critical Suzhou Wave Intelligent Technology Co Ltd
Publication of WO2022100014A1 publication Critical patent/WO2022100014A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Definitions

  • the present invention relates to the technical field of information security, and in particular, to a system startup control method, apparatus, device and readable storage medium.
  • a server or switch has limited protection against insider attacks during the startup phase.
  • a key board-level firmware such as BMC (Baseboard Management Controller) is attacked during the system startup process, the system is often difficult to detect, let alone the defense measures against the attack.
  • BMC Baseboard Management Controller
  • the purpose of the present invention is to provide a system startup control method, apparatus, device and readable storage medium, which can perform security defense during system startup.
  • the present invention provides the following technical solutions:
  • a system startup control method comprising:
  • the executable kernel image is complete, including:
  • a reference image hash value including:
  • the reference image hash value is obtained.
  • the BMC original system kernel is compiled to generate the executable kernel image
  • the signature header is added before the executable kernel image to obtain the BMC kernel image.
  • the compiling of the BMC original system kernel to generate the executable kernel image includes:
  • the linux kernel image, the file system image and the device tree image are determined as the executable kernel image.
  • the signature header is added before the executable kernel image to obtain the BMC kernel image, including:
  • the BMC kernel image is obtained.
  • the obtaining of the reference image hash value ciphertext includes:
  • the reference image hash value is encrypted with a preset key to obtain the reference image hash value ciphertext.
  • a system startup control device comprising:
  • the kernel loading module is used to load the BMC kernel image to the memory during the system startup process
  • an image detection module configured to use the signature header to determine whether the executable kernel image is complete
  • a startup control module configured to stop starting the system if the executable kernel image is incomplete.
  • An electronic device comprising:
  • a readable storage medium storing a computer program on the readable storage medium, when the computer program is executed by a processor, implements the steps of the above-mentioned system startup control method.
  • the embodiments of the present invention also provide a system startup control apparatus, device, and readable storage medium corresponding to the foregoing system startup control method, which have the foregoing technical effects, and are not repeated here.
  • FIG. 1 is an implementation flowchart of a system startup control method in an embodiment of the present invention
  • FIG. 2 is a schematic diagram of generating a BMC kernel image in an embodiment of the present invention.
  • FIG. 3 is a schematic diagram of a kernel image verification in an embodiment of the present invention.
  • FIG. 4 is a schematic structural diagram of a system startup control device in an embodiment of the present invention.
  • FIG. 5 is a schematic structural diagram of an electronic device in an embodiment of the present invention.
  • FIG. 6 is a schematic diagram of a specific structure of an electronic device in an embodiment of the present invention.
  • FIG. 1 is a flowchart of a system startup control method according to an embodiment of the present invention.
  • the method can be applied to a system (or device) having BMC firmware, such as a server and a switch.
  • BMC firmware is a key component of a server or switch. It enables the upper-layer instructions to be transmitted to the hardware layer, and instructs the hardware layer to perform key operations such as power-on and power-off; when the device is powered on and starts running, that is, during the system startup process, the first The instructions are executed in the BMC firmware. It can be seen that the BMC firmware will be the first component to master the system controller, which plays a very important role in the security of the device. For example, if a corresponding backdoor program is set in the firmware, the important data information of the system can be obtained in a covert manner.
  • the system booting control method provided by the embodiments of the present invention can start with the most basic booting process to ensure that the key firmware in the device booting process is credible.
  • the method includes the following steps:
  • the system can be any system that has BMC and needs to effectively guarantee the security of data and information during the system startup process.
  • the BMC kernel image is the kernel image required for the BMC firmware to run. It should be noted that, in this embodiment of the present invention, the BMC kernel image specifically refers to having a signature header before the image.
  • S102 parse the system boot control BMC kernel image to obtain an executable kernel image and a signature header.
  • Parse the BMC kernel image that is, parse the executable kernel image and the signature header from the BMC kernel image according to the coding rules.
  • the signature header specifically includes information that can be used to verify whether the executable kernel image is complete, such as image size, creation time, load address, and a unique identifier corresponding to the executable kernel image (such as the hash value of the executable kernel image) at least one of the information.
  • the signature header can be used to determine whether the executable kernel image is complete. Specifically, if the signature header includes the image size, it can be determined whether the size of the executable kernel image is consistent with the size of the image, and if not, it is determined that the executable kernel image is incomplete; if the signature header includes the creation time, it can be determined Whether the creation time of the executable kernel image is consistent with the creation time in the signature header, if not, the executable kernel image is determined to be incomplete; if the signature header includes the kernel load address, the actual load address of the executable kernel image can be determined Whether it is consistent with the kernel load address, if not, it is determined that the executable kernel image is incomplete; if the signature header includes the unique identifier corresponding to the executable kernel image, and the unique identifier does not match the executable kernel image obtained by parsing , it can be determined that the executable kernel image is incomplete.
  • the executable kernel image is incomplete, it means that the executable kernel image may be incomplete due to malicious attacks and other applications. Continuing to start the system at this time may cause immeasurable losses. Therefore, in cases where it is determined that the executable kernel image is incomplete, the system can be stopped from booting.
  • the integrity of the executable kernel image of the BMC will be affected.
  • this method by adding a signature header to the BMC kernel image, during system startup, after the BMC kernel image is loaded, it is parsed to obtain an executable kernel image and a signature header. Then, the integrity of the executable kernel image is checked using the signature header. Stop booting the system when it is determined that the executable kernel image is incomplete. In this way, when the BMC is attacked, by detecting the integrity of the executable kernel image, when the integrity of the executable kernel image is detected, the system is stopped to start the system to prevent the data information of the system from being attacked, and malicious attacks can be effectively blocked during the system startup phase.
  • the embodiments of the present invention also provide corresponding improvement solutions.
  • the same steps or corresponding steps in the above-mentioned embodiments can be referred to each other, and corresponding beneficial effects can also be referred to each other, which will not be repeated in the preferred/improved embodiments herein.
  • step S103 uses the system boot control signature header to determine whether the system boot control executable kernel image is complete, including:
  • Step 1 Extract the reference image hash value from the system startup control signature header.
  • the reference image hash value is included in the signature header.
  • the hash value is the hash value, and the hash value of the reference image can be obtained by performing hash calculation (ie, hash value calculation) on the complete executable kernel image by using a hash algorithm.
  • step one can specifically include:
  • Step 1 Read the reference image hash value ciphertext from the system startup control signature header
  • Step 2 using the preset key to decrypt the ciphertext of the system startup control reference image hash value
  • Step 3 If the decryption fails, determine that the source of the system startup control BMC kernel image is untrustworthy, and stop the startup of the system startup control system;
  • Step 4 If the decryption is successful, the system startup control reference image hash value is obtained.
  • the hash value of the reference image can also be encrypted and stored in the signature header, and whether the source of the BMC kernel image is credible can be determined through decryption. Specifically, if the ciphertext of the reference image hash value cannot be decrypted by using the preset key, it means that the source of the BMC kernel image is untrustworthy. In this case, the system can be stopped and started directly to avoid system security caused by the untrusted source of the BMC kernel image. being threatened. Of course, in the case of successful decryption, the reference image hash value can be obtained. It should be noted that the preset keys for encrypting and decrypting the reference image hash value should correspond.
  • the specific form of the preset key is not limited.
  • Step 2 Calculating the hash value of the executable kernel image of the system boot control to obtain the actual image hash value.
  • the hash value of the executable kernel image can be calculated to obtain the actual image hash value.
  • the reference image hash value is the result of hash value calculation for the complete executable kernel image
  • the actual image hash value is the hash value calculated for the parsed executable kernel image. the result of.
  • the algorithm used to calculate the reference image hash value and the actual image hash value should be the same algorithm, for example, the SHA1 algorithm (Secure Hash Algorithm, a secure hash algorithm) can be used for calculation.
  • Step 3 If the hash value of the system boot control reference image is consistent with the actual image hash value of the system boot control, it is determined that the system boot control executable kernel image is complete.
  • the executable kernel image is incomplete, which may be specific to the fact that the executable kernel image is relative to the normal executable kernel image, including but not limited to the existence of deletions, additions, modifications, etc. resulting in and registration of the kernel image. different situations.
  • the specific implementation process of generating the BMC kernel image includes:
  • Step 1 Compile the BMC original system kernel when the system boot control system is in a running state to generate a system boot control executable kernel image.
  • the original system kernel of the BMC needs to be compiled to generate an executable kernel image.
  • system boot control compiles the original BMC system kernel to generate the system boot control executable kernel image, which may include:
  • Step 1 Compile the original system kernel of the system boot control BMC to generate a linux kernel image, a file system image and a device tree image;
  • Step 2 Determine the system boot control linux kernel image, the system boot control file system image and the system boot control device tree image as the system boot control executable kernel image.
  • the executable kernel image specifically includes a linux kernel image, a file system image, and a device tree image.
  • the specific process of how to compile the BMC original system kernel to obtain the linux kernel image, file system image and device tree image please refer to the image compilation and generation rules and implementation, which will not be repeated here.
  • Step 2 adding a system boot control signature header before the system boot control executable kernel image to obtain the system boot control BMC kernel image.
  • the BMC kernel image not only includes the executable kernel image, but also includes a signature header, and the signature header is located before the executable kernel image.
  • step 2 may specifically include:
  • Step 1 Obtain the reference image hash value ciphertext, creation time, image size and kernel load address.
  • the reference image hash value ciphertext, creation time, image size, and kernel load address all correspond to the normal executable kernel image. If it is determined that the two do not correspond, it can be determined that the executable kernel image is incomplete.
  • the reference image hash value ciphertext is the ciphertext obtained by encrypting with reference to the image hash value.
  • the system startup control obtains the reference image hash value ciphertext, which can specifically include:
  • Step 1.1 using the secure hash algorithm to calculate the hash value of the system boot control executable kernel image to obtain the reference image hash value;
  • Step 1.2 Encrypt the hash value of the system startup control reference image by using the preset key to obtain the ciphertext of the system startup control reference image hash value.
  • the SHA1 algorithm (a secure hash algorithm) can be used to perform scattered calculations on the executable kernel image to obtain a reference image hash value. Then, the reference image hash value is signed (ie, encrypted) by using the RSA algorithm (an asymmetric key) corresponding to the private key, and the encrypted (or called as signed) reference image hash value ciphertext is obtained.
  • the RSA algorithm an asymmetric key
  • Step 2 Determine the system startup control creation time, the system startup control image size, the system startup control kernel load address, and the system startup control reference image hash value ciphertext as the system startup control signature header.
  • the signature header may include the creation time, the size of the system boot control image, the load address of the system boot control kernel, and the ciphertext of the hash value of the system boot control reference image.
  • Step 3 before adding the system boot control signature header to the system boot control executable kernel image to obtain the system boot control BMC kernel image.
  • the BMC kernel image includes a signature header and an executable kernel image.
  • system startup control method is described in detail below with reference to a specific application scenario as an example.
  • the BMC kernel layer mainly includes two modules: U_Boot (Universal Boot Loader, universal boot loader) and the operating system kernel.
  • U_Boot is the first execution code after the BMC is powered on. Its main functions include closing the watchdog, initializing the SDRAM (Synchronous Dynamic Random Access Memory, synchronous dynamic random access memory), reading Flash (Flash Memory, flash memory), and starting the operating system kernel, etc.; after using the system startup control method provided by the embodiment of the present invention, it can be based on the original function of U_Boot.
  • Added the BMC kernel verification module to implement the kernel image integrity verification function in the startup phase to ensure the reliability of the system startup.
  • a signature header is added in front of the original executable linux kernel image zImage.
  • the signature header includes its own signature information, header check value, creation time, image size and other parameters. U_Boot will obtain the signature when loading the linux kernel. Header, by checking the signature header to determine whether the image is corrupted.
  • FIG. 2 is a schematic diagram of generating a BMC kernel image in an embodiment of the present invention
  • FIG. 3 is a schematic diagram of a kernel image verification in an embodiment of the present invention.
  • the BMC kernel image generation process includes:
  • the image content includes linux kernel image, file system image, and device tree image.
  • V-sha1 is signed with the private key, and the original image hash value RV-sha1 after the signature is obtained (that is, the ciphertext of the reference image hash value).
  • the verification process to the kernel image i.e. U_Boot verification BMC kernel image mainly includes the following steps:
  • the RSA public key can be input by the BMC administrator through the terminal, and of course can also be directly read from the storage medium. If it is input by the BMC administrator through the terminal, according to the characteristics of the RSA asymmetric encryption algorithm, if the public key input by the BMC administrator can complete the decryption, it means that the RV-sha1 information in the image header is credible, and the V-sha1 information can be decrypted at the same time. sha1; if the decryption fails, the source of the image is invalid, the BMC kernel image is untrustworthy, and the failure operation is performed (that is, the system is stopped and started). In particular, when the decryption fails, the decryption can be performed again until the preset number of decryption times, such as 3 times, can be determined, and the failure operation can be performed.
  • the detection of the BMC kernel image in the U-Boot stage will detect the risk of malicious tampering or destruction of the kernel image in advance to the greatest extent, and provide corresponding processing mechanism to prevent more serious damage.
  • the rigor and integrity of the BMC kernel encryption and verification process That is, through the verification of the BMC kernel image in the U-Boot stage, the integrity of the system startup can be improved, and serious failures caused by firmware attacks during the startup process can be avoided, which is of great help in improving the overall security of the product.
  • the embodiments of the present invention further provide a system startup control device, and the system startup control device described below and the system startup control method described above can refer to each other correspondingly.
  • the device includes the following modules:
  • the kernel loading module 101 is used to load the BMC kernel image to the memory during the system startup process
  • the kernel parsing module 102 is used for parsing the system boot control BMC kernel image to obtain an executable kernel image and a signature header;
  • the image detection module 103 is configured to use the system boot control signature header to determine whether the system boot control executable kernel image is complete;
  • the boot control module 104 is configured to stop booting the system boot control system if the system boot control executable kernel image is incomplete.
  • the integrity of the executable kernel image of the BMC will be affected.
  • this device by adding a signature header to the BMC kernel image, during system startup, after the BMC kernel image is loaded, it is parsed to obtain an executable kernel image and a signature header. Then, the integrity of the executable kernel image is checked using the signature header. Stop booting the system when it is determined that the executable kernel image is incomplete. In this way, when the BMC is attacked, by detecting the integrity of the executable kernel image, when the integrity of the executable kernel image is detected, the system is stopped to start the system to prevent the data information of the system from being attacked, and malicious attacks can be effectively blocked during the system startup phase.
  • the image detection module 103 is specifically configured to extract the reference image hash value from the system boot control signature header; perform hash value calculation on the system boot control executable kernel image to obtain Actual image hash value; if the system boot control reference image hash value is consistent with the system boot control actual image hash value, it is determined that the system boot control executable kernel image is complete.
  • the image detection module 103 is specifically configured to read the ciphertext of the reference image hash value from the header of the system startup control signature; use the preset key to detect the reference image of the system startup control
  • the hash value ciphertext is decrypted; if the decryption fails, it is determined that the source of the system boot control BMC kernel image is untrustworthy, and the system boot control system is stopped; if the decryption succeeds, the system boot control reference image hash value is obtained.
  • a BMC kernel image compiling module for compiling the BMC original system kernel when the system startup control system is in a running state before the system startup control system is started this time, The system boot control executable kernel image is generated; the system boot control signature header is added before the system boot control executable kernel image to obtain the system boot control BMC kernel image.
  • the BMC kernel image compilation module is specifically used to compile the system boot control BMC original system kernel to generate a linux kernel image, a file system image and a device tree image; the system boot control linux kernel The image, the system boot control file system image and the system boot control device tree image are determined as the system boot control executable kernel image.
  • the BMC kernel image compilation module is specifically used to obtain the reference image hash value ciphertext, creation time, image size and kernel load address; system startup control creation time, system startup control image
  • the size, the system boot control kernel load address, and the ciphertext of the system boot control reference image hash value are determined as the system boot control signature header; the system boot control signature header is added before the system boot control executable kernel image, and the system boot control is obtained.
  • BMC kernel image is specifically used to obtain the reference image hash value ciphertext, creation time, image size and kernel load address; system startup control creation time, system startup control image
  • the size, the system boot control kernel load address, and the ciphertext of the system boot control reference image hash value are determined as the system boot control signature header; the system boot control signature header is added before the system boot control executable kernel image, and the system boot control is obtained.
  • the BMC kernel image compiling module is specifically used to calculate the hash value of the system boot control executable kernel image by using the secure hash algorithm to obtain the reference image hash value;
  • the key encrypts the hash value of the system startup control reference image to obtain the ciphertext of the system startup control reference image hash value.
  • the embodiments of the present invention further provide an electronic device, and an electronic device described below and a system startup control method described above may refer to each other correspondingly.
  • the electronic device includes:
  • memory 332 for storing computer programs
  • the processor 322 is configured to implement the steps of the system startup control method of the above method embodiment when executing the computer program.
  • FIG. 6 is a schematic diagram of a specific structure of an electronic device provided in this embodiment.
  • the electronic device may have relatively large differences due to different configurations or performances, and may include one or more processors. units, CPU) 322 (eg, one or more processors) and memory 332 that stores one or more computer applications 342 or data 344 .
  • the memory 332 may be short-lived storage or persistent storage.
  • the programs stored in memory 332 may include one or more modules (not shown), each of which may include a series of instructions to operate on a data processing device.
  • the central processing unit 322 may be configured to communicate with the memory 332 to execute a series of instruction operations in the memory 332 on the electronic device 301 .
  • Electronic device 301 may also include one or more power supplies 326 , one or more wired or wireless network interfaces 350 , one or more input output interfaces 358 , and/or, one or more operating systems 341 .
  • the steps in the system startup control method described above can be implemented by the structure of the electronic device.
  • the embodiments of the present invention further provide a readable storage medium, and a readable storage medium described below and a system startup control method described above may refer to each other correspondingly.
  • a readable storage medium on which a computer program is stored, and when the computer program is executed by a processor, implements the steps of the system startup control method of the above method embodiment.
  • the readable storage medium may specifically be a USB flash drive, a removable hard disk, a read-only memory (Read-Only Memory, ROM), a random access memory (Random Access Memory, RAM), a magnetic disk or an optical disk, etc. Readable storage medium.

Landscapes

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

Abstract

一种系统启动控制方法、装置、设备及可读存储介质,该方法包括:在系统启动过程中,加载BMC内核镜像至内存;解析BMC内核镜像,得到可执行内核镜像和签名头部;利用签名头部,确定可执行内核镜像是否完整;若可执行内核镜像不完整,则停止启动系统。该方法在BMC遭受攻击的情况下,通过检测可执行内核镜像的完整性,在检测出不完整时,停止启动系统来避免系统的数据信息遭受攻击,能够在系统启动阶段有效阻拦恶意攻击。

Description

一种系统启动控制方法、装置、设备及可读存储介质
本申请要求于2020年11月11日提交中国专利局、申请号为202011256577.0、发明名称为“一种系统启动控制方法、装置、设备及可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及信息安全技术领域,特别是涉及一种系统启动控制方法、装置、设备及可读存储介质。
背景技术
随着信息技术的迅速发展,各行各业在享受信息技术带来诸多便利的同时,其背后也伴随着层出不穷的信息安全问题。享受信息时代的高效便捷及其创造的巨大利益的同时,同样受到信息安全的困扰。现在各种类型的物理服务器、白盒交换机已经广泛布置于各大数据中心,为医疗、教育、通讯等不同领域提供计算和存储能力。
但是,服务器或交换机在启动阶段其对于内部攻击所采取的防范能力十分有限。例如,在系统启动过程中对BMC(Baseboard Management Controller,基板管理控制器)这种关键的板级固件进行攻击,系统往往很难察觉,更谈不上对攻击的防御措施了。
综上所述,如何有效地解决系统启动过程中的安全防御等问题,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种系统启动控制方法、装置、设备及可读存储介质,能够在系统启动过程中进行安全防御。
为解决上述技术问题,本发明提供如下技术方案:
一种系统启动控制方法,包括:
在系统启动过程中,加载BMC内核镜像至内存;
解析所述BMC内核镜像,得到可执行内核镜像和签名头部;
利用所述签名头部,确定所述可执行内核镜像是否完整;
若所述可执行内核镜像不完整,则停止启动所述系统。
优选地,利用所述签名头部,确定所述可执行内核镜像是否完整,包括:
从所述签名头部中,提取参考镜像散列值;
对所述可执行内核镜像进行散列值计算,得到实际镜像散列值;
若所述参考镜像散列值和所述实际镜像散列值一致,则确定所述可执行内核镜像完整。
优选地,从所述签名头部中,提取参考镜像散列值,包括:
从所述签名头部中读取出参考镜像散列值密文;
利用预设密钥,对所述参考镜像散列值密文进行解密;
若解密失败,则确定所述BMC内核镜像的来源不可信,停止启动所述系统;
若解密成功,则得到所述参考镜像散列值。
优选地,在本次启动所述系统之前,还包括:
在所述系统处于运行状态下,对BMC原始系统内核进行编译,生成所述可执行内核镜像;
在所述可执行内核镜像前增加所述签名头部,得到所述BMC内核镜像。
优选地,所述对BMC原始系统内核进行编译,生成所述可执行内核镜像,包括:
对所述BMC原始系统内核进行编译,生成linux内核镜像、文件系统镜像和设备树镜像;
将所述linux内核镜像、所述文件系统镜像和所述设备树镜像确定为所述可执行内核镜像。
优选地,在所述可执行内核镜像前增加所述签名头部,得到所述BMC内核镜像,包括:
获取参考镜像散列值密文、创建时间、镜像大小和内核加载地址;
将所述创建时间、所述镜像大小、所述内核加载地址以及所述参考镜像散列值密文确定为所述签名头部;
将所述签名头部添加至所述可执行内核镜像前,得到所述BMC内核镜像。
优选地,所述获取参考镜像散列值密文,包括:
利用安全哈希算法对所述可执行内核镜像进行散列值计算,得到参考镜像散列值;
利用预设密钥对所述参考镜像散列值进行加密,得到所述参考镜像散列值密文。
一种系统启动控制装置,包括:
内核加载模块,用于在系统启动过程中,加载BMC内核镜像至内存;
内核解析模块,用于解析所述BMC内核镜像,得到可执行内核镜像和签名头部;
镜像检测模块,用于利用所述签名头部,确定所述可执行内核镜像是否完整;
启动控制模块,用于若所述可执行内核镜像不完整,则停止启动所述系统。
一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述系统启动控制方法的步骤。
一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述系统启动控制方法的步骤。
应用本发明实施例所提供的方法,在系统启动过程中,加载BMC内核镜像至内存;解析系统启动控制BMC内核镜像,得到可执行内核镜像和签名头部;利用系统启动控制签名头部,确定系统启动控制可执行内核镜像是否完整;若系统启动控制可执行内核镜像不完整,则停止启动系统启动控制系统。
考虑到,在BMC遭受攻击后,会影响BMC的可执行内核镜像的完整性。 基于此,在本方法中,通过在BMC内核镜像中增设签名头部,在系统启动过程中,加载了BMC内核镜像之后,对其进行解析,得到可执行内核镜像和签名头部。然后,利用签名头部对可执行内核镜像的完整进行检测。在确定可执行内核镜像不完整的情况下,停止启动系统。如此,在BMC遭受攻击的情况下,通过检测可执行内核镜像的完整性,在检测出不完整时,停止启动系统来避免系统的数据信息遭受攻击,能够在系统启动阶段有效阻拦恶意攻击。
相应地,本发明实施例还提供了与上述系统启动控制方法相对应的系统启动控制装置、设备和可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种系统启动控制方法的实施流程图;
图2为本发明实施例中一种BMC内核镜像生成示意图;
图3为本发明实施例中一种内核镜像验证示意图;
图4为本发明实施例中一种系统启动控制装置的结构示意图;
图5为本发明实施例中一种电子设备的结构示意图;
图6为本发明实施例中一种电子设备的具体结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本 领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例中一种系统启动控制方法的流程图,该方法可应用于具有BMC固件的系统(或称设备)中,如服务器、交换机等。
BMC固件是服务器或交换机的关键组成部分,它能够使得上层的指令传输到硬件层,并指挥硬件层进行上下电等关键操作;当设备通电并开始运行时,即系统启动过程中,系统首条指令就是在BMC固件中执行。可见BMC固件将是最早掌握系统控制器的部件,其对于设备的安全起到非常重要的作用。举例说明,假设在固件中设定相应的后门程序,便能够以一种隐蔽的方式获取系统的重要数据信息。
基于此,为了解决具有BMC固件的系统的安全启动问题,本发明实施例所提供的系统启动控制方法可从最基本的启动过程入手,确保设备启动过程中的关键固件是可信的。该方法包括以下步骤:
S101、在系统启动过程中,加载BMC内核镜像至内存。
其中,系统可以为具有BMC,且需要在系统启动过程中对数据信息安全进行有效保障的任意一个系统。
其中,BMC内核镜像即BMC固件运行所需的内核镜像。需要注意的是,在本发明实施例中,BMC内核镜像具体指镜像前具有签名头部。
S102、解析系统启动控制BMC内核镜像,得到可执行内核镜像和签名头部。
解析BMC内核镜像,即按照编码规则,从BMC内核镜像中解析出可执行内核镜像以及签名头部。
其中,签名头部具体包括能够用于验证可执行内核镜像是否完整的信息,例如镜像大小、创建时间、加载地址、以及可执行内核镜像对应的唯一标识(如可执行内核镜像的散列值)中的至少一种信息。
S103、利用系统启动控制签名头部,确定系统启动控制可执行内核镜像是否完整。
解析出签名头部和可执行内核镜像之后,便可利用该签名头部确定可 执行内核镜像是否完整。具体的,若签名头部包括镜像大小,则可判断可执行内核镜像的大小与该镜像大小是否一致,如果不一致,则确定可执行内核镜像不完整;若签名头部包括创建时间,则可判断可执行内核镜像的创建时间与签名头部中的创建时间是否一致,如果不一致,则确定可执行内核镜像不完整;若签名头部包括内核加载地址,则可判断可执行内核镜像的实际加载地址与该内核加载地址是否一致,如果不一种,则确定可执行内核镜像不完整;若签名头部包括可执行内核镜像对应的唯一标识,而该唯一标识与解析得到的可执行内核镜像不匹配,则可确定可执行内核镜像不完整。
S104、若系统启动控制可执行内核镜像不完整,则停止启动系统启动控制系统。
若可执行内核镜像不完整,则表明该可执行内核镜像可能因遭受恶意攻击等应用导致其不完整,此时继续启动系统,可能会造成不可估量的损失。因此,在确定可执行内核镜像不完整的情况下,可停止启动系统。
应用本发明实施例所提供的方法,在系统启动过程中,加载BMC内核镜像至内存;解析系统启动控制BMC内核镜像,得到可执行内核镜像和签名头部;利用系统启动控制签名头部,确定系统启动控制可执行内核镜像是否完整;若系统启动控制可执行内核镜像不完整,则停止启动系统启动控制系统。
考虑到,在BMC遭受攻击后,会影响BMC的可执行内核镜像的完整性。基于此,在本方法中,通过在BMC内核镜像中增设签名头部,在系统启动过程中,加载了BMC内核镜像之后,对其进行解析,得到可执行内核镜像和签名头部。然后,利用签名头部对可执行内核镜像的完整进行检测。在确定可执行内核镜像不完整的情况下,停止启动系统。如此,在BMC遭受攻击的情况下,通过检测可执行内核镜像的完整性,在检测出不完整时,停止启动系统来避免系统的数据信息遭受攻击,能够在系统启动阶段有效阻拦恶意攻击。
需要说明的是,基于上述实施例,本发明实施例还提供了相应的改进 方案。在优选/改进实施例中涉及与上述实施例中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在本文的优选/改进实施例中不再一一赘述。
在本发明的一种具体实施方式中,步骤S103利用系统启动控制签名头部,确定系统启动控制可执行内核镜像是否完整,包括:
步骤一、从系统启动控制签名头部中,提取参考镜像散列值。
即,在签名头部包括参考镜像散列值。散列值即哈希值,可采用哈希算法在对完整的可执行内核镜像进行哈希计算(即散列值计算),而得到的参考镜像散列值。
进一步地,步骤一可具体包括:
步骤1、从系统启动控制签名头部中读取出参考镜像散列值密文;
步骤2、利用预设密钥,对系统启动控制参考镜像散列值密文进行解密;
步骤3、若解密失败,则确定系统启动控制BMC内核镜像的来源不可信,停止启动系统启动控制系统;
步骤4、若解密成功,则得到系统启动控制参考镜像散列值。
对于参考镜像散列值还可采用加密方式存储在签名头部,并且可以通过解密情况,确定BMC内核镜像的来源是否可信。具体的,若采用预设密钥无法解密参考镜像散列值密文,则说明BMC内核镜像的来源不可信,此时可直接停止启动系统,以避免因来源不可信的BMC内核镜像导致系统安全受到威胁。当然,在解密成功的情况下,便可得到参考镜像散列值。需要注意的是,对参考镜像散列值进行加密和解密的预设密钥应当对应。例如,若采用对称密钥,则加密和解密均采用同一个密钥;若采用非对称密钥,则加密和加密分别采用对应的公钥和私钥。在本实施例中,对预设密钥的具体形式不作限定。
步骤二、对系统启动控制可执行内核镜像进行散列值计算,得到实际镜像散列值。
在解析得到可执行内核镜像之后,可对可执行内核镜像进行散列值计算,得到实际镜像散列值。需要注意的是,参考镜像散列值即为针对完整的可执行内核镜像进行散列值计算得到的结果,而实际镜像散列值即为针 对解析出的可执行内核镜像进行散列值计算得到的结果。计算参照镜像散列值和计算实际镜像散列值所用的算法应当为同一算法,例如可采用SHA1算法(Secure Hash Algorithm,一种安全哈希算法)进行计算。
步骤三、若系统启动控制参考镜像散列值和系统启动控制实际镜像散列值一致,则确定系统启动控制可执行内核镜像完整。
若参考镜像散列值与实际镜像散列值一致,基于散列计算特性,则可确定解析得到可执行内核镜像是完整的。相应地,若参考镜像散列值与实际镜像散列值不一致,则可确定解析得到的可执行内核镜像不是完整。需要注意的是,在本实施例中可执行内核镜像不完整,可具体为可执行内核镜像相对于正常可执行内核镜像而言,包括但不限于存在缺失、增加、修改等导致与注册内核镜像不同的情况。
在本发明的一种具体实施方式中,在本次启动系统启动控制系统之前,即执行步骤S101之前,生成BMC内核镜像的具体实现过程,包括:
步骤一、在系统启动控制系统处于运行状态下,对BMC原始系统内核进行编译,生成系统启动控制可执行内核镜像。
也就是说,系统再次启动之前,在处于运行状态下,需对BMC原始系统内核进行编译,生成可执行内核镜像。
其中,系统启动控制对BMC原始系统内核进行编译,生成系统启动控制可执行内核镜像,可包括:
步骤1、对系统启动控制BMC原始系统内核进行编译,生成linux内核镜像、文件系统镜像和设备树镜像;
步骤2、将系统启动控制linux内核镜像、系统启动控制文件系统镜像和系统启动控制设备树镜像确定为系统启动控制可执行内核镜像。
也就是说,可执行内核镜像具体包括linux内核镜像、文件系统镜像和设备树镜像。对于如何对BMC原始系统内核进行编译,得到linux内核镜像、文件系统镜像和设备树镜像的具体过程,可参照镜像编译生成规则与实现,在此不再一一赘述。
步骤二、在系统启动控制可执行内核镜像前增加系统启动控制签名头 部,得到系统启动控制BMC内核镜像。
相较于相关技术中可执行内核镜像即为BMC内核镜像不同,本发明实施例中,BMC内核镜像不仅包括可执行内核镜像,还包括签名头部,且该签名头部位于可执行内核镜像前。
在实际应用中,上述步骤二可具体包括:
步骤1、获取参考镜像散列值密文、创建时间、镜像大小和内核加载地址。
其中,参考镜像散列值密文、创建时间、镜像大小和内核加载地址均与正常的可执行内核镜像对应,在确定二者不对应的情况下,可确定可执行内核镜像不完整。
其中,参考镜像散列值密文即参考镜像散列值进行加密所得密文。系统启动控制获取参考镜像散列值密文,可具体包括:
步骤1.1、利用安全哈希算法对系统启动控制可执行内核镜像进行散列值计算,得到参考镜像散列值;
步骤1.2、利用预设密钥对系统启动控制参考镜像散列值进行加密,得到系统启动控制参考镜像散列值密文。
举例说明,可以采用SHA1算法(一种安全哈希算法)对可执行内核镜像进行散落在计算,得到参考镜像散列值。然后,采用RSA算法(一种非对称密钥)对应私钥对参考镜像散列值进行签名(即加密),得到加密后的(或称为签名后的)参考镜像散列值密文。
步骤2、将系统启动控制创建时间、系统启动控制镜像大小、系统启动控制内核加载地址以及系统启动控制参考镜像散列值密文确定为系统启动控制签名头部。
即签名头部可包括创建时间、系统启动控制镜像大小、系统启动控制内核加载地址以及系统启动控制参考镜像散列值密文。
步骤3、将系统启动控制签名头部添加至系统启动控制可执行内核镜像前,得到系统启动控制BMC内核镜像。
即,BMC内核镜像包括签名头部和可执行内核镜像。
为便于本领域技术人员更好地理解本发明实施例所提供的系统启动控制方法,下面结合具体的应用场景为例,对系统启动控制方法进行详细说明。
BMC内核层主要包括U_Boot(Universal Boot Loader,通用引导加载程序)以及操作系统内核两个模块,其中U_Boot作为BMC上电后的第一段执行代码,主要功能包括关闭看门狗、初始化SDRAM(Synchronous Dynamic Random Access Memory,同步动态随机存储器)、读取Flash(Flash Memory,闪存)以及启动操作系统内核等;采用本发明实施例所提供的系统启动控制方法后,可在U_Boot原有功能的基础上增加BMC内核校验模块,实现启动阶段的内核镜像完整性校验功能,确保系统启动的可信性。
在原来的可执linux内核镜像zImage的前面增加一个签名头部,签名头部包括自身的签名信息、头部校验值、创建时间、镜像大小等参数,U_Boot在加载linux内核时会获取该签名头部,通过对签名头部的检测确定镜像是否遭到破坏。
具体的,请参考图2和图3,其中图2为本发明实施例中一种BMC内核镜像生成示意图,图3为本发明实施例中一种内核镜像验证示意图。
其中,采用了本发明实施例所提供的系统启动控制方法后,BMC内核镜像生成过程,包括:
1、首先对BMC原始系统内核进行编译,生成原始系统镜像zImage(即可执行内核镜像),镜像内容包括linux内核镜像、文件系统镜像、设备树镜像。
2、通过SHA1算法对原始系统镜像进行散列计算,得到原始镜像的散列值V-sha1(即参考镜像散列值)。
3、通过RSA算法,利用私钥对V-sha1进行签名,得到签名后的原始镜像散列值RV-sha1(即参考镜像散列值密文)。
4、最后将RV-sha1、镜像创建时间、镜像大小、加载地址等信息(即签名头部)与原始系统镜像zImage整合生成新的镜像(即BMC内核镜像)。
其中,采用了本发明实施例所提供的系统启动控制方法后,系统启动过程,对内核镜像的验证过程,即U_Boot验证BMC内核镜像主要包括以下 几个步骤:
1、将BMC内核镜像加载到内存中,之后根据镜像头部信息,解析出RV-sha1和原始镜像zImage。
2、利用RSA公钥来对RV-sha1进行解密。
其中,RSA公钥可以具体为BMC管理员通过终端输入,当然也可从存储介质中直接读取得到。若为BMC管理员通过终端输入,根据RSA非对称加密算法的特性,如果BMC管理员输入的公钥能够完成解密,那说明该镜像头部中RV-sha1信息可信,同时可以解密得到V-sha1;若解密失败,则说明镜像来源不合法,BMC内核镜像不可信,执行失败操作(即停止启动系统)。特别地,在解密失败时,还可再次进行解密,直到到达预设解密次数,如3次,则可确定解密失败而执行失败操作。
3、对解析出的zImage原始镜像,采用相同的HAS1算法进行散列计算,重新获取原始镜像的散列值(即实际镜像散列值),并与V-sha1进行对比;若两者相等,说明可执行内核镜像内容是完整的,因此可以确定整个BMC内核镜像的来源真实,内容完整;如果两者不相等,则说明镜像遭到篡改,自然就不具备完整性特征,执行失败操作。
由此可见,本发明实施例所提供的系统启动控制方法,在实际应用中,U-Boot阶段的BMC内核镜像检测,会最大限度提前发现内核镜像的恶意篡改或破坏风险,并提供对应的处理机制,防止产生更严重破坏。BMC内核加密以及校验过程的严谨性和完整性。即,通过U-Boot阶段对BMC内核镜像的校验,提高系统启动的完整性,避免启动过程中的固件攻击而造成的严重故障,对提升产品整体的安全性具有很大的帮助。
相应于上面的方法实施例,本发明实施例还提供了一种系统启动控制装置,下文描述的系统启动控制装置与上文描述的系统启动控制方法可相互对应参照。
参见图4所示,该装置包括以下模块:
内核加载模块101,用于在系统启动过程中,加载BMC内核镜像至内存;
内核解析模块102,用于解析系统启动控制BMC内核镜像,得到可执行内核镜像和签名头部;
镜像检测模块103,用于利用系统启动控制签名头部,确定系统启动控制可执行内核镜像是否完整;
启动控制模块104,用于若系统启动控制可执行内核镜像不完整,则停止启动系统启动控制系统。
应用本发明实施例所提供的装置,在系统启动过程中,加载BMC内核镜像至内存;解析系统启动控制BMC内核镜像,得到可执行内核镜像和签名头部;利用系统启动控制签名头部,确定系统启动控制可执行内核镜像是否完整;若系统启动控制可执行内核镜像不完整,则停止启动系统启动控制系统。
考虑到,在BMC遭受攻击后,会影响BMC的可执行内核镜像的完整性。基于此,在本装置中,通过在BMC内核镜像中增设签名头部,在系统启动过程中,加载了BMC内核镜像之后,对其进行解析,得到可执行内核镜像和签名头部。然后,利用签名头部对可执行内核镜像的完整进行检测。在确定可执行内核镜像不完整的情况下,停止启动系统。如此,在BMC遭受攻击的情况下,通过检测可执行内核镜像的完整性,在检测出不完整时,停止启动系统来避免系统的数据信息遭受攻击,能够在系统启动阶段有效阻拦恶意攻击。
在本发明的一种具体实施方式中,镜像检测模块103,具体用于从系统启动控制签名头部中,提取参考镜像散列值;对系统启动控制可执行内核镜像进行散列值计算,得到实际镜像散列值;若系统启动控制参考镜像散列值和系统启动控制实际镜像散列值一致,则确定系统启动控制可执行内核镜像完整。
在本发明的一种具体实施方式中,镜像检测模块103,具体用于从系统启动控制签名头部中读取出参考镜像散列值密文;利用预设密钥,对系统启动控制参考镜像散列值密文进行解密;若解密失败,则确定系统启动控制BMC内核镜像的来源不可信,停止启动系统启动控制系统;若解密成功,则得到系统启动控制参考镜像散列值。
在本发明的一种具体实施方式中,还包括:BMC内核镜像编译模块,用于在本次启动系统启动控制系统之前,在系统启动控制系统处于运行状态下,对BMC原始系统内核进行编译,生成系统启动控制可执行内核镜像;在系统启动控制可执行内核镜像前增加系统启动控制签名头部,得到系统启动控制BMC内核镜像。
在本发明的一种具体实施方式中,BMC内核镜像编译模块,具体用于对系统启动控制BMC原始系统内核进行编译,生成linux内核镜像、文件系统镜像和设备树镜像;将系统启动控制linux内核镜像、系统启动控制文件系统镜像和系统启动控制设备树镜像确定为系统启动控制可执行内核镜像。
在本发明的一种具体实施方式中,BMC内核镜像编译模块,具体用于获取参考镜像散列值密文、创建时间、镜像大小和内核加载地址;将系统启动控制创建时间、系统启动控制镜像大小、系统启动控制内核加载地址以及系统启动控制参考镜像散列值密文确定为系统启动控制签名头部;将系统启动控制签名头部添加至系统启动控制可执行内核镜像前,得到系统启动控制BMC内核镜像。
在本发明的一种具体实施方式中,BMC内核镜像编译模块,具体用于利用安全哈希算法对系统启动控制可执行内核镜像进行散列值计算,得到参考镜像散列值;利用预设密钥对系统启动控制参考镜像散列值进行加密,得到系统启动控制参考镜像散列值密文。
相应于上面的方法实施例,本发明实施例还提供了一种电子设备,下文描述的一种电子设备与上文描述的一种系统启动控制方法可相互对应参照。
参见图5所示,该电子设备包括:
存储器332,用于存储计算机程序;
处理器322,用于执行计算机程序时实现上述方法实施例的系统启动控制方法的步骤。
具体的,请参考图6,为本实施例提供的一种电子设备的具体结构示意 图,该电子设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,存储器332存储有一个或一个以上的计算机应用程序342或数据344。其中,存储器332可以是短暂存储或持久存储。存储在存储器332的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储器332通信,在电子设备301上执行存储器332中的一系列指令操作。
电子设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341。
上文所描述的系统启动控制方法中的步骤可以由电子设备的结构实现。
相应于上面的方法实施例,本发明实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种系统启动控制方法可相互对应参照。
一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的系统启动控制方法的步骤。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是 这种实现不应认为超出本发明的范围。

Claims (10)

  1. 一种系统启动控制方法,其特征在于,包括:
    在系统启动过程中,加载BMC内核镜像至内存;
    解析所述BMC内核镜像,得到可执行内核镜像和签名头部;
    利用所述签名头部,确定所述可执行内核镜像是否完整;
    若所述可执行内核镜像不完整,则停止启动所述系统。
  2. 根据权利要求1所述的系统启动控制方法,其特征在于,利用所述签名头部,确定所述可执行内核镜像是否完整,包括:
    从所述签名头部中,提取参考镜像散列值;
    对所述可执行内核镜像进行散列值计算,得到实际镜像散列值;
    若所述参考镜像散列值和所述实际镜像散列值一致,则确定所述可执行内核镜像完整。
  3. 根据权利要求2所述的系统启动控制方法,其特征在于,从所述签名头部中,提取参考镜像散列值,包括:
    从所述签名头部中读取出参考镜像散列值密文;
    利用预设密钥,对所述参考镜像散列值密文进行解密;
    若解密失败,则确定所述BMC内核镜像的来源不可信,停止启动所述系统;
    若解密成功,则得到所述参考镜像散列值。
  4. 根据权利要求1所述的系统启动控制方法,其特征在于,在本次启动所述系统之前,还包括:
    在所述系统处于运行状态下,对BMC原始系统内核进行编译,生成所述可执行内核镜像;
    在所述可执行内核镜像前增加所述签名头部,得到所述BMC内核镜像。
  5. 根据权利要求4所述的系统启动控制方法,其特征在于,所述对BMC原始系统内核进行编译,生成所述可执行内核镜像,包括:
    对所述BMC原始系统内核进行编译,生成linux内核镜像、文件系统镜像和设备树镜像;
    将所述linux内核镜像、所述文件系统镜像和所述设备树镜像确定为所述可执行内核镜像。
  6. 根据权利要求4所述的系统启动控制方法,其特征在于,在所述可执行内核镜像前增加所述签名头部,得到所述BMC内核镜像,包括:
    获取参考镜像散列值密文、创建时间、镜像大小和内核加载地址;
    将所述创建时间、所述镜像大小、所述内核加载地址以及所述参考镜像散列值密文确定为所述签名头部;
    将所述签名头部添加至所述可执行内核镜像前,得到所述BMC内核镜像。
  7. 根据权利要求6所述的系统启动控制方法,其特征在于,所述获取参考镜像散列值密文,包括:
    利用安全哈希算法对所述可执行内核镜像进行散列值计算,得到参考镜像散列值;
    利用预设密钥对所述参考镜像散列值进行加密,得到所述参考镜像散列值密文。
  8. 一种系统启动控制装置,其特征在于,包括:
    内核加载模块,用于在系统启动过程中,加载BMC内核镜像至内存;
    内核解析模块,用于解析所述BMC内核镜像,得到可执行内核镜像和签名头部;
    镜像检测模块,用于利用所述签名头部,确定所述可执行内核镜像是否完整;
    启动控制模块,用于若所述可执行内核镜像不完整,则停止启动所述系统。
  9. 一种电子设备,其特征在于,包括:
    存储器,用于存储计算机程序;
    处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述系统启动控制方法的步骤。
  10. 一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项 所述系统启动控制方法的步骤。
PCT/CN2021/089877 2020-11-11 2021-04-26 一种系统启动控制方法、装置、设备及可读存储介质 Ceased WO2022100014A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011256577.0A CN112463224A (zh) 2020-11-11 2020-11-11 一种系统启动控制方法、装置、设备及可读存储介质
CN202011256577.0 2020-11-11

Publications (1)

Publication Number Publication Date
WO2022100014A1 true WO2022100014A1 (zh) 2022-05-19

Family

ID=74825511

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/089877 Ceased WO2022100014A1 (zh) 2020-11-11 2021-04-26 一种系统启动控制方法、装置、设备及可读存储介质

Country Status (2)

Country Link
CN (1) CN112463224A (zh)
WO (1) WO2022100014A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115827074A (zh) * 2022-11-22 2023-03-21 中国第一汽车股份有限公司 一种针对emmc存储的车载座舱系统快速出图方法、装置、存储器和车辆
CN116707885A (zh) * 2023-05-31 2023-09-05 南京南瑞信息通信科技有限公司 一种基于tpcm生成随机密钥的安全可信启动方法及系统
CN119646793A (zh) * 2025-02-20 2025-03-18 西安热工研究院有限公司 一种可信控制器的安全启动方法及系统

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463224A (zh) * 2020-11-11 2021-03-09 苏州浪潮智能科技有限公司 一种系统启动控制方法、装置、设备及可读存储介质
CN115618360A (zh) * 2022-11-02 2023-01-17 超越科技股份有限公司 一种服务器防篡改安全启动方法及装置
CN115858251B (zh) * 2023-01-18 2023-05-16 苏州浪潮智能科技有限公司 一种基板控制单元控制方法、装置及电子设备和存储介质
CN120874061A (zh) * 2025-09-24 2025-10-31 浪潮电子信息产业股份有限公司 一种服务器启动控制方法及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100062844A1 (en) * 2003-03-05 2010-03-11 Bally Gaming, Inc. Authentication and validation systems for gaming devices
CN104156659A (zh) * 2014-08-14 2014-11-19 电子科技大学 一种嵌入式系统的安全启动方法
CN106384052A (zh) * 2016-08-26 2017-02-08 浪潮电子信息产业股份有限公司 一种实现BMC U‑boot可信启动控制的方法
CN109376550A (zh) * 2018-11-01 2019-02-22 郑州云海信息技术有限公司 一种目标部件的启动控制方法、装置及设备
CN112463224A (zh) * 2020-11-11 2021-03-09 苏州浪潮智能科技有限公司 一种系统启动控制方法、装置、设备及可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109766134A (zh) * 2019-01-08 2019-05-17 四川虹微技术有限公司 系统启动方法、装置、电子设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100062844A1 (en) * 2003-03-05 2010-03-11 Bally Gaming, Inc. Authentication and validation systems for gaming devices
CN104156659A (zh) * 2014-08-14 2014-11-19 电子科技大学 一种嵌入式系统的安全启动方法
CN106384052A (zh) * 2016-08-26 2017-02-08 浪潮电子信息产业股份有限公司 一种实现BMC U‑boot可信启动控制的方法
CN109376550A (zh) * 2018-11-01 2019-02-22 郑州云海信息技术有限公司 一种目标部件的启动控制方法、装置及设备
CN112463224A (zh) * 2020-11-11 2021-03-09 苏州浪潮智能科技有限公司 一种系统启动控制方法、装置、设备及可读存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115827074A (zh) * 2022-11-22 2023-03-21 中国第一汽车股份有限公司 一种针对emmc存储的车载座舱系统快速出图方法、装置、存储器和车辆
CN116707885A (zh) * 2023-05-31 2023-09-05 南京南瑞信息通信科技有限公司 一种基于tpcm生成随机密钥的安全可信启动方法及系统
CN119646793A (zh) * 2025-02-20 2025-03-18 西安热工研究院有限公司 一种可信控制器的安全启动方法及系统

Also Published As

Publication number Publication date
CN112463224A (zh) 2021-03-09

Similar Documents

Publication Publication Date Title
WO2022100014A1 (zh) 一种系统启动控制方法、装置、设备及可读存储介质
Ling et al. Secure boot, trusted boot and remote attestation for ARM TrustZone-based IoT Nodes
US8782801B2 (en) Securing stored content for trusted hosts and safe computing environments
CN104156659B (zh) 一种嵌入式系统的安全启动方法
TWI606396B (zh) 母板、電腦可讀儲存裝置以及韌體驗證方法
TWI539324B (zh) 驗證控制器碼及系統啓動碼之技術
CN105122262B (zh) 辅助非易失性存储器中的冗余系统引导代码
JP7256861B2 (ja) セキュアコンピュータシステム
WO2023193351A1 (zh) 一种服务器启动方法、装置、设备及存储介质
CN105205401A (zh) 基于安全密码芯片的可信计算机系统及其可信引导方法
CN106384052A (zh) 一种实现BMC U‑boot可信启动控制的方法
US12155761B2 (en) Method and system for accelerating verification procedure for image file
CN112181513B (zh) 一种基于硬件板卡的控制主机系统引导的可信度量方法
US12003960B2 (en) Booting and operating computing devices at designated locations
BR112014031586B1 (pt) Sistema para emular um ambiente de execução confiável e midia de armazenamento de computador
CN109784061A (zh) 控制服务器可信启动的方法及装置
US20250131095A1 (en) Flash device switching method and apparatus, computer device, and storage medium
CN113360914A (zh) 一种bios更新的方法、系统、设备及介质
EP3514720A1 (en) Data structure measurement comparison
CN113076222A (zh) 一种基于安培平台的双eeprom系统及双eeprom切换方法
US20250193019A1 (en) Monitoring user space processes using heartbeat messages authenticated based on integrity measurements
CN108228219B (zh) 一种带外刷新bios时验证bios合法性的方法及装置
CN111258805A (zh) 一种服务器的硬盘状态监控方法、设备和计算机设备
CN117150573A (zh) Bios镜像验证的故障定位方法、装置、设备及介质
CN116880265A (zh) 辅助驾驶系统的安全监控装置、方法、计算机设备及介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21890549

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21890549

Country of ref document: EP

Kind code of ref document: A1