JP2013050839A - Information processor, information processing method, and information processing program - Google Patents

Information processor, information processing method, and information processing program Download PDF

Info

Publication number
JP2013050839A
JP2013050839A JP2011188243A JP2011188243A JP2013050839A JP 2013050839 A JP2013050839 A JP 2013050839A JP 2011188243 A JP2011188243 A JP 2011188243A JP 2011188243 A JP2011188243 A JP 2011188243A JP 2013050839 A JP2013050839 A JP 2013050839A
Authority
JP
Japan
Prior art keywords
bios
error detection
data
information processing
detection code
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
JP2011188243A
Other languages
Japanese (ja)
Other versions
JP5561791B2 (en
Inventor
Koichi Sueki
耕一 末木
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.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno 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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP2011188243A priority Critical patent/JP5561791B2/en
Publication of JP2013050839A publication Critical patent/JP2013050839A/en
Application granted granted Critical
Publication of JP5561791B2 publication Critical patent/JP5561791B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To enhance security and inhibit an abnormal BIOS (Basic Input/Output System) from starting.SOLUTION: An information processor 9 comprises: a BIOS (Basic Input/Output System) storage unit 91 prestoring a BIOS 910; a code storage unit 92 prestoring an error detection code 920 of composite data including data of the normal BIOS 910 and additional data predefined to an optional value; and a control unit 93 which generates an error detection code of the composite data including the data of the BIOS 910 and additional data when the BIOS 910 stored in the BIOS storage unit 91 starts, compares the generated error detection code with the error detection code 920 stored in the code storage unit 92, and inhibits the BIOS 910 from starting when the error detection codes do not match with each other.

Description

本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関し、特にBIOS(Basic Input/Output System)の起動を制御する技術に関する。   The present invention relates to an information processing apparatus, an information processing method, and an information processing program, and more particularly, to a technique for controlling activation of a basic input / output system (BIOS).

近年、情報処理装置においては、コンピュータウイルスによる犯罪が頻発している。このため、コンピュータウイルスで大切な情報を消去又は破壊されないようにすることが望まれている。   In recent years, crimes caused by computer viruses have frequently occurred in information processing apparatuses. For this reason, it is desired to prevent important information from being erased or destroyed by computer viruses.

情報処理装置は、その起動時に不揮発性メモリに書き込まれている基本入出力システム(BIOS)等のプログラムによりオペレーティングシステムを立ち上げている。BIOSは、書き換え可能な不揮発性メモリに書き込まれている。情報処理装置には、BIOSがコンピュータウイルスによって破壊されてしまった場合、もしくは、BIOSがコンピュータウイルスに感染してしまった場合、POST(Power On Self Test)において起動を抑止するものがある。   The information processing apparatus starts up an operating system by a program such as a basic input / output system (BIOS) written in a nonvolatile memory at the time of activation. The BIOS is written in a rewritable nonvolatile memory. Some information processing apparatuses inhibit activation in POST (Power On Self Test) when the BIOS is destroyed by a computer virus or when the BIOS is infected by a computer virus.

特許文献1には、コンピュータウイルス等で破壊、感染されたBIOSやIPLで情報処理装置を起動させなくする技術が開示されている。特許文献1に開示の情報処理装置は、フラッシュROM部、ジャンパー部、フラッシュROM読み出し部、加算回路部、比較回路部を有している。フラッシュROM部には、IPL(Initial Program Load)やBIOSといったプログラムが書き込まれている。ジャンパー部には、フラッシュROM部の内容が正常な時のデータの合計が設定されている。情報処理装置に電源が供給されたとき、フラッシュROM読み出し部は、フラッシュROM部の内容を次々読み出して加算回路部に送る。加算回路部は、その合計を計算する。比較回路部は、加算回路部の合計結果と、ジャンパー部に設定された合計とを比較する。そして、それらが一致している場合、情報処理装置は、IPLやBIOS等の動作を開始する。他方、それらが一致していない場合、情報処理装置は、IPLやBIOS等の動作を開始しない。   Patent Document 1 discloses a technique for preventing an information processing apparatus from being activated by a BIOS or IPL that is destroyed or infected by a computer virus or the like. The information processing apparatus disclosed in Patent Document 1 includes a flash ROM section, a jumper section, a flash ROM reading section, an addition circuit section, and a comparison circuit section. Programs such as IPL (Initial Program Load) and BIOS are written in the flash ROM section. In the jumper part, the total of data when the contents of the flash ROM part are normal is set. When power is supplied to the information processing apparatus, the flash ROM reading unit reads the contents of the flash ROM unit one after another and sends it to the adding circuit unit. The adding circuit unit calculates the sum. The comparison circuit unit compares the total result of the addition circuit unit with the total set in the jumper unit. If they match, the information processing apparatus starts an operation such as IPL or BIOS. On the other hand, if they do not match, the information processing apparatus does not start operations such as IPL and BIOS.

特開平10−027035号公報Japanese Patent Laid-Open No. 10-027035

しかしながら、特許文献1では、単純に、フラッシュROM部の合計値によって、BIOS等が破壊、感染されていないかを判定するようにしている。しかし、フラッシュROM部の合計値だけでは、第3者が容易に知ることができるため、セキュリティ対策として十分でないという問題がある。   However, in Patent Document 1, it is simply determined whether the BIOS or the like is destroyed or infected by the total value of the flash ROM section. However, since the third party can easily know only the total value of the flash ROM portion, there is a problem that it is not sufficient as a security measure.

例えば、情報処理装置に感染したコンピュータウイルスは、単純にフラッシュROM部のデータを読み出すだけで、その合計値を計算することができる。そのため、フラッシュROM部のデータの合計値が、計算した合計値と一致するように、フラッシュROM部のデータを書き換えることで、フラッシュROM部に格納されたBIOS等のプログラムを容易に改竄することができる。   For example, a computer virus that has infected an information processing device can calculate the total value by simply reading the data in the flash ROM section. Therefore, programs such as BIOS stored in the flash ROM unit can be easily altered by rewriting the data in the flash ROM unit so that the total value of the data in the flash ROM unit matches the calculated total value. it can.

本発明の目的は、上述したような課題を解決するために、よりセキュリティを向上しつつ、正常でないBIOSによる起動を抑止することができる情報処理装置、情報処理方法、及び情報処理プログラムを提供することである。   An object of the present invention is to provide an information processing apparatus, an information processing method, and an information processing program that can suppress startup by an abnormal BIOS while improving security in order to solve the above-described problems. That is.

本発明の第1の態様にかかる情報処理装置は、BIOS(Basic Input/Output System)が予め格納されたBIOS記憶部と、正常な前記BIOSのデータと予め任意の値に定められた付加データとを含む合成データの誤り検出符号を予め格納する符号記憶部と、前記BIOS記憶部に格納されたBIOSを起動するときに、当該BIOSのデータと前記付加データとを含む合成データの誤り検出符号を生成し、生成した誤り検出符号と前記符号記憶部に格納された誤り検出符号とを比較して、それらの誤り検出符号が一致しなかった場合、前記BIOSの起動を抑止する管理部と、を備えたものである。   An information processing apparatus according to a first aspect of the present invention includes a BIOS storage unit in which a BIOS (Basic Input / Output System) is stored in advance, normal BIOS data, and additional data set in advance to an arbitrary value. An error detection code of the composite data including the BIOS data and the additional data when the BIOS stored in the BIOS storage unit is activated. A management unit that suppresses activation of the BIOS when the generated error detection code is compared with the error detection code stored in the code storage unit and the error detection code does not match; It is provided.

本発明の第2の態様にかかる情報処理方法は、BIOS(Basic Input/Output System)を起動するときに、当該BIOSのデータと、予め任意の値に定められた付加データとを含む合成データの誤り検出符号を生成するステップと、予め生成された、正常な前記BIOSのデータと前記付加データとを含む合成データの誤り検出符号と、前記BIOSを起動するときに生成された誤り検出符号とを比較して、それらの誤り検出符号が一致しなかった場合、前記BIOSの起動を抑止するステップと、を備えたものである。   In the information processing method according to the second aspect of the present invention, when starting up a basic input / output system (BIOS), composite data including data of the BIOS and additional data set in advance to an arbitrary value is stored. A step of generating an error detection code; an error detection code of composite data including the normal BIOS data and the additional data generated in advance; and an error detection code generated when starting the BIOS In comparison, if the error detection codes do not match, the step of inhibiting the activation of the BIOS is provided.

本発明の第3の態様にかかる情報処理プログラムは、BIOS(Basic Input/Output System)を起動するときに、当該BIOSのデータと、予め任意の値に定められた付加データとを含む合成データの誤り検出符号を生成する処理と、予め生成された、正常な前記BIOSのデータと前記付加データとを含む合成データの誤り検出符号と、前記BIOSを起動するときに生成された誤り検出符号とを比較して、それらの誤り検出符号が一致しなかった場合、前記BIOSの起動を抑止する処理と、をBMC(Baseboard Management Controller)に実行させるものである。   When an information processing program according to the third aspect of the present invention starts up a BIOS (Basic Input / Output System), the information processing program includes a combination data including the BIOS data and additional data set in advance to an arbitrary value. A process for generating an error detection code, an error detection code for composite data including the normal BIOS data and the additional data, and an error detection code generated when the BIOS is started. In comparison, if the error detection codes do not match, the BMC (Baseboard Management Controller) is caused to execute a process of inhibiting the activation of the BIOS.

上述した本発明の各態様によれば、よりセキュリティを向上しつつ、正常でないBIOSによる起動を抑止することができる情報処理装置、情報処理方法、及び情報処理プログラムを提供することができる。   According to each aspect of the present invention described above, it is possible to provide an information processing apparatus, an information processing method, and an information processing program that can suppress activation by an abnormal BIOS while improving security.

本発明の実施の形態にかかる情報処理装置の構成の概要を示すブロック図である。It is a block diagram which shows the outline | summary of a structure of the information processing apparatus concerning embodiment of this invention. 本発明の実施の形態にかかる情報処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the information processing apparatus concerning embodiment of this invention. 本発明の実施の形態にかかる情報処理装置の起動処理を示すフローチャートである。It is a flowchart which shows the starting process of the information processing apparatus concerning embodiment of this invention. 本発明の実施の形態にかかる情報処理装置の設定情報更新処理を示すフローチャートである。It is a flowchart which shows the setting information update process of the information processing apparatus concerning embodiment of this invention.

まず、図1を参照して、本発明の実施の形態にかかる情報処理装置1の概要となる情報処理装置9の構成について説明する。図1は、本発明の実施の形態にかかる情報処理装置9の構成を示すブロック図を示す。   First, with reference to FIG. 1, the structure of the information processing apparatus 9 used as the outline | summary of the information processing apparatus 1 concerning embodiment of this invention is demonstrated. FIG. 1 is a block diagram showing a configuration of an information processing apparatus 9 according to an embodiment of the present invention.

情報処理装置9は、BIOS記憶部91、符号記憶部92、及び管理部93を有する。   The information processing apparatus 9 includes a BIOS storage unit 91, a code storage unit 92, and a management unit 93.

BIOS記憶部91は、BIOS910が予め格納されている。符号記憶部92は、正常なBIOS910のデータと、予め任意の値に定められた付加データとを含む合成データの誤り検出符号が予め格納されている。管理部93は、BIOS91に格納されたBIOS910を起動するときに、BIOS910のデータと符号データとを含む合成データの誤り検出符号を生成する。管理部93は、生成した誤り検出符号と符号記憶部92に格納された誤り検出符号とを比較して、それらの誤り検出符号が一致しなかった場合、BIOS910の起動を抑止する。   The BIOS storage unit 91 stores a BIOS 910 in advance. The code storage unit 92 stores in advance an error detection code of composite data including normal BIOS 910 data and additional data set to an arbitrary value in advance. When the management unit 93 activates the BIOS 910 stored in the BIOS 91, the management unit 93 generates an error detection code of composite data including the data of the BIOS 910 and the code data. The management unit 93 compares the generated error detection code with the error detection code stored in the code storage unit 92, and suppresses activation of the BIOS 910 if the error detection codes do not match.

続いて、本発明の実施の形態にかかる情報処理装置9の処理について説明する。   Next, processing of the information processing apparatus 9 according to the embodiment of the present invention will be described.

管理部93は、BIOS910を起動するときに、BIOS910のデータと、予め任意の値に定められた付加データとを含む合成データの誤り検出符号を生成する。管理部93は、正常なBIOS910のデータと付加データとを含む合成データの誤り検出符号920と、BIOS910を起動するときに生成された誤り検出符号とを比較する。管理部93は、誤り検出符号が一致しなかった場合、BIOS910の起動を抑止する。   When the management unit 93 activates the BIOS 910, the management unit 93 generates an error detection code of composite data including the data of the BIOS 910 and additional data set in advance to an arbitrary value. The management unit 93 compares the error detection code 920 of the combined data including normal BIOS 910 data and additional data with the error detection code generated when the BIOS 910 is activated. If the error detection codes do not match, the management unit 93 suppresses the activation of the BIOS 910.

続いて、本発明の実施の形態について図面を参照して詳細に説明する。まず、図2を参照して、本発明の実施の形態にかかる情報処理装置1の構成について説明する。図2は、本発明の実施の形態にかかる情報処理装置1の構成を示すブロック図である。情報処理装置1は、例えば、サーバ等である。   Next, embodiments of the present invention will be described in detail with reference to the drawings. First, the configuration of the information processing apparatus 1 according to the embodiment of the present invention will be described with reference to FIG. FIG. 2 is a block diagram showing the configuration of the information processing apparatus 1 according to the embodiment of the present invention. The information processing apparatus 1 is, for example, a server.

より具体的には、図2は、情報処理装置1に含まれるマザーボード10のアーキテクチャを示している。このアーキテクチャは、1つの例を例示したものであり、後述する本発明の機能を実現することが可能であれば、その構成を適宜変更するようにしてもよい。   More specifically, FIG. 2 shows the architecture of the mother board 10 included in the information processing apparatus 1. This architecture exemplifies one example, and the configuration thereof may be changed as appropriate as long as the functions of the present invention described later can be realized.

マザーボード10は、CPU(Central Processing Unit)11、プロセッサバス12、ノースブリッジ13、メモリ14、サウスブリッジ15、ロウピンカウント(LPC:Low Pin Count)バス16、不揮発性メモリ17、19、及びBMC18を有する。CPU11及びノースブリッジ13は、プロセッサバス12を介して相互に接続されている。サウスブリッジ15、不揮発性メモリ17、19及びBMC18は、LPCバス16を介して相互に接続されている。   The motherboard 10 includes a CPU (Central Processing Unit) 11, a processor bus 12, a north bridge 13, a memory 14, a south bridge 15, a low pin count (LPC) bus 16, nonvolatile memories 17 and 19, and a BMC 18. Have. The CPU 11 and the north bridge 13 are connected to each other via the processor bus 12. The south bridge 15, the nonvolatile memories 17 and 19, and the BMC 18 are connected to each other via the LPC bus 16.

CPU11は、不揮発性メモリ17からBIOS170をロードして実行する。CPU11は、BIOS170を実行することによって、情報処理装置1が有するユニットの初期化等のPOSTを実行する。CPU11は、POSTの終了後、OS(Operating System)を実行する。なお、「CPU」のことを「プロセッサ」とも言う。   The CPU 11 loads the BIOS 170 from the nonvolatile memory 17 and executes it. The CPU 11 executes POST such as initialization of a unit included in the information processing apparatus 1 by executing the BIOS 170. The CPU 11 executes an OS (Operating System) after the end of POST. Note that “CPU” is also referred to as “processor”.

プロセッサバス12は、CPU11とノースブリッジ13との間でデータが転送される転送経路である。ノースブリッジ13は、メモリ14とCPU11との間で転送されるデータ、及びサウスブリッジ15とCPU11との間で転送されるデータを管理する。ノースブリッジ13は、サウスブリッジ15によって制御されるユニットよりも高速なユニットを制御するチップである。ここでは、そのようなユニットとしてメモリ14が該当する。   The processor bus 12 is a transfer path through which data is transferred between the CPU 11 and the north bridge 13. The north bridge 13 manages data transferred between the memory 14 and the CPU 11 and data transferred between the south bridge 15 and the CPU 11. The north bridge 13 is a chip that controls a unit that is faster than a unit controlled by the south bridge 15. Here, the memory 14 corresponds to such a unit.

メモリ14は、メモリユニット(図示せず)及びメモリコントローラ(図示せず)を含む。メモリユニットは、例えば、SRAM(Static Random Access Memory)、及びDRAM(Dynamic Random Access Memory)等のランダムアクセス可能な揮発性メモリである。メモリコントローラは、CPU11からの要求に応じて、メモリユニットに対するデータの読み書きを制御する。なお、メモリコントローラの機能は、ノースブリッジ13に含まれていてもよい。   The memory 14 includes a memory unit (not shown) and a memory controller (not shown). The memory unit is a random accessible volatile memory such as an SRAM (Static Random Access Memory) and a DRAM (Dynamic Random Access Memory). The memory controller controls reading and writing of data with respect to the memory unit in response to a request from the CPU 11. The function of the memory controller may be included in the north bridge 13.

サウスブリッジ15は、ノースブリッジ13と、不揮発性メモリ17、19及びBMC18との間で転送されるデータを管理する。サウスブリッジ15は、ノースブリッジ13によって制御されるユニットよりも低速なユニットを制御するチップである。サウスブリッジ15は、例えば、LPCバスコントローラ、PCI(Peripheral Component Interconnect)バスコントローラ、IDE(Integrated Drive Electronics)コントローラ、及びUSB(Universal Serial Bus)コントローラ等の機能を有する。本実施の形態では、それらの機能のうち、LPCバスコントローラの機能によってデータ転送制御が行われるLPCバスについて図示している。その他のバス及びその先に接続されたユニットについては、図示を省略している。それらのユニットには、例えば、マウス及びキーボード等の入出力装置、並びに、ハードディスクのような記憶装置が含まれる。例えば、CPU11によって実行されるOSは、このハードディスクに格納されている。ノースブリッジ13及びサウスブリッジ15は、マザーボード10においてチップセットとも言われる。   The south bridge 15 manages data transferred between the north bridge 13 and the nonvolatile memories 17 and 19 and the BMC 18. The south bridge 15 is a chip that controls a unit that is slower than a unit controlled by the north bridge 13. The south bridge 15 has functions such as an LPC bus controller, a PCI (Peripheral Component Interconnect) bus controller, an IDE (Integrated Drive Electronics) controller, and a USB (Universal Serial Bus) controller. In the present embodiment, among these functions, an LPC bus in which data transfer control is performed by the function of the LPC bus controller is illustrated. The other buses and the units connected to the buses are not shown. These units include, for example, input / output devices such as a mouse and a keyboard, and a storage device such as a hard disk. For example, the OS executed by the CPU 11 is stored in this hard disk. The north bridge 13 and the south bridge 15 are also referred to as a chip set in the motherboard 10.

なお、メモリコントローラ、ノースブリッジ13及びサウスブリッジ15による各構成要素11、14、17、18、19間のデータの転送制御については、周知の技術であるため、詳細な説明は省略する。   Note that data transfer control between the constituent elements 11, 14, 17, 18, and 19 by the memory controller, the north bridge 13, and the south bridge 15 is a well-known technique, and thus detailed description thereof is omitted.

LPCバス16は、サウスブリッジ15、不揮発性メモリ17、19、及びBMC18間でのデータが転送される転送経路である。不揮発性メモリ17は、BIOS170が予め格納されている。また、不揮発性メモリ17には、BIOS170の設定情報171も格納される。BIOS170は、CPU11にPOSTを実行させるプログラムである。また、BIOS170は、不揮発性メモリ17に格納されたデータ170、171を更新するときに、それに合わせてチェックサム値190も更新する。チェックサム値190については、後述する。設定情報171は、例えば、起動デバイスの優先順位、クロック、及び、装置構成等の情報が含まれる。   The LPC bus 16 is a transfer path through which data is transferred between the south bridge 15, the nonvolatile memories 17 and 19, and the BMC 18. The nonvolatile memory 17 stores the BIOS 170 in advance. The nonvolatile memory 17 also stores setting information 171 of the BIOS 170. The BIOS 170 is a program that causes the CPU 11 to execute POST. Further, when the BIOS 170 updates the data 170 and 171 stored in the nonvolatile memory 17, the checksum value 190 is also updated accordingly. The checksum value 190 will be described later. The setting information 171 includes, for example, information such as the priority order of the boot device, clock, and device configuration.

BMC18は、情報処理装置1の電源制御、並びに、情報処理装置1に含まれる各種ユニットの温度及び電圧等の管理を行う。BMC18は、CPU11によってOS上で実行されるシステム管理ソフトウェアと、各種ユニットとの間のインターフェイスとして機能する。なお、ここでのシステム管理ソフトウェアによるBMC18からの情報の取得は、IPMI(Intelligent Platform Management Interface)仕様に基づくコマンドインタフェースによって行う。つまり、システム管理ソフトウェアによるユニットの情報の取得は、システム管理ソフトウェアがユニットの情報を要求するIPMIコマンドをBMC18に出力し、BMC18がそれに応じてユニットの情報をCPU11に出力することによって実現する。なお、これらシステム管理ソフトウェアによる処理は、厳密には、CPU11によって実行されることになる。   The BMC 18 performs power control of the information processing apparatus 1 and management of temperatures and voltages of various units included in the information processing apparatus 1. The BMC 18 functions as an interface between system management software executed on the OS by the CPU 11 and various units. The acquisition of information from the BMC 18 by the system management software here is performed by a command interface based on the IPMI (Intelligent Platform Management Interface) specification. That is, acquisition of unit information by the system management software is realized by the system management software outputting an IPMI command requesting unit information to the BMC 18, and the BMC 18 outputting unit information to the CPU 11 accordingly. Strictly speaking, the processing by these system management software is executed by the CPU 11.

また、BMC18は、WDT(ウォッチドックタイマ)によって、CPU11において動作するOSがストールしたか否かを監視する。具体的には、BMC18は、所定の時間の間、OSから応答がなかった場合、OSがストールしたと判定する。BMC18は、OSがストールしたと判定した場合は、CPU11を再起動する。例えば、BMC18は、CPU11を再起動する信号をCPU11に出力することによって、CPU11を再起動する。   Further, the BMC 18 monitors whether or not the OS operating in the CPU 11 is stalled by a WDT (watch dock timer). Specifically, the BMC 18 determines that the OS has stalled when there is no response from the OS for a predetermined time. If the BMC 18 determines that the OS has stalled, the BMC 18 restarts the CPU 11. For example, the BMC 18 restarts the CPU 11 by outputting a signal for restarting the CPU 11 to the CPU 11.

また、BMC18は、付加データを生成する。この付加データの値は、予め任意の値を定めることができる。付加データのデータ長も、予め任意の長さを定めることができる。BMC18が生成した付加データは、後述するチェックサム値の計算に使用される。BMC18は、CPU11によってBIOS170を起動する前に、不揮発性メモリ17のデータを読み出す。このデータには、BIOS170のデータと設定情報171が含まれる。BMC18は、読み出した不揮発性メモリ17のデータに、生成した付加データを付加したデータについて、チェックサム値を計算する。そして、BMC18は、計算したチェックサム値と、不揮発性メモリ19に格納されたチェックサム値190とを比較する。ここで、チェックサム値190については、後に詳述するが、計算したチェックサム値の期待値となる。そのため、BMC18は、比較したチェックサム値が一致した場合は、CPU11によるBIOS170の実行を許容し、比較したチェックサム値が不一致の場合は、CPU11によるBIOS170の実行を抑制する。   Further, the BMC 18 generates additional data. An arbitrary value can be determined in advance as the value of the additional data. The data length of the additional data can also be set to an arbitrary length in advance. The additional data generated by the BMC 18 is used for calculation of a checksum value to be described later. The BMC 18 reads data from the nonvolatile memory 17 before the BIOS 170 is started by the CPU 11. This data includes BIOS 170 data and setting information 171. The BMC 18 calculates a checksum value for data obtained by adding the generated additional data to the read data in the nonvolatile memory 17. Then, the BMC 18 compares the calculated checksum value with the checksum value 190 stored in the nonvolatile memory 19. Here, the checksum value 190 is an expected value of the calculated checksum value, which will be described in detail later. For this reason, the BMC 18 allows the CPU 11 to execute the BIOS 170 when the compared checksum values match, and suppresses the execution of the BIOS 170 by the CPU 11 when the compared checksum values do not match.

ここで、本実施の形態にかかるBMC18の処理は、BMC18上で動作するファームウェアによって実現される。BMC18は、例えば、そのファームウェアを実行するCPU及びメモリ等を有する。   Here, the processing of the BMC 18 according to the present embodiment is realized by firmware operating on the BMC 18. The BMC 18 includes, for example, a CPU that executes the firmware and a memory.

不揮発性メモリ19には、チェックサム値190が予め格納されている。このチェックサム値は、不揮発性メモリ17の正常なデータに付加データを付加したデータについて、予め計算されたチェックサム値となる。つまり、不揮発性メモリ19に格納されているチェックサム値190は、不揮発性メモリ17に格納されるデータに、BMC18によって生成される付加データを付加したデータのチェックサム値の期待値となる。よって、BIOS170を起動する時にBMC18によって計算されるチェックサム値と、不揮発性メモリ19に予め格納されたチェックサム値とが一致する場合、不揮発性メモリ17に格納されたデータは破壊・改竄等されていないことになる。ここで、不揮発性メモリ17、19は、例えば、フラッシュメモリである。   The non-volatile memory 19 stores a checksum value 190 in advance. This checksum value is a checksum value calculated in advance for data obtained by adding additional data to normal data in the nonvolatile memory 17. That is, the checksum value 190 stored in the nonvolatile memory 19 becomes an expected value of the checksum value of data obtained by adding the additional data generated by the BMC 18 to the data stored in the nonvolatile memory 17. Therefore, when the checksum value calculated by the BMC 18 when the BIOS 170 is started up matches the checksum value stored in advance in the nonvolatile memory 19, the data stored in the nonvolatile memory 17 is destroyed or altered. Will not be. Here, the non-volatile memories 17 and 19 are, for example, flash memories.

続いて、図3を参照して、本発明の実施の形態にかかる情報処理装置1の起動処理について説明する。図3は、本発明の実施の形態にかかる情報処理装置1の起動処理を示すフローチャートである。なお、以下のBIOS170によって実行される処理は、厳密には、CPU11によって実行されることになる。   Subsequently, a startup process of the information processing apparatus 1 according to the embodiment of the present invention will be described with reference to FIG. FIG. 3 is a flowchart showing a startup process of the information processing apparatus 1 according to the embodiment of the present invention. Strictly speaking, the following processing executed by the BIOS 170 is executed by the CPU 11.

BMC18は、電源オン指示を受ける(S1)と、情報処理装置1の起動を開始する。電源オン指示は、例えば、ユーザによる情報処理装置1の電源投入スイッチの押下に応じて情報処理装置1からBMC18に出力される信号である。BMC18は、電源オン指示に応じて、BIOS170の起動を開始する前に、付加データを生成する(S2)。さらに、BMC18は、不揮発性メモリ17のデータを読み出し、読み出した不揮発性メモリ17のデータに、生成した付加データを加えたデータについて、チェックサム値を計算する(S3)。   When the BMC 18 receives a power-on instruction (S1), the BMC 18 starts to start the information processing apparatus 1. The power-on instruction is, for example, a signal output from the information processing device 1 to the BMC 18 when the user presses the power-on switch of the information processing device 1. In response to the power-on instruction, the BMC 18 generates additional data before starting the activation of the BIOS 170 (S2). Further, the BMC 18 reads the data of the nonvolatile memory 17 and calculates a checksum value for the data obtained by adding the generated additional data to the read data of the nonvolatile memory 17 (S3).

BMC18は、計算したチェックサム値と、不揮発性メモリ19に格納されたチェックサム値190とを比較する(S4)。   The BMC 18 compares the calculated checksum value with the checksum value 190 stored in the nonvolatile memory 19 (S4).

比較したチェックサム値が一致している場合、BMC18は、情報処理装置1を起動する(S5)。つまり、BMC18は、CPU11にBIOS170の起動指示を出力する。CPU11は、BMC18からのBIOS170の起動指示に応じて、不揮発性メモリ17からBIOS170を読み出して実行する。ここで、BMC18は、BIOS170の起動指示として割り込み信号をCPU11に出力して、CPU11がその割り込み信号に応じてBIOS170を起動するようにしてもよい。また、BMC18は、BIOS170の起動指示としてその旨を示す情報を、サウスブリッジ15、ノースブリッジ13を介してCPU11に出力して、CPU11がその情報に応じてBIOS170を起動するようにしてもよい。実行が開始されたBIOS170は、POSTを実行する。そして、CPU11は、POSTの実行終了後、OSを起動する。これによって、情報処理装置1の起動が完了する。   If the compared checksum values match, the BMC 18 activates the information processing apparatus 1 (S5). That is, the BMC 18 outputs a boot instruction for the BIOS 170 to the CPU 11. The CPU 11 reads out the BIOS 170 from the non-volatile memory 17 and executes it in response to the activation instruction of the BIOS 170 from the BMC 18. Here, the BMC 18 may output an interrupt signal to the CPU 11 as an activation instruction of the BIOS 170, and the CPU 11 may activate the BIOS 170 in response to the interrupt signal. Further, the BMC 18 may output information indicating that to the BIOS 170 as an activation instruction of the BIOS 170 to the CPU 11 via the south bridge 15 and the north bridge 13, and the CPU 11 may activate the BIOS 170 according to the information. The BIOS 170 that has started execution executes POST. Then, the CPU 11 starts up the OS after the completion of the POST. Thereby, the activation of the information processing apparatus 1 is completed.

他方、比較したチェックサム値が一致しない場合、BMC18は、情報処理装置1の起動を抑止する(S6)。つまり、この場合は、BIOS170又は設定情報171がコンピュータウイルス等によって破壊されていると判定する。よって、この場合、BMC18は、CPU11にBIOS170の起動指示を出力しない。これによって、BIOS170及び情報処理装置1の起動が抑止される。   On the other hand, when the compared checksum values do not match, the BMC 18 suppresses the activation of the information processing apparatus 1 (S6). That is, in this case, it is determined that the BIOS 170 or the setting information 171 is destroyed by a computer virus or the like. Therefore, in this case, the BMC 18 does not output an instruction to start the BIOS 170 to the CPU 11. As a result, activation of the BIOS 170 and the information processing apparatus 1 is suppressed.

続いて、図4を参照して、本発明の実施の形態にかかる情報処理装置1の設定情報更新処理について説明する。図4は、本発明の実施の形態にかかる情報処理装置1の設定情報更新処理を示すフローチャートである。なお、以下のBIOS170によって実行される処理は、厳密には、CPU11によって実行されることになる。   Next, with reference to FIG. 4, the setting information update process of the information processing apparatus 1 according to the embodiment of the present invention will be described. FIG. 4 is a flowchart showing setting information update processing of the information processing apparatus 1 according to the embodiment of the present invention. Strictly speaking, the following processing executed by the BIOS 170 is executed by the CPU 11.

BIOS170の起動後、BIOS170は、通常動作で設定情報171を書き換える場合(S11)、BMC18から付加データを取得する(S12)。ここでの通常動作における設定情報171の書き換えとは、例えば、ユーザがBIOS170の起動後にBIOSの設定画面上で各種BIOSの設定情報の設定をする場合や、BIOS170がPOSTにおいて情報処理装置1の構成変更を自動検出して装置構成の情報を設定する場合が含まれる。   After the BIOS 170 is activated, the BIOS 170 acquires additional data from the BMC 18 (S12) when the setting information 171 is rewritten by normal operation (S11). Here, the rewriting of the setting information 171 in the normal operation is, for example, when the user sets various BIOS setting information on the BIOS setting screen after starting the BIOS 170, or when the BIOS 170 is POST in the configuration of the information processing apparatus 1. This includes a case where device configuration information is set by automatically detecting a change.

また、BMC18からの付加データの取得には、IPMIコマンドを使用する。具体的には、IPMIのOEM(Original Equipment Manufacturer)拡張コマンドを使用する。つまり、BIOS170からBMC18に付加データを要求するコマンドを、IPMIのOEM拡張コマンドで実装すればよい。そして、BIOS170がこの付加データを要求するコマンドをBMC18に出力したときに、BMC18がそのコマンドに応じて付加データを生成して、生成した付加データをCPU11に出力するようにする。   Further, an IPMI command is used to acquire additional data from the BMC 18. Specifically, an OEM (Original Equipment Manufacturer) extension command of IPMI is used. That is, a command for requesting additional data from the BIOS 170 to the BMC 18 may be implemented using an IPMI OEM extension command. When the BIOS 170 outputs a command requesting the additional data to the BMC 18, the BMC 18 generates additional data according to the command, and outputs the generated additional data to the CPU 11.

CPU11は、書き換え後の新たな不揮発性メモリ17のデータにBMC18から取得した付加データを付加したデータについて、チェックサム値を計算する(S13)。例えば、設定情報171を書き換えた後に、不揮発性メモリ17のデータを読み出して、チェックサム値の計算を実行する。なお、ステップS12における付加データの取得は、チェックサム値を計算するまでであれば、設定情報171の書き換え前及び書き換え後のいずれのタイミングで実行してもよい。CPU11は、計算したチェックサム値で、不揮発性メモリ19のチェックサム値190を更新する(S14)。   The CPU 11 calculates a checksum value for the data obtained by adding the additional data acquired from the BMC 18 to the data in the new nonvolatile memory 17 after rewriting (S13). For example, after the setting information 171 is rewritten, the data in the nonvolatile memory 17 is read and the checksum value is calculated. The additional data acquisition in step S12 may be executed at any timing before or after the setting information 171 is rewritten as long as the checksum value is calculated. The CPU 11 updates the checksum value 190 of the nonvolatile memory 19 with the calculated checksum value (S14).

以上に説明したように、本実施の形態では、単純にBIOS170が格納された不揮発性メモリ7のデータのみのチェックサム値ではなく、そのデータに付加データを加えてチェックサム値を計算して、そのチェックサム値によってBIOS170の破壊を検出するようにしている。これによれば、第3者は、チェックサム値を得るためには付加データの存在を知った上で、さらにその付加データを取得する必要がある。そのため、第3者は、チェックサム値を容易に知ることはできない。したがって、例えば、コンピュータウイルスによってBIOS等のプログラムを容易に改竄されないようにすることができる。つまり、セキュリティを向上しつつ、正常でないBIOSによる起動を抑止することができる。   As described above, in the present embodiment, the checksum value is calculated by adding the additional data to the data instead of only the checksum value of only the data of the nonvolatile memory 7 in which the BIOS 170 is stored, The destruction of the BIOS 170 is detected by the checksum value. According to this, in order to obtain the checksum value, the third party needs to know the existence of the additional data and further acquire the additional data. Therefore, the third party cannot easily know the checksum value. Therefore, for example, programs such as BIOS can be prevented from being easily tampered with by a computer virus. In other words, it is possible to suppress the activation by the abnormal BIOS while improving the security.

また、本実施の形態では、BMC18が付加データを生成して、その付加データを付加したデータについてチェックサム値を計算するようにしている。これによれば、第3者は、単に、いずれかの記憶装置を参照するだけで付加データを取得できるといったように、付加データを容易に取得することはできない。そのため、よりセキュリティを向上することができる。   In this embodiment, the BMC 18 generates additional data and calculates a checksum value for the data to which the additional data is added. According to this, it is not possible for a third party to easily acquire additional data such that the additional data can be acquired simply by referring to one of the storage devices. Therefore, security can be further improved.

また、特許文献1では、BIOSが格納されるフラッシュROM部の全データの合計値によって、BIOS等が破壊、感染されていないかを判定するようにしている。また、ジャンパー部に、フラッシュROM部の内容が正常な時のデータの合計値を固定的に設定するようにしている。しかしながら、一般的に、BIOSの設定情報は、BIOSが格納される記憶装置(フラッシュROM部)に格納されている。そのため、BIOSが設定情報を更新したときに、計算した合計値が、ジャンパー部に設定されている合計値と異なってしまい、BIOS等が正常であるのに情報処理装置が起動できなくなってしまうという問題があった。それに対して、本実施の形態では、不揮発性メモリ17に格納された設定情報171を書き換えるときに、それに応じて、期待値となるチェックサム値190も更新するようにしている。そのため、BIOSの設定情報を書き換えたときであっても、BIOSに異常がある場合のみに正確に情報処理装置の起動を抑止することが可能となる。   Further, in Patent Document 1, it is determined whether the BIOS or the like has been destroyed or infected by the total value of all data in the flash ROM section in which the BIOS is stored. Further, the total value of data when the contents of the flash ROM portion are normal is fixedly set in the jumper portion. However, generally, the BIOS setting information is stored in a storage device (flash ROM unit) in which the BIOS is stored. Therefore, when the BIOS updates the setting information, the calculated total value is different from the total value set in the jumper unit, and the information processing apparatus cannot be activated even though the BIOS or the like is normal. There was a problem. On the other hand, in this embodiment, when the setting information 171 stored in the nonvolatile memory 17 is rewritten, the checksum value 190 that is an expected value is also updated accordingly. Therefore, even when the BIOS setting information is rewritten, it is possible to accurately prevent the information processing apparatus from starting only when there is an abnormality in the BIOS.

なお、本実施の形態では、BIOS170の設定情報171が書き換えられた場合に、チェックサム値190を更新するようにしているが、BIOS170が書き換えられた場合にも、チェックサム値190を更新する。BIOS170の書き換えは、例えば、ユーザがBIOS170の起動後にBIOS170の設定画面上でBIOS170を書き換える場合や、OSの起動後にOS上からBIOS170を書き換えるアプリケーションプログラムを実行することによってBIOS170を書き換える場合等が含まれる。この場合におけるチェックサム値190の更新も、設定情報171が書き換えられた場合と同様に実施すればよい。例えば、BIOS170を書き換えた後に、不揮発性メモリ17のデータを読み出して、チェックサム値の計算を実行するようにすればよい。なお、付加データも同様にして取得するようにすればよい。   In the present embodiment, the checksum value 190 is updated when the setting information 171 of the BIOS 170 is rewritten. However, the checksum value 190 is also updated when the BIOS 170 is rewritten. The rewriting of the BIOS 170 includes, for example, a case where the user rewrites the BIOS 170 on the setting screen of the BIOS 170 after starting the BIOS 170 or a case where the user rewrites the BIOS 170 by executing an application program for rewriting the BIOS 170 from the OS after starting the OS. . The update of the checksum value 190 in this case may be performed in the same way as when the setting information 171 is rewritten. For example, after the BIOS 170 is rewritten, the data in the nonvolatile memory 17 is read and the checksum value is calculated. The additional data may be acquired in the same manner.

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。   Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention.

本実施の形態では、チェックサム値190がLPCバス16に接続された不揮発性メモリ19に格納されている場合について例示したが、チェックサム値190の格納場所は、CPU11及びBMC18が更新及び参照することができる場所であれば、どのような場所であってもよい。例えば、チェックサム値190は、メモリ14に格納するようにしてもよく、BMC18内に揮発性メモリ又は不揮発性メモリを設けるようにして、その中に格納するようにしてもよい。また、チェックサム値190を格納する記憶装置は、揮発性メモリ及び不揮発性メモリに限られず、レジスタであってもよい。   In the present embodiment, the case where the checksum value 190 is stored in the nonvolatile memory 19 connected to the LPC bus 16 has been exemplified. However, the CPU 11 and the BMC 18 update and refer to the storage location of the checksum value 190. Any place can be used as long as it is possible. For example, the checksum value 190 may be stored in the memory 14, or a volatile memory or a non-volatile memory may be provided in the BMC 18 and stored therein. The storage device that stores the checksum value 190 is not limited to a volatile memory and a nonvolatile memory, and may be a register.

本実施の形態では、BIOS170のデータ及び設定情報171を含む不揮発性メモリ17全体のデータについて、チェックサム値を計算して破壊をチェックするようにしているが、破壊をチェックするデータは、不揮発性メモリ17に格納されたデータの一部であってもよい。例えば、不揮発性メモリ17に格納されるデータのうち、BIOS17のデータのみについて、チェックサム値を計算して破壊をチェックするようにしてもよい。つまり、BIOS17のデータに付加データを付加したデータについてチェックサム値を計算して、BIOS17の破壊をチェックするようにしてもよい。なお、この場合は、正常なBIOS17のデータに付加データを付加したデータについてのチェックサム値を不揮発性メモリ19に格納するようにする。そのようにしても、セキュリティを向上しつつ、BIOS170の破壊を検出することが可能であるからである。   In this embodiment, the destruction of the entire nonvolatile memory 17 including the data of the BIOS 170 and the setting information 171 is calculated by checking the destruction, but the data for checking the destruction is nonvolatile. It may be a part of data stored in the memory 17. For example, among the data stored in the nonvolatile memory 17, only the data of the BIOS 17 may be calculated to check for destruction by calculating a checksum value. That is, a checksum value may be calculated for data obtained by adding additional data to the BIOS 17 data to check for destruction of the BIOS 17. In this case, a checksum value for data obtained by adding additional data to normal BIOS 17 data is stored in the nonvolatile memory 19. Even in such a case, it is possible to detect the destruction of the BIOS 170 while improving the security.

本実施の形態では、チェックサム値を計算して破壊をチェックするようにしているが、他の誤り検出符号を使用するようにしてもよい。例えば、CRC(Cyclic Redundancy Check)、パリティ、チェックサム、ハッシュ値等を使用するようにしてもよい。   In this embodiment, the checksum value is calculated to check for destruction, but other error detection codes may be used. For example, CRC (Cyclic Redundancy Check), parity, checksum, hash value, etc. may be used.

また、本発明の実施の形態では、プログラムとして、BIOS170及びBMC18のファームウェアを有している。これらのプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。   In the embodiment of the present invention, the firmware of the BIOS 170 and the BMC 18 is included as a program. These programs can be stored using various types of non-transitory computer readable media and supplied to a computer. Non-transitory computer readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (for example, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (for example, magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / W, semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (Random Access Memory)) are included. The program may also be supplied to the computer by various types of transitory computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves. The temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.

また、コンピュータが上述の実施の形態の機能を実現するプログラムを実行することにより、上述の実施の形態の機能が実現される場合だけでなく、このプログラムが、コンピュータ上で稼動しているOS(Operating System)もしくはアプリケーションソフトウェアと共同して、上述の実施の形態の機能を実現する場合も、本発明の実施の形態に含まれる。さらに、このプログラムの処理の全てもしくは一部がコンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットによって行われて、上述の実施の形態の機能が実現される場合も、本発明の実施の形態に含まれる。   In addition to the case where the function of the above-described embodiment is realized by the computer executing the program that realizes the function of the above-described embodiment, this program is not limited to the OS ( A case where the functions of the above-described embodiment are realized in cooperation with an operating system or application software is also included in the embodiment of the present invention. Furthermore, the present invention is also applicable to the case where the functions of the above-described embodiment are realized by performing all or part of the processing of the program by a function expansion board inserted into the computer or a function expansion unit connected to the computer. It is included in the embodiment.

1、9 情報処理装置
10 マザーボード
11 CPU
12 プロセッサバス
13 ノースブリッジ
14 メモリ
15 サウスブリッジ
16 LPCバス
17、19 不揮発性メモリ
18 BMC
91 BIOS記憶部
92 符号記憶部
93 管理部
170 BIOS
171 設定情報
190 チェックサム値
910 BIOS
920 誤り検出符号
1, 9 Information processing device 10 Motherboard 11 CPU
12 processor bus 13 north bridge 14 memory 15 south bridge 16 LPC bus 17, 19 non-volatile memory 18 BMC
91 BIOS storage unit 92 Code storage unit 93 Management unit 170 BIOS
171 Setting information 190 Checksum value 910 BIOS
920 error detection code

Claims (8)

BIOS(Basic Input/Output System)が予め格納されたBIOS記憶部と、
正常な前記BIOSのデータと予め任意の値に定められた付加データとを含む合成データの誤り検出符号を予め格納する符号記憶部と、
前記BIOS記憶部に格納されたBIOSを起動するときに、当該BIOSのデータと前記付加データとを含む合成データの誤り検出符号を生成し、生成した誤り検出符号と前記符号記憶部に格納された誤り検出符号とを比較して、それらの誤り検出符号が一致しなかった場合、前記BIOSの起動を抑止する管理部と、
を備えた情報処理装置。
A BIOS storage unit in which BIOS (Basic Input / Output System) is stored in advance;
A code storage unit for storing in advance an error detection code of composite data including normal BIOS data and additional data set to an arbitrary value in advance;
When starting up the BIOS stored in the BIOS storage unit, an error detection code of composite data including the BIOS data and the additional data is generated, and the generated error detection code and the code storage unit are stored. When the error detection code is compared and the error detection code does not match, the management unit that suppresses activation of the BIOS;
An information processing apparatus comprising:
前記情報処理装置は、さらに前記付加データを生成する付加データ生成部を備え、
前記管理部は、前記BIOSのデータと、前記付加データ生成部によって生成された付加データとを含む合成データの誤り検出符号を生成する、
請求項1に記載の情報処理装置。
The information processing apparatus further includes an additional data generation unit that generates the additional data,
The management unit generates an error detection code of composite data including the BIOS data and the additional data generated by the additional data generation unit;
The information processing apparatus according to claim 1.
前記BIOS記憶部は、さらに前記BIOSの設定情報が格納され、
前記合成データは、さらに前記BIOSの設定情報を含み、
前記情報処理装置は、前記BIOS記憶部に格納された設定情報を書き換えるときに、前記付加データ生成部によって生成された付加データを取得し、取得した付加データ、前記BIOSのデータ、及び前記書き換え後のBIOSの設定情報を含む合成データの誤り検出符号を生成し、生成した誤り検出符号で前記符号記憶部に格納された誤り検出符号を更新する制御部をさらに備えた請求項2に記載の情報処理装置。
The BIOS storage unit further stores setting information of the BIOS,
The composite data further includes setting information of the BIOS,
The information processing apparatus acquires additional data generated by the additional data generation unit when rewriting the setting information stored in the BIOS storage unit, and acquires the acquired additional data, the BIOS data, and the post-rewriting The information according to claim 2, further comprising: a control unit that generates an error detection code of the composite data including the BIOS setting information and updates the error detection code stored in the code storage unit with the generated error detection code. Processing equipment.
前記制御部は、プロセッサであり、
前記情報処理装置は、さらに前記管理部及び前記付加データ生成部を含むBMC(Baseboard Management Controller)を備えた、
請求項3に記載の情報処理装置。
The control unit is a processor;
The information processing apparatus further includes a BMC (Baseboard Management Controller) including the management unit and the additional data generation unit.
The information processing apparatus according to claim 3.
前記プロセッサは、前記BMCとの間で、IPMI(Intelligent Platform Management Interface)コマンドによって前記情報処理装置に含まれるハードウェアに関する情報を送受信するものであって、
前記プロセッサは、前記IPMIのOEM(Original Equipment Manufacturer)拡張コマンドによって、前記付加データを前記BMCから取得する請求項4に記載の情報処理装置。
The processor transmits / receives information regarding hardware included in the information processing apparatus to / from the BMC by an IPMI (Intelligent Platform Management Interface) command,
The information processing apparatus according to claim 4, wherein the processor acquires the additional data from the BMC by an OEM (Original Equipment Manufacturer) extension command of the IPMI.
前記誤り検出符号は、前記合成データのチェックサム値である請求項1乃至5のいずれか1項に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the error detection code is a checksum value of the combined data. BIOS(Basic Input/Output System)を起動するときに、当該BIOSのデータと、予め任意の値に定められた付加データとを含む合成データの誤り検出符号を生成するステップと、
予め生成された、正常な前記BIOSのデータと前記付加データとを含む合成データの誤り検出符号と、前記BIOSを起動するときに生成された誤り検出符号とを比較して、それらの誤り検出符号が一致しなかった場合、前記BIOSの起動を抑止するステップと、
を備えた情報処理方法。
Generating an error detection code of composite data including the BIOS data and additional data set in advance to an arbitrary value when starting up a BIOS (Basic Input / Output System);
The error detection code of the composite data including the normal BIOS data and the additional data generated in advance is compared with the error detection code generated when the BIOS is started, and those error detection codes are compared. If they do not match, the step of inhibiting the activation of the BIOS;
An information processing method comprising:
BIOS(Basic Input/Output System)を起動するときに、当該BIOSのデータと、予め任意の値に定められた付加データとを含む合成データの誤り検出符号を生成する処理と、
予め生成された、正常な前記BIOSのデータと前記付加データとを含む合成データの誤り検出符号と、前記BIOSを起動するときに生成された誤り検出符号とを比較して、それらの誤り検出符号が一致しなかった場合、前記BIOSの起動を抑止する処理と、
をBMC(Baseboard Management Controller)に実行させる情報処理プログラム。
A process of generating an error detection code of composite data including the BIOS data and additional data set in advance at an arbitrary value when starting up a BIOS (Basic Input / Output System);
The error detection code of the composite data including the normal BIOS data and the additional data generated in advance is compared with the error detection code generated when the BIOS is started, and those error detection codes are compared. If they do not match, a process of inhibiting the activation of the BIOS;
Is an information processing program that causes a BMC (Baseboard Management Controller) to execute.
JP2011188243A 2011-08-31 2011-08-31 Information processing apparatus, information processing method, and information processing program Active JP5561791B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011188243A JP5561791B2 (en) 2011-08-31 2011-08-31 Information processing apparatus, information processing method, and information processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011188243A JP5561791B2 (en) 2011-08-31 2011-08-31 Information processing apparatus, information processing method, and information processing program

Publications (2)

Publication Number Publication Date
JP2013050839A true JP2013050839A (en) 2013-03-14
JP5561791B2 JP5561791B2 (en) 2014-07-30

Family

ID=48012834

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011188243A Active JP5561791B2 (en) 2011-08-31 2011-08-31 Information processing apparatus, information processing method, and information processing program

Country Status (1)

Country Link
JP (1) JP5561791B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015064637A (en) * 2013-09-24 2015-04-09 日本電気株式会社 Path switching device, path switching method and path switching program
JP2020119028A (en) * 2019-01-18 2020-08-06 ブラザー工業株式会社 Control board
KR20230064825A (en) * 2021-11-04 2023-05-11 주식회사 테라텍 System and method for integrated management of data center devices based on virtualization technology

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109117296B (en) * 2018-07-26 2021-10-22 郑州云海信息技术有限公司 Method and system for positioning error of hard disk capacity information

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6349956A (en) * 1986-08-20 1988-03-02 Canon Inc Memory control system
JPH1027035A (en) * 1996-07-12 1998-01-27 Fujitsu Ltd Information processor
JPH10269147A (en) * 1997-03-25 1998-10-09 Mitsubishi Electric Corp Data checking method
JPH10333992A (en) * 1997-05-28 1998-12-18 Canon Inc Flash memory write data and flash memory loading equipment
JP2000163321A (en) * 1998-11-26 2000-06-16 Canon Inc Method and device for processing data and storage medium
JP2005050348A (en) * 2003-07-30 2005-02-24 Hewlett-Packard Development Co Lp Method for persistently tracking volatile memory fault
JP2006011605A (en) * 2004-06-23 2006-01-12 Kyocera Mita Corp Data-checking method
JP2008204327A (en) * 2007-02-22 2008-09-04 Nec Corp Control method for storage device in duplex system
JP2008542940A (en) * 2005-06-10 2008-11-27 ストックウェイ オサケユイチア Product identifier verification
JP2011076134A (en) * 2009-09-29 2011-04-14 Lenovo Singapore Pte Ltd Computer protecting privilege level of system management mode

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6349956A (en) * 1986-08-20 1988-03-02 Canon Inc Memory control system
JPH1027035A (en) * 1996-07-12 1998-01-27 Fujitsu Ltd Information processor
JPH10269147A (en) * 1997-03-25 1998-10-09 Mitsubishi Electric Corp Data checking method
JPH10333992A (en) * 1997-05-28 1998-12-18 Canon Inc Flash memory write data and flash memory loading equipment
JP2000163321A (en) * 1998-11-26 2000-06-16 Canon Inc Method and device for processing data and storage medium
JP2005050348A (en) * 2003-07-30 2005-02-24 Hewlett-Packard Development Co Lp Method for persistently tracking volatile memory fault
JP2006011605A (en) * 2004-06-23 2006-01-12 Kyocera Mita Corp Data-checking method
JP2008542940A (en) * 2005-06-10 2008-11-27 ストックウェイ オサケユイチア Product identifier verification
JP2008204327A (en) * 2007-02-22 2008-09-04 Nec Corp Control method for storage device in duplex system
JP2011076134A (en) * 2009-09-29 2011-04-14 Lenovo Singapore Pte Ltd Computer protecting privilege level of system management mode

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015064637A (en) * 2013-09-24 2015-04-09 日本電気株式会社 Path switching device, path switching method and path switching program
JP2020119028A (en) * 2019-01-18 2020-08-06 ブラザー工業株式会社 Control board
JP7151498B2 (en) 2019-01-18 2022-10-12 ブラザー工業株式会社 control board
KR20230064825A (en) * 2021-11-04 2023-05-11 주식회사 테라텍 System and method for integrated management of data center devices based on virtualization technology
KR102647728B1 (en) * 2021-11-04 2024-03-15 주식회사 테라텍 System and method for integrated management of data center devices based on virtualization technology

Also Published As

Publication number Publication date
JP5561791B2 (en) 2014-07-30

Similar Documents

Publication Publication Date Title
JP6198876B2 (en) Secure recovery apparatus and method
US9785596B2 (en) Redundant system boot code in a secondary non-volatile memory
TWI335536B (en) Information handling system (ihs) method and for updating a non-volatile memory (nvm) included in an information handling system
CN103718165B (en) BIOS flash memory attack protection and notice
US9880908B2 (en) Recovering from compromised system boot code
JP5575338B2 (en) Information processing apparatus, information processing method, and computer program
US9852298B2 (en) Configuring a system
US20130138934A1 (en) Loading configuration information
KR101618535B1 (en) Secure data protection with improved read-only memory locking during system pre-boot
WO2016206514A1 (en) Startup processing method and device
TW201401098A (en) System and method for verificating firmware
US20140173327A1 (en) Correcting a failure associated with a current firmware image
US11550655B2 (en) System and method for monitoring and upgrading a dual-flash device
US20210365323A1 (en) System and method for recovering an operating system after a runtime hang using a dual-flash device
JP5561791B2 (en) Information processing apparatus, information processing method, and information processing program
US7900033B2 (en) Firmware processing for operating system panic data
US9448888B2 (en) Preventing a rollback attack in a computing system that includes a primary memory bank and a backup memory bank
US11797389B2 (en) System and method for recovering an operating system after an upgrade hang using a dual-flash device
JP6599725B2 (en) Information processing apparatus, log management method, and computer program
TW201314574A (en) Method and device for updating BIOS program for computer system
JP2008225929A (en) Information processor
CN110781517B (en) Method for realizing data interaction by BIOS and BMC communication
TW201430702A (en) Method and system for updating firmware
US11836048B2 (en) Information processing apparatus
US11269637B2 (en) Validating machine-readable instructions using an iterative validation process

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131008

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131206

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140513

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140605

R150 Certificate of patent or registration of utility model

Ref document number: 5561791

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350