JP2021114156A - Information processing apparatus, processing method thereof, and program - Google Patents
Information processing apparatus, processing method thereof, and program Download PDFInfo
- Publication number
- JP2021114156A JP2021114156A JP2020006740A JP2020006740A JP2021114156A JP 2021114156 A JP2021114156 A JP 2021114156A JP 2020006740 A JP2020006740 A JP 2020006740A JP 2020006740 A JP2020006740 A JP 2020006740A JP 2021114156 A JP2021114156 A JP 2021114156A
- Authority
- JP
- Japan
- Prior art keywords
- software module
- program
- information processing
- tampered
- verification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、情報処理装置、情報処理装置の処理方法およびプログラムに関する。 The present invention relates to an information processing device, a processing method and a program of the information processing device.
ソフトウェアの脆弱性をついてソフトウェアを改ざんし、コンピュータを悪用する攻撃が問題となっている。そういった攻撃の対策として、プログラムに署名を施して保存しておき、起動するたびにプログラムの署名を検証することで改ざんの有無を検知する方法が知られている。 Attacks that exploit software by tampering with software vulnerabilities and exploiting computers have become a problem. As a countermeasure against such attacks, a method is known in which a program is signed and saved, and the presence or absence of tampering is detected by verifying the signature of the program each time it is started.
特許文献1には、プログラムを部分的に交換可能にするためにモジュール化し、各モジュールに対して署名を検証する処理や検証するのに必要な鍵情報をそれぞれに内包して格納する方法が開示されている。特許文献2には、起動時に各プログラムの正解値が一致するか検証する方法が開示されている。 Patent Document 1 discloses a method in which a program is modularized so as to be partially exchangeable, and a process for verifying a signature for each module and a method for containing and storing key information necessary for verification are included in each module. Has been done. Patent Document 2 discloses a method of verifying whether the correct answer values of each program match at startup.
起動時に改ざんを検知した場合、悪意のある動作を防ぐために各プログラムの動作を停止させる。操作部には、改ざんが行われたことをユーザに知らせるため、エラーコードなどを表示する。 If tampering is detected at startup, the operation of each program is stopped to prevent malicious operation. An error code or the like is displayed on the operation unit in order to notify the user that the alteration has been performed.
しかし、この場合、プログラムが動作しないため、ユーザが復旧させることができない。さらに、管理サーバなどの外部装置へのエラー通知ができないため、管理者やサービスマンに対する通知が行えず、復旧のための初期対応が遅くなってしまう。そのため、ユーザが情報処理装置を利用できないダウンタイムが長く発生してしまう。 However, in this case, since the program does not operate, the user cannot recover it. Furthermore, since error notification to an external device such as a management server cannot be made, notification to an administrator or a service person cannot be made, and the initial response for recovery is delayed. Therefore, a long downtime occurs in which the user cannot use the information processing device.
本発明の目的は、プログラムの改ざんが行われている場合に、改ざんが行われている旨を外部装置に通知することができるようにすることである。 An object of the present invention is to be able to notify an external device that the program has been tampered with when the program has been tampered with.
本発明の情報処理装置は、ブートプログラムの起動に応じて第1のソフトウェアモジュールを起動する第1の起動手段と、前記第1のソフトウェアモジュールが起動すると、第2のソフトウェアモジュール内のプログラムの改ざんの検証を行う第1の検証手段と、前記第2のソフトウェアモジュール内の少なくとも1個のプログラムの改ざんが行われ、前記第2のソフトウェアモジュール内の通信モジュールの改ざんが行われていないと判断された場合には、前記第2のソフトウェアモジュール内の通信モジュールを起動し、改ざんが行われている旨を外部装置に通知する通知手段とを有する。 The information processing apparatus of the present invention has a first activation means for activating a first software module in response to activation of a boot program, and tampering with a program in the second software module when the first software module is activated. It is determined that the first verification means for verifying the above and at least one program in the second software module have been tampered with, and the communication module in the second software module has not been tampered with. In that case, it has a notification means for activating the communication module in the second software module and notifying the external device that the tampering has been performed.
本発明によれば、プログラムの改ざんが行われている場合に、改ざんが行われている旨を外部装置に通知することができる。 According to the present invention, when the program has been tampered with, it is possible to notify the external device that the program has been tampered with.
以下では、図面を参照して実施形態について説明する。なお、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。また、実施形態に係る情報処理装置として複合機(デジタル複合機/MFP/Multi Function Peripheral)を例に説明する。しかしながら、適用範囲は複合機に限定はせず、情報処理装置であればよい。 Hereinafter, embodiments will be described with reference to the drawings. It should be noted that the following embodiments do not limit the present invention according to the claims, and not all combinations of features described in the present embodiments are essential to the means for solving the present invention. .. Further, as an information processing device according to the embodiment, a multifunction device (digital multifunction device / MFP / Multifunction Peripheral) will be described as an example. However, the scope of application is not limited to the multifunction device, and any information processing device may be used.
図1は、本実施形態による情報処理システム110の構成例を示す図である。情報処理システム110は、複合機100と、コンピュータ101と、管理サーバ102と、ネットワーク118とを有する。
FIG. 1 is a diagram showing a configuration example of the
複合機100は、ネットワーク118を介して、コンピュータ101と管理サーバ102に接続される。コンピュータ101は、複合機100に対して、印刷データを送信したり、複合機100のファームウェアアップデートを実行したりすることができる。
The
管理サーバ102は、複合機100からの通知により、複合機100の状態を管理することができる。管理サーバ102は、印刷枚数およびトナー残量などの管理やエラー状況などを管理し、サービスマンの出動が必要な場合は、サービスマンに対してメール通知などを行うことができる。
The
図2は、本実施形態による複合機100のハードウェア構成例を示す図である。複合機100は、情報処理装置の一例である。複合機100は、CPU201、ROM(Read-Only Memory)202、RAM(Random Access Memory)203、およびHDD(Hard Disk Drive)204を有する。また、複合機100は、ネットワークI/F制御部205、スキャナI/F制御部206、プリンタI/F制御部207、パネル制御部208、スキャナ211、プリンタ212、埋め込みコントローラ213、フラッシュメモリ214、およびLED217を有する。埋め込みコントローラ213は、CPU215およびRAM216を有する。
FIG. 2 is a diagram showing a hardware configuration example of the
CPU201は、複合機100のプログラムを実行し、複合機100の全体の制御を統括的に行う。ROM202は、リードオンリーメモリであり、複合機100のBIOS(Basic Input/Output System)、固定パラメータ等を格納している。RAM203は、ランダムアクセスメモリであり、CPU201が複合機100を制御する際に、プログラムや一時的なデータを格納する。HDD204は、ハードディスクドライブであり、一部のアプリケーションや、各種データを格納する。フラッシュメモリ214は、ローダー、カーネル、およびアプリケーションなどの各種ソフトウェアモジュールを格納する。
The
埋め込みコントローラ213のCPU215は、埋め込みコントローラ213のプログラムを実行し、複合機100における一部の制御を行う。RAM216は、ランダムアクセスメモリであり、CPU215が複合機100を制御する際に、プログラムや一時的なデータを格納する。複合機100は、埋め込みコントローラ213に対して、統括的に制御するメインコントローラを有する。当該メインコントローラは、少なくともCPU201、ROM202、およびRAM203を含む。
The
ネットワークI/F制御部205は、ネットワーク118に対して、データの送受信を制御する。スキャナI/F制御部206は、スキャナ211による原稿の読み取りを制御する。プリンタI/F制御部207は、プリンタ212による印刷処理などを制御する。パネル制御部208は、タッチパネル式の操作パネル210を制御し、各種情報の表示、使用者からの指示入力を制御する。バス209は、CPU201、ROM202、RAM203、HDD204、ネットワークI/F制御部205、スキャナI/F制御部206、およびプリンタI/F制御部207を相互に接続する。さらに、バス209は、パネル制御部208、埋め込みコントローラ213、およびフラッシュメモリ214も相互に接続する。このバス209を介して、CPU201からの制御信号や各構成要素間のデータ信号が送受信される。LED217は、必要に応じて点灯し、プログラムやハードウェアの異常を外部に伝えるために利用される。
The network I /
図3は、本実施形態による複合機100の機能構成例を示す図である。複合機100は、ソフトウェアモジュールとして、埋め込みコントローラ213内にブートプログラム309を含む。さらに、複合機100は、ソフトウェアモジュールとして、BIOS310、ローダー311、カーネル312、Initrd313、コントローラソフト314、UI制御部303、および通信管理部307を含む。
FIG. 3 is a diagram showing a functional configuration example of the
通信管理部307は、ネットワーク118に接続されるネットワークI/F制御部205を制御して、ネットワーク118を介して外部とデータの送受信を行う。UI制御部303は、パネル制御部208を介して操作パネル210への入力を受け取り、入力に応じた処理や操作パネル210への表示を行う。ブートプログラム309は、複合機100の電源を入れると、埋め込みコントローラ213のCPU215で実行されるプログラムであり、起動に関わる処理を実行する他に、BIOS310の改ざんの検証を行うBIOS改ざん検知部301を含む。
The
BIOS310は、ブートプログラム309の実行後にCPU201で実行されるプログラムであり、起動に関わる処理を実行する他に、ローダー311の改ざんの検証を行うローダー改ざん検知部302を含む。ローダー311は、BIOS310の処理が完了した後にCPU201で実行されるプログラムであり、起動に関わる処理を実行する他に、カーネル312の改ざんの検証を行うカーネル改ざん検知部304を有する。
The
カーネル312は、ローダー311の処理が完了した後にCPU201で実行されるプログラムであり、起動に関わる処理を実行する他に、Initrd313の改ざんの検証を行うInitrd改ざん検知部305を有する。Initrd313は、フラッシュメモリ214からコントローラソフト314を読み込み、開始する処理を実行する。Initrd313は、内部的にInitrdとしての制御ソフトと制御ソフトに対する署名データで構成される。起動時検証部306は、Initrd313に含まれ、コントローラソフト314を構成する全てのプログラムファイルを起動時に検証する処理と、付与された署名に対する公開鍵を含む。ここで、全ての署名データに対する秘密鍵は、ソフトウェアの開発時のみ利用され、一般に流通することはない。
The
コントローラソフト314は、CPU201で実行されるプログラムであり、複合機100の各機能を提供する複数のプログラムからなる。例えば、コントローラソフト314は、スキャナI/F制御部206やプリンタI/F制御部207を制御するプログラムや起動プログラムなどを含む。コントローラソフト314のプログラムの一つとして、複合機100の状態を管理する管理サーバ102と通信を行う管理サーバ通信部308を有する。管理サーバ通信部308は、通信管理部307を介して、管理サーバ102と種々のデータの送受信を行う。例えば、管理サーバ通信部308は、複合機100のシリアルナンバーや、コントローラのファームウェアバージョン、発生したエラーコードなどを通知する。また、コントローラソフト314は、起動時検証用の正解値リスト315を有し、起動時検証部306が検証処理に使用する。
The
図4は、起動時検証用の正解値リスト315を示す図である。正解値リスト315は、コントローラソフト314に含まれる全てのプログラムファイルに対して、ファイル名401とハッシュ値402の組み合わせをリスト化したものである。プログラムファイルは、OSのプログラムおよび/または機能を提供するアプリケーションプログラムを含む。正解値リスト315は、少なくともファイル名称、ファイルの場所、ファイルに対して一意な値を含むものとし、情報がリスト化される。例えば、正解値リスト315は、ハッシュ値402を用いる。
FIG. 4 is a diagram showing a list of correct answer values 315 for verification at startup. The correct
図5(a)〜(d)は、複合機100のソフトウェアモジュールの起動手順を示す図である。図5(a)は、改ざん検知を行わずに、複合機100が起動する順序を示す。ブートプログラム309がBIOS310を起動し、BIOS310がローダー311を起動し、ローダー311がカーネル312を起動し、カーネル312がInitrd313の中から起動プログラムを起動する。起動プログラムの中でコントローラソフト314が起動され、複合機100の機能を提供する。このように、各ソフトウェアモジュールは、所定の順序で起動制御が行われ、前のソフトウェアモジュールの起動が完了すると、次のソフトウェアモジュールの起動処理が実行される。
5 (a) to 5 (d) are diagrams showing a procedure for starting the software module of the
図5(b)は、改ざん検知を行いながら、複合機100が起動する順序を示す。図示するように、ブートプログラム309から、BIOS310、ローダー311、カーネル312、Initrd313、コントローラソフト314の順に改ざん検知を行いながら、起動する。起動するソフトウェアモジュールの改ざん検知は、直前に起動されたソフトウェアモジュールが行う。例えば、BIOS310の改ざん検知は、ブートプログラム309が行う。
FIG. 5B shows the order in which the
図5(b)は、各プログラムの保存場所、デジタル署名(以下、署名という)と署名を検証するための公開鍵(検証情報)の保存場所を表している。以下では、ROM202にブートプログラム309とBIOS310が保存され、フラッシュメモリ214にローダー311とカーネル312とInitrd313とコントローラソフト314とが保存されている。
FIG. 5B shows a storage location of each program, a digital signature (hereinafter referred to as a signature), and a storage location of a public key (verification information) for verifying the signature. In the following, the
ブートプログラム309は、BIOSの署名検証用の公開鍵500を含む。BIOS310は、BIOSの署名502とローダー検証用の公開鍵503を含む。ローダー311は、ローダー署名504とカーネル検証用の公開鍵505を含む。カーネル312は、カーネル署名506とInitrd検証用の公開鍵507を含む。Initrd313は、Initrdの署名509を含む。これらの公開鍵と署名は、予め複合機100の工場出荷前に、ソフトウェアモジュール(プログラム)に対して付与されることが望ましい。BIOS改ざん検知部301、ローダー改ざん検知部302、カーネル改ざん検知部304およびInitrd改ざん検知部305は、次に起動する各ソフトウェアモジュールの改ざんの検証を行い、問題がなければ、次のソフトウェアモジュールを起動する。
The
図5(c)は、コントローラソフト314の検証手順を示す。Initrd313の起動時検証部306は、コントローラソフト314の検証を行う。コントローラソフト314は、複数のソフトウェアから成り、管理サーバ102と通信を行うための通信モジュールである管理サーバ通信部308もこの1つである。
FIG. 5C shows a verification procedure of the
起動時検証部306は、各ソフトウェアのハッシュ値を計算し、コントローラソフト314に含まれる、正解値リスト315に記載されたハッシュ値402と比較する。起動時検証部306は、比較の結果が一致すれば、改ざんされていないものと判断し、次のソフトウェアの検証を実施する。すべてのソフトウェアの検証が正常に終了すると、起動時検証部306は、コントローラソフト314が改ざんされていないと判断し、検証を終了する。検証が終了すると、Initrd313は、各ソフトウェアの起動を行う。なお、通信モジュールである管理サーバ通信部308の起動順は限定されない。
The
図5(d)は、コントローラソフト314の検証に失敗した時の手順を示す。起動時検証部306は、各ソフトウェアの検証を順に行い、改ざんされているソフトウェアが見つかった場合、検証失敗として検証処理を中断する。起動時検証部306は、管理サーバ102に通知を行うため、通信モジュールである管理サーバ通信部308のみの起動を行う。起動時検証部306は、管理サーバ通信部308のハッシュ値を計算し、正解値リスト315に記載されたハッシュ値402と等しいか否かを確認する。起動時検証部306は、検証に成功した場合、管理サーバ通信部308のみを起動し、実行する。なお、通信モジュールは、1つのソフトウェアであるとして説明したが、複数のソフトウェアから成っていてもよい。その場合、起動時検証部306は、全ての通信モジュールの検証に成功した場合のみ、起動を行う。
FIG. 5D shows a procedure when the verification of the
図6は、本実施形態による複合機100の起動時の処理方法を示すフローチャートである。複合機100の電源が投入されると、ROM202からRAM216にブートプログラム309が読み込まれ、CPU215は、ブートプログラム309を起動する。
FIG. 6 is a flowchart showing a processing method at the time of starting the
ステップS601では、ブートプログラム309に含まれるBIOS改ざん検知部301は、検証部として機能し、BIOSの署名502の検証を行い、成功したか否かを判定する。具体的には、BIOS改ざん検知部301は、フラッシュメモリ214からBIOS310と、ローダー検証用の公開鍵503と、BIOSの署名502をRAM216に読み込む。さらに、BIOS改ざん検知部301は、BIOS検証用の公開鍵500を用いて、BIOSの署名502の検証を行い、成功したか否かを判定する。BIOS改ざん検知部301は、署名502の検証に失敗した場合、BIOS310の改ざんが行われていると判断し、ステップS603に進む。一方、BIOS改ざん検知部301は、署名502の検証に成功した場合、BIOS310の改ざんが行われていないと判断し、CPU201に通電し、ブートプログラムの処理を終了し、ステップS602に進む。
In step S601, the BIOS tampering
ステップS603では、BIOS改ざん検知部301は、LED217を点灯させ、図6の処理を終了する。
In step S603, the BIOS tampering
ステップS602では、CPU201は、起動部として機能し、フラッシュメモリ214からBIOS310とローダー検証用の公開鍵503をRAM203に読み込み、BIOS310を起動する。BIOS310が起動されると、CPU201は、ステップS604に進む。
In step S602, the
ステップS604では、CPU201は、BIOS310により、各種初期化処理を実行する。BIOS310に含まれるローダー改ざん検知部302は、フラッシュメモリ214からローダー311と、カーネル検証用の公開鍵505と、ローダー署名504をRAM203に読み込む。さらに、ローダー改ざん検知部302は、検証部として機能し、ローダー検証用の公開鍵505を用いて、ローダー署名504の検証を行い、成功したか否かを判定する。ローダー改ざん検知部302は、ローダー署名504の検証に失敗した場合は、ローダー311の改ざんが行われていると判断し、ステップS615に進む。一方、ローダー改ざん検知部304は、ローダー署名504の検証に成功した場合は、ローダー311の改ざんが行われていないと判断し、ステップS605に進む。
In step S604, the
ステップS615では、ローダー改ざん検知部302は、操作パネル210にエラーメッセージを表示するように制御し、図6の処理を終了する。
In step S615, the loader
ステップS605では、CPU201は、起動部として機能し、BIOS310により、RAM203に読み込まれたローダー311を起動する。ローダー311が起動されると、CPU201は、ステップS606に進む。
In step S605, the
ステップS606では、CPU201は、ローダー311により、各種初期化処理を実行する。ローダー311に含まれるカーネル改ざん検知部304は、フラッシュメモリ214からカーネル312とNativeプログラム検証用の公開鍵507とカーネル署名506をRAM203に読み込む。カーネル改ざん検知部304は、検証部として機能し、カーネル検証用の公開鍵505を用いて、カーネル署名506の検証を行い、成功したか否かを判定する。カーネル改ざん検知部304は、カーネル署名506の検証に失敗した場合は、カーネル312の改ざんが行われていると判断し、ステップS615に進み、操作パネル210にエラーメッセージを表示し、図6の処理を終了する。一方、カーネル改ざん検知部304は、カーネル署名506の検証に成功した場合、カーネル312の改ざんが行われていないと判断し、ステップS607に進む。
In step S606, the
ステップS607では、CPU201は、起動部として機能し、ローダー311により、RAM203に読み込まれたカーネル312を起動する。カーネル312が起動されると、CPU201は、ステップS608に進む。
In step S607, the
ステップS608では、CPU201は、カーネル312により、各種初期化処理を実行する。カーネル312に含まれるInitrd改ざん検知部305は、フラッシュメモリ214からInitrd313とInitrdの署名509をRAM203に読み込む。Initrd改ざん検知部305は、検証部として機能し、Initrd検証用の公開鍵507を用いて、Initrd313の署名509の検証を行い、成功したか否かを判定する。Initrd改ざん検知部305は、Initrd313の署名509の検証に失敗した場合、Initrd313の改ざんが行われていると判断し、ステップS615に進み、操作パネル210にエラーメッセージを表示し、図6の処理を終了する。一方、Initrd改ざん検知部305は、Initrd313の署名509の検証に成功した場合、Initrd313の改ざんが行われていないと判断し、ステップS609に進む。
In step S608, the
ステップS609では、CPU201は、起動部として機能し、カーネル312により、Initrd313を起動する。Initrd313に含まれる起動時検証部306が起動されると、起動時検証部306は、ステップS610に進む。
In step S609, the
ステップS610では、起動時検証部306は、フラッシュメモリ214に保存されている起動時検証の正解値リスト315を読み込み、正解値リスト315に記載されたコントローラソフト314に含まれる全プログラムのハッシュ値402を取得する。そして、起動時検証部306は、フラッシュメモリ214に保存されるコントローラソフト314内の全プログラムのハッシュ値を計算する。起動時検証部306は、検証部として機能し、その計算したハッシュ値と正解値リスト315のハッシュ値402との比較を行うことにより、コントローラソフト314内の全プログラムの改ざんの検証を行う。起動時検証部306は、比較の結果、コントローラソフト314内の少なくとも1個のプログラムの検証に失敗し、コントローラソフト314内の少なくとも1個のプログラムの改ざんが行われていると判断した場合には、ステップS612に進む。一方、起動時検証部306は、比較の結果、コントローラソフト314内の全プログラムの検証に成功し、コントローラソフト314内の全プログラムの改ざんが行われていないと判断した場合には、ステップS611に進む。
In step S610, the
ステップS611では、起動時検証部306は、コントローラソフト314が複数のプログラムファイルに分割されているため、起動部として機能し、複合機100の起動に必要なコントローラソフト314内のプログラムを順次起動する。起動が完了すると、起動時検証部306は、図6の処理を終了する。
In step S611, the start-up
ステップS612では、起動時検証部306は、表示制御部として機能し、操作パネル210にエラーメッセージを表示するように制御し、ステップS613に進む。
In step S612, the
ステップS613では、起動時検証部306は、コントローラソフト314内の管理サーバ通信部308を起動するため、検証部として機能し、コントローラソフト314内の管理サーバ通信部(通信モジュール)308の改ざんの検証を行う。起動時検証部306は、フラッシュメモリ214に保存されている管理サーバ通信部308のハッシュ値を計算し、その計算したハッシュ値と起動時検証用の正解値リスト315のハッシュ値402とを比較する。起動時検証部306は、比較の結果、管理サーバ通信部308の改ざんが行われていないと判断した場合には、ステップS614に進み、管理サーバ通信部308の改ざんが行われていると判断した場合には、図6の処理を終了する。
In step S613, the
ステップS614では、起動時検証部306は、管理サーバ通信部308を起動し、ステップS616に進む。なお、ステップS614で起動するコントローラソフト314のプログラムは、単一のプログラムでもよいし、連携する複数のプログラムでもよい。
In step S614, the
ステップS616では、管理サーバ通信部308は、ネットワーク118を介して管理サーバ102に、コントローラソフト314内のプログラムの改ざんが行われている旨を、複合機100のシリアルナンバーおよびエラーコードと共に通知する。この際、管理サーバ通信部308は、通知部として機能する。なお、複合機100のシリアルナンバーは、複合機100の識別子であればよい。管理サーバ102は、外部装置である。管理サーバ102の通信先については、事前に複合機100の管理サーバ通信部308にハードコーディングされていてもよいし、複合機100のユーザーモードやサービスモードなどから設定したものを使用できる仕組みとしてもよい。管理サーバ102に通知後は、複合機100は、ステップS612で操作パネル210にエラーメッセージを表示したまま、停止する。
In step S616, the management
以上により、複合機100は、起動時に改ざんが検知された場合、管理サーバ102に対して、改ざんが行われている旨を通知することで、早期に複合機100の復旧を行うことが可能になる。
As described above, when the
なお、複合機100は、上記の実施形態に限らず、様々な変形が可能である。上記の実施形態では公開鍵が異なるものがあるとして説明したが、同じものがあってもよい。また、各プログラムの保存場所としてROM202、フラッシュメモリ214およびHDD204があるものとして説明したが、保存場所を限定するものではなく、別の記憶媒体があってもよい。またプログラムの保存場所が説明した箇所になくてもよく、例えばROM202上にローダー311を記憶する構成であってもよい。
The
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other embodiments)
The present invention supplies a program that realizes one or more functions of the above-described embodiment to a system or device via a network or storage medium, and one or more processors in the computer of the system or device reads and executes the program. It can also be realized by the processing to be performed. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。 It should be noted that all of the above embodiments merely show examples of embodiment in carrying out the present invention, and the technical scope of the present invention should not be construed in a limited manner by these. That is, the present invention can be implemented in various forms without departing from the technical idea or its main features.
100 複合機、213 埋め込みコントローラ、301 BIOS改ざん検知部、302 ローダー改ざん検知部、304 カーネル改ざん検知部、305 Initrd改ざん検知部、306 起動時検証部、308 管理サーバ通信部、309 ブートプログラム、310 BIOS、311 ローダー、312 カーネル、313 Initrd、314 コントローラソフト、315 起動時検証用正解値リスト
100 compound machine, 213 embedded controller, 301 BIOS tampering detection unit, 302 loader tampering detection unit, 304 kernel tampering detection unit, 305 Initial tamdisk detection unit, 306 startup verification unit, 308 management server communication unit, 309 boot program, 310
Claims (12)
前記第1のソフトウェアモジュールが起動すると、第2のソフトウェアモジュール内のプログラムの改ざんの検証を行う第1の検証手段と、
前記第2のソフトウェアモジュール内の少なくとも1個のプログラムの改ざんが行われ、前記第2のソフトウェアモジュール内の通信モジュールの改ざんが行われていないと判断された場合には、前記第2のソフトウェアモジュール内の通信モジュールを起動し、改ざんが行われている旨を外部装置に通知する通知手段と
を有することを特徴とする情報処理装置。 The first boot means for booting the first software module in response to the boot program boot,
When the first software module is started, the first verification means for verifying the tampering of the program in the second software module and the first verification means.
When it is determined that at least one program in the second software module has been tampered with and the communication module in the second software module has not been tampered with, the second software module An information processing device characterized by having a notification means for activating a communication module inside and notifying an external device that tampering has been performed.
前記第3のソフトウェアモジュールが起動すると、前記第1のソフトウェアモジュールの改ざんの検証を行う第3の検証手段とをさらに有し、
前記第1の起動手段は、前記第1のソフトウェアモジュールの改ざんが行われていないと判断された場合に、前記第1のソフトウェアモジュールを起動することを特徴とする請求項1〜6のいずれか1項に記載の情報処理装置。 A third boot means that boots the third software module in response to the boot program boot,
When the third software module is started, it further has a third verification means for verifying tampering with the first software module.
Any of claims 1 to 6, wherein the first activation means activates the first software module when it is determined that the first software module has not been tampered with. The information processing apparatus according to item 1.
前記第1のソフトウェアモジュールが起動すると、第2のソフトウェアモジュール内のプログラムの改ざんの検証を行う第1の検証ステップと、
前記第2のソフトウェアモジュール内の少なくとも1個のプログラムの改ざんが行われ、前記第2のソフトウェアモジュール内の通信モジュールの改ざんが行われていないと判断された場合には、前記第2のソフトウェアモジュール内の通信モジュールを起動し、改ざんが行われている旨を外部装置に通知する通知ステップと
を有することを特徴とする情報処理装置の処理方法。 The first boot step, which boots the first software module in response to the boot program boot,
When the first software module is started, the first verification step of verifying the tampering of the program in the second software module and
When it is determined that at least one program in the second software module has been tampered with and the communication module in the second software module has not been tampered with, the second software module A processing method of an information processing device, which comprises a notification step of activating a communication module in the device and notifying an external device of the fact that tampering has been performed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020006740A JP2021114156A (en) | 2020-01-20 | 2020-01-20 | Information processing apparatus, processing method thereof, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020006740A JP2021114156A (en) | 2020-01-20 | 2020-01-20 | Information processing apparatus, processing method thereof, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021114156A true JP2021114156A (en) | 2021-08-05 |
Family
ID=77077621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020006740A Pending JP2021114156A (en) | 2020-01-20 | 2020-01-20 | Information processing apparatus, processing method thereof, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021114156A (en) |
-
2020
- 2020-01-20 JP JP2020006740A patent/JP2021114156A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102347703B1 (en) | Information processing apparatus, method for controlling same, and storage medium | |
US10225426B2 (en) | Image forming apparatus having firmware update function, method of controlling the same, program for executing the method, and storage medium | |
US20200401688A1 (en) | Information processing apparatus, control method of the same, and storage medium | |
JP2019212114A (en) | Information processing device, control method thereof, and program | |
US11681809B2 (en) | Information processing apparatus, control method, and storage medium | |
JP2020057040A (en) | Information processing device, control method therefor, and program | |
JP2022135443A (en) | Information processor, method for processing information, and program | |
US11526597B2 (en) | Information processing apparatus, method of controlling the same, and storage medium | |
JP7374780B2 (en) | Information processing device and method of controlling the information processing device | |
JP2020082441A (en) | Image formation device, control method and program of the same | |
JP2021114156A (en) | Information processing apparatus, processing method thereof, and program | |
KR102402373B1 (en) | Information processing apparatus, and information processing method | |
JP7182966B2 (en) | Information processing device, method for starting information processing device, and program | |
US11907375B2 (en) | System and method for signing and interlocking a boot information file to a host computing system | |
JP2021140601A (en) | Information processing device, control method therefor, and program | |
JP2020052597A (en) | Information processing apparatus, control method thereof, and program | |
JP2020154601A (en) | Information processing device and its control method, and program | |
US11928217B2 (en) | Information processing apparatus, control method of information processing apparatus, and storage medium | |
JP2023172570A (en) | Information processing device and control method for information processing device | |
JP2021117523A (en) | Information processing apparatus, method for processing information processing apparatus, and program | |
JP2021128469A (en) | Information processor and boot method for information processor | |
JP2022157063A (en) | Information processing device, information processing method and program | |
JP2021117589A (en) | Information processing apparatus, method for processing information processing apparatus, and program |