JP7322233B2 - 起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及び改ざん検知方法 - Google Patents

起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及び改ざん検知方法 Download PDF

Info

Publication number
JP7322233B2
JP7322233B2 JP2022064235A JP2022064235A JP7322233B2 JP 7322233 B2 JP7322233 B2 JP 7322233B2 JP 2022064235 A JP2022064235 A JP 2022064235A JP 2022064235 A JP2022064235 A JP 2022064235A JP 7322233 B2 JP7322233 B2 JP 7322233B2
Authority
JP
Japan
Prior art keywords
software
information processing
processing apparatus
restart
executed
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.)
Active
Application number
JP2022064235A
Other languages
English (en)
Other versions
JP2022087195A (ja
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.)
Canon Inc
Original Assignee
Canon Inc
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
Priority claimed from JP2018121326A external-priority patent/JP7059127B2/ja
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2022064235A priority Critical patent/JP7322233B2/ja
Publication of JP2022087195A publication Critical patent/JP2022087195A/ja
Application granted granted Critical
Publication of JP7322233B2 publication Critical patent/JP7322233B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及び改ざん検知方法に関する。
起動時に実行されるソフトウェア(以下、起動対象ソフトウェア)の改ざんを検知(以下、改ざん検知と呼ぶ)して、改ざんが検知された起動対象ソフトウェアを実行しない機能を有する情報処理装置が知られている。起動時に起動対象ソフトウェアの改ざんを検知するのに要する時間によって、情報処理装置の起動時間が長期化する。
また、印刷装置や読取装置などの組込システム等では、装置の起動処理が所定時間内に完了しないときに、装置を再起動する再起動機能が知られている(特許文献1)。特許文献1では、BIOSによる起動処理中に何らかの異常が発生して、監視時間をカウントし終えるまでにBIOSによる起動処理が完了しなかったら、電子機器を再起動する。
特開2012-22469号公報
特許文献1には、起動対象ソフトウェアの改ざんを検知することについては何ら言及されていない。引用文献1に開示される電子機器において起動対象ソフトウェアの改ざんを検知すると、異常が発生していないにも関わらず、改ざん検知に要する時間に起因する起動時間の長期化によって、電子機器が再起動してしまう。
そこで、本発明は、起動対象ソフトウェアの改ざんの検知に起因する起動時間の長期化によって、情報処理装置が再起動するのを禁止する、ことを目的とする。
上記の課題を解決するため、起動指示に従って実行される複数のソフトウェアの少なくとも1つの改ざんを検知する検知手段と、前記起動指示を受信してから所定時間を計測する計測手段と、前記計測手段によって前記所定時間が計測されると情報処理装置を再起動する再起動手段と、前記計測手段に対して所定の処理を実行させる制御手段と、を有し、前記制御手段は、前記検知手段によって改ざんを検知する機能が有効な状態で、前記複数のソフトウェアの一部のソフトウェアの実行をするまで、前記再起動を実行させないための処理または前記再起動の実行を遅らせるための処理を前記計測手段に実行させず、前記一部のソフトウェアを実行し且つ他部のソフトウェアの改ざん検知を開始するまでに、前記再起動を実行させないための処理または前記再起動の実行を遅らせるための処理を前記計測手段に実行させることを特徴とする。
本発明によれば、改ざんの検知に起因する起動時間の長期化によって、情報処理装置が再起動するのを禁止することができる。
画像形成装置1のハード構成図 HDD103に記憶されているソフトウェアを示した図 起動時に実行する処理を示したフローチャート BIOSが実行する処理を示したフローチャート Loaderが実行する処理を示したフローチャート Initrdが実行する処理を示したフローチャート WDTが実行する処理を示したフローチャート 起動時に実行する処理を示したフローチャート WDTの構成を示すブロック図 WDTの不揮発領域に改ざん検知機能の有効/無効を示す情報を記憶するフローチャート
以下、図面を参照して本発明の実施の形態を詳しく説明する。
本実施形態では、情報処理装置として、プリント機能及びスキャン機能を有する画像形成装置を例に説明する。
<第1実施形態>
図1は、画像形成装置1のハード構成図である。
本実施形態の画像形成装置1は、起動時に実行される起動対象ソフトウェア(BIOS、Loader、Initrd、Firmware)の改ざんを検知して、改ざんが検知されたソフトウェアを実行しない機能(改ざん検知機能)を有する。
中央演算処理部(以下、CPU)101は、画像形成装置1を稼働させるためのソフトウェアを実行する。システムバス102は、CPU101と周辺ユニットとを通信可能に接続する、および、周辺ユニット同士を通信可能に接続する通信路である。周辺ユニットとは、HDD103、RAM104、ネットワークコントローラ105、USBホストコントローラ107、及び、電力制御部109を含む。また、周辺ユニットは、ディスプレイコントローラ110、入出力コントローラ112、RTC114、不揮発性メモリ115、スキャナI/F116、及び、プリンタI/F118を含む。
HDD(ハードディスクドライブ)103は、画像形成装置1が動作するために必要な各種プログラム、データベース、一時記憶ファイルを記憶する。RAM104には、画像形成装置1のプログラムが展開される。また、RAM104は、プログラムの実行時の変数や、各ユニットからDMA(Dynamic Memory Access)で転送されるデータの格納領域となる。ネットワークコントローラ105は、ネットワーク上の他の機器と通信を行う。USBホストコントローラ107は、USBホストコントローラ107に接続されたUSBデバイスと通信を行う。
ディスプレイ110は、画像形成装置1の動作状況等を表示する。ディスプレイコントローラ111は、入力される信号を用いて、ディスプレイ110に映像を表示する。入力部113は、キーボード、マウス、テンキー、カーソルキー、タッチパネル等であって、ユーザーからの指示を受け付ける。入力部コントローラ112は、入力部113を制御する。入力部113がタッチパネルである場合は、物理的にはディスプレイ111の表面に装着される。RTC(リアルタイムクロック)114は、時計機能、アラーム機能、タイマ機能等を有する。不揮発メモリ115には、改ざん検知機能が有効または無効であることを示す情報(改ざん検知設定)等を記憶する設定領域(記憶部)120が存在する。また、不揮発性メモリ115は、BIOS121を記憶する。不揮発性メモリ115の詳細は後述する。
電力制御部109は、画像形成装置1に設けられるユニットへの電力の供給と停止を制御する。電力制御部109は、プログラマブルなロジックデバイスである。電力制御部109は、General Purpose Input Output(以下、GPIO)を有する。CPU101は、GPIOを介して、電力制御部の所定のレジスタに設定値を記憶する。電力制御部109は、所定のレジスタの設定値に基づいて、ユニットへの電力の供給と停止を制御する。電力制御部109は、WDT(ウオッチドッグタイマ)122を有し、ユーザーから起動指示を受信したタイミングでカウントを開始し、所定時間を計測したときに、画像形成装置1を再起動するリセット信号を出力する。これにより、起動対象ソフトウェアがハングアップした場合に、画像形成装置1を再起動することが可能になる。電力制御部109の特定のレジスタに所定の設定値を設定すると、WDT122によるカウントが停止される。電力制御部109のレジスタの設定値の変更は、ソフト制御によって可能である。
システムバス102には、スキャナI/F116を介して、スキャナ117が接続されている。スキャナ117は、原稿の画像をスキャンし、当該画像の画像データを出力する。また、システムバス102には、プリンタI/F118を介して、プリンタ119が接続されている。プリンタ119は、入力された画像データに基づいて紙などの記録媒体に画像を印刷する。
不揮発メモリ115は、BIOS(Basic Input Output System)121を記憶する。BIOSは、画像形成装置1の各ユニットの初期化を行う。CPU101は、ユーザーから受信した起動指示に従って、BIOS121を実行する。また、不揮発メモリ115には、設定領域120が設けられている。設定領域120には、改ざん検知機能の設定情報(改ざん検知機能が有効か無効かを示す情報)等を記憶する。設定領域120に記憶された設定情報等は、改ざんを意図する者によって容易に書き換えることができないように保護されている。
図2は、HDD103に記憶されているソフトウェアを示した図である。各々のソフトウェアが実行する処理の詳細は後述する。
HDD103には、複数のソフトウェアを記憶可能である。複数のソフトウェアとは、OS(オペレーティングシステム)201、Loader202、Initrd203、及び、Firmware204が記憶されている。
OS201は、多くのソフトウェアが共通して利用する基本的な機能などを有する。Loader202は、OS201及びInitrd203を起動する機能を有する。また、Initrd203は、幾つかのファイルを含んでおり、Loader202がInitrd203をRAM104に展開する。Initrd203は、OS201がファイルシステムを使用できるようになる前にマウントされる初期のファイルシステムである。OS201の起動初期段階において、HDD103のファイルを解釈できない状態であっても、RAM104に展開されたInitrd203に含まれるファイルを代替で使用可能になる。
Firmware204は、プリント処理を行うファームウェアやスキャン処理を行うファームウェアを有する。また、HDD103は、設定ファイル、ユーザーデータ等を記憶する。OS201、Loader202、及び、Initrd203の各々から、OS201のハッシュ値、Loader202のハッシュ値、及び、Initrd203のハッシュ値と比較される比較値を、所定の算出方法で算出しておく。また、Firmware204からFirmware204のハッシュ値と比較される比較値を、所定の算出方法で算出しておく。そして、OS201の比較値、Loader202の比較値、及び、Initrd203の比較値は、不揮発性メモリ120の設定領域120に記憶する。また、Firmware204のハッシュ値と比較される比較値は、HDD103に記憶する。これらの比較値は、後述する改ざん検知で利用される。一般的に、改ざん検知の対象のソフトウェアのデータサイズが大きくなれば、改ざん検知に要する時間が長期化することが知られている。
図3は、起動時に実行する処理を示したフローチャートである。BIOS121が実行する処理、Loader202が実行する処理、及び、Initrd203が実行する処理の詳細は後述する。本実施形態では、BIOS121が、OS201、Loader202、及び、Initrd203の改ざん検知を行う。なお、本実施形態ではBIOS121が、OS201、Loader202、Initrd203の改ざん検知を行うが、起動されたソフトが順番に次のソフトウェアの改ざん検知を行っても良い。例えば、BIOS121がLoader202の改ざん検知を行い、そして、Loader202がOS201及びInitd203の改ざん検知を行っても良い。また、本実施形態では、BIOS121の改ざん検知を行っていないが、当然、BIOS121の改ざん検知を行ってもよい。
CPU101は、不揮発メモリ115に記憶されているBIOS121を読み出し、BIOS121を実行する(S301)。BIOS121は、Loader202、OS201、及び、Initrd203の改ざんを検知する。Loader202、OS201、及び、Initrd203の改ざんが無いと判断すると、CPU101は、HDD103に記憶されているLoader202を読み出し、Loader202を実行する(S302)。次に、Loader202は、OS201及びInitrd203をHDD103から読み出して、RAM104に展開する。そして、CPU101は、OS201及びInitrd203を実行する(S303、S304)。OS201は、図1に記載された各ハードウェアの初期化を行う。また、OS201は、Initrd203を用いて、OS201の起動処理を行う。Initrd203は、RAM104上に仮のファイルシステムを提供し、OS201は、HDD103上のファイルシステムを解釈可能になるまでの間、Initrd203で代用する。ハードウェアの初期化完了後、OS201は、WDT122による所定時間のカウントを停止する(S305)。これにより、WDT122が所定時間のカウントを終了することにより、画像形成装置1が再起動されることを禁止することができる。事前の処理で、WDT122がすでに解除されていたとしても問題は無い。最後に、OS201は、各種ファームウェア204を起動する(S306)。これにより、画像形成装置1が有するプリント機能やスキャン機能が実行可能な状態となる。
図4は、BIOSが実行する処理を示したフローチャートである。
CPU101は、システムバス102に接続された各ハードウェアを認識して、各ハードウェアの初期化処理を行う(S401)。そして、CPU101は、記憶領域120から改ざん検知機能の設定情報を読み出す(S402)。そして、CPU101は、S402で読み出した設定情報に基づいて、改ざん検知機能が有効か否かを判定する(S403)。有効であると判定した場合(S403:Yes)、CPU101は、HDD103に記憶されたOS201、Loader202及びInitrd203を検証して(S404)、OS201、Loader202及びInitrd203の改ざんを検知する。Loader202の改ざんを検知する検知方法は、Loader202のハッシュ値と、記憶領域120上に予め記憶された値と、のを比較により行う。また、OS201の改ざんの検知方法は、OS201のハッシュ値と、記憶領域120上に予め記憶された値と、のを比較により行う。また、Initrd203の改ざんの検知方法は、Initrd203のハッシュ値と、記憶領域120上に予め記憶された値と、のを比較により行う。上記したLoader202のハッシュ値、OS201のハッシュ値、及び、Initrd203のハッシュ値は、公知のアルゴリズム(例えば、SHA-256)を使って算出する。なお、改ざんの検知方法は、上記の方法に限定されない。
そして、CPU101は、OS201、Loader202及びInitrd203のいずれか1つにおいて改ざんを検知した場合(S405:Yes)、CPU101は、WDT122によるカウントを停止する(S406)。そして、CPU101は、起動不良が発生したことを示すエラー情報をディスプレイ111に表示するよう指示する(S407)。WDT122によるカウントを停止することにより、エラー情報が表示された後に、WDT122による画像形成装置1の再起動を禁止することができる。S407の後、CPU101は、以降の処理を実行せず、待機する。本実施形態では、エラー情報がディスプレイ111に表示されるようにしたが、不図示のLEDの点灯や明滅であっても良い。また、エラー情報を外部のサーバ等に送信しても良い。
一方で、改ざん検知機能が無効であると判定した場合(S403:No)、CPU101は、Loader202をHDD103からRAM104に展開する。そして、CPU101は、RAM104に展開されたLoader202を実行する(S408)。また、OS201、Loader202及びInitrd203の全てに改ざんが検知されなかった場合(S405:No)、CPU101は、Loader202をHDD103からRAM104に展開する。そして、CPU101は、RAM104に展開されたLoader202を実行する(S408)。
図5は、Loaderが実行する処理を示したフローチャートである。
CPU101は、記憶領域120から改ざん検知機能の設定情報を読み出す(S501)。そして、CPU101は、読み出した設定情報に基づいて、改ざん検知機能が有効か否かを判定する(S502)。有効であると判定した場合(S502:Yes)、CPU101は、WDT122によるカウントを停止する(S503)。これにより、Initrd203やOS201の改ざんの検知中に、WDT122が画像形成装置1を再起動するのを禁止することができる。最後に、CPU101は、OS201及びInitrd203をRAM104に展開し、RAM104に展開されたOS201及びInitrd203を実行する(S504)。
図6は、Initrdが実行する処理を示したフローチャートである。
CPU101は、記憶領域120から改ざん検知機能の設定情報を読み出す(S601)。そして、CPU101は、読み出した設定情報に基づいて、改ざん検知機能が有効か否かを判定する(S602)。有効であると判定した場合(S602:Yes)、CPU101は、Firmware204を検証して(S603)、Firmware204の改ざんを検知する。Firmware204の改ざんの検知方法は、上記したLoader202等の検知方法と同様であるので、その説明を省略する。
一般的に、図2に記載されるソフトウェアの中では、Firmware204のデータサイズが最も大きいため、Firmware204の改ざんを検知するのに要する時間が相対的に長くなる。検知方法によっては数分オーダーの時間を要する場合があるが、これはWDT122の発動する時間オーダー(秒オーダー)よりも長い。
Firmware204の改ざんを検知した場合(S604:Yes)、CPU101は、起動不良が発生したことを示すエラー情報をディスプレイ111に表示するよう指示する(S605)。なお、WDT122によるカウントは、既に図5のS503で停止済みであるため、本図のフローではWDT122によるカウントの停止は行わない。
一方で、Firmware204の改ざんを検知しなかった場合(S604:No)や、改ざん検知機能が無効である場合(S602:No)、CPU101は、ファイルシステムの初期化を行う(S606)。OS201がHDD103上のファイルシステムを解釈できるようになった時点で、CPU101は、HDD103の領域をマウントし、Firmware204をファイルとして認識した上で、適切な起動順序で実行する。
図7は、WDTが実行する処理を示したフローチャートである。本フローチャートは、画像形成装置1に電力が供給された時点で開始され、図3のソフトウェアの実行フローと並行して実行される。WDT122は、図3のフローでソフトウェアがハングアップした場合に再起動をかけることで起動処理をやり直すために使用されるものである。
まず、WDT122は、カウント値を初期値(例えば、90秒)に設定する(S701)。この初期値は、あらかじめ固定された値でも良いし、CPU101から指示された値や、不揮発領域に記憶された設定値を設定しても良い。続いて、WDT122は、カウントの停止がされたか否かを確認する(S702)。停止された場合(S702:Yes)、処理を終了する。一方で、停止されていない場合(S702:No)、WDT122は、残カウント値を読み、0か否か確認する。(S703)。カウント値が1以上である場合(S703:No)は、WDT122は、カウント値を減らす(S704)。そして、WDT122は、所定時間待機し(S705)、再度S702からのフローを繰り返す。所定時間は、例えば、1秒とする。設定された初期値(例えば、90秒)が経過した場合に、WDT122は、リセット信号を出力する。画像形成装置1は、リセット信号に従って、再起動する。
本実施形態では、WDT122が初期値(例えば、90秒)をカウントしたときに、画像形成装置1が再起動するが、WDT122が初期値をカウントしたときに、画像形成装置1をシャットダウンしても良い。
<第2実施形態>
第1実施形態では、Initrd203の起動後に、WDT122のカウントを停止する例について説明した。この第2実施形態では、BIOS121の起動後に、WDT122によるカウントを停止する。第2実施形態と第1実施形態とでは、WDT122によるカウントを停止するタイミングが異なる。
図8は、起動時に実行する処理を示したフローチャートである。本実施形態でも、BIOS121が、OS201、Loader202、及び、Initrd203の改ざん検知を行う。
CPU101は、不揮発メモリ115に記憶されているBIOS121を読み出し、BIOS121を実行する(S801)。BIOS121は、Loader202、OS201、及び、Initrd203の改ざんを検知する。Loader202、OS201、及び、Initrd203の改ざんが無いと判断すると、WDT122によるカウントを停止する(S802)。
続いて、CPU101は、HDD103に記憶されているLoader202を読み出し、Loader202を実行する(S802)。つまり、本実施形態では、Loader202を実行する前に、WDT122によるカウントを停止する(S802)。S803、S804、S805及びS806は、図3のS302、S303、S304及びS306と同様であるので、その説明を省略する。
<第3実施形態>
第1実施形態では、不揮発性メモリ115に記憶された設定情報に基づいて、WDT122によるカウントを停止した。第3実施形態では、WDT122が有する所定の設定値に基づいて、WDT122によるカウントを停止する。第1実施形態と第3実施形態とでは、WDT122の内部構成が異なっている。
図9は、第3実施形態に係るWDTの構成を示すブロック図である。WDT122は、不揮発領域901を備える。不揮発性領域901は、CPU101の指示に従って、設定情報を記憶する。また、不揮発性領域901は、上記した初期値や、WDT122によるカウントが停止されたことを示す情報を記憶することができる。
図10は、WDTの不揮発領域に改ざん検知機能の有効/無効を示す情報を記憶するフローチャートである。改ざん検知機能の設定を変更したときに、不揮発領域901に所定の設定値を記憶する。ディスプレイ111が備えているタッチパネルやキー操作によって、改ざん検知機能の設定が変更されたときに、本フローが実行される。
CPU101は、改ざん検知機能の設定の変更が、改ざん検知機能を有効にする変更であると判定した場合(S1001:Yes)、CPU101は、記憶領域120に改ざん検知機能が有効であることを示す設定値を記憶する(S1002)。更に、CPU101は、不揮発領域901に、改ざん検知機能が有効であることを示す設定値を書き込む(S1003)。不揮発領域901に改ざん検知機能が有効であることを示す設定値が記憶されている場合、WDT122によるカウントは停止される。なお、不揮発領域901に改ざん検知機能が有効であることを示す設定値が記憶されている場合、WDT122によるカウントを開始しないようにしても良い。これにより、改ざん検知機能によって起動時間が長期化しても、画像形成装置1が再起動するのを禁止することができる。
一方で、CPU101は、改ざん検知機能の設定の変更が、改ざん検知機能を無効にする変更であると判定した場合(S1001:No)、CPU101は、記憶領域120に改ざん検知機能が無効であることを示す設定値を記憶する(S1004)。更に、CPU101は、不揮発領域901に改ざん検知機能が無効であることを示す設定値を書き込む(S1005)。
(その他の実施例)
上記した実施形態では、改ざん検知機能の有効/無効を示す設定値に基づいて、WDT122によるカウントを停止したが、改ざん検知機能の有効/無効を示す設定値に基づいて、WDT122に設定する初期値を変更しても良い。例えば、改ざん検知機能の無効を示す設定値が記憶されていれば、WDT122に90秒を設定し、改ざん検知機能の有効を示す設定値が記憶されていれば、WDT122に90秒より長い270秒を設定する。
上記した実施形態では、改ざん検知機能の有効/無効を示す設定値に基づいて、WDT122によるカウントを停止する例について説明したが、本発明はこれだけに限定されない。例えば、本発明は、改ざん検知機能の有効/無効を示す設定値に基づいて、WDT122がカウントする初期値を改ざん検知による起動時間を考慮して長くしても良い。例えば、改ざん検知機能が無効を示す設定値である場合に、例えば90秒を初期値とし、改ざん検知機能が有効を示す設定値である場合に、例えば270秒を初期値とする。これにより、改ざん検知機能による起動時間が長期化しても、画像形成装置1が再起動するのを禁止することができる。さらに、ソフトのハングアップなどで改ざん検知が途中で停止したとしても、長めに設定した時間で画像形成装置1を再起動することができる。
また、上記した実施形態では、改ざん検知機能の有効/無効を示す設定値に基づいて、WDT122によるカウントを停止する例について説明したが、本発明はこれだけに限定されない。例えば、本発明は、改ざん検知機能の有効/無効を示す設定値に基づいて、WDT122がカウントしたカウント値をリセットしても良い。これにより、WDT122がカウントしたカウント値がリセットされるので、例えば、既にWDT122が30秒をカウントしていたとしても、その30秒がリセットされる。これにより、画像形成装置1が再起動されるまでの時間が30秒だけ延長される。
また、上記した実施形態では、BIOS121がLoader202、OS202及びInitrd203の改ざんを検知する前に、WDT122によるカウントを停止しても良い。
また、上記した実施形態では、改ざん検知機能の有効/無効を示す設定値に基づいて、WDT122によるカウントを停止する例について説明した。が、本発明は、改ざん検知機能の有効/無効を示す設定値に基づいて、WDT122から出力されるリセット信号をマスクする回路を設けても良い。
また、上記した実施形態では、OS201、Loader202、Initrd203及びFirmware204が、HDD203に記憶されている。が、OS201、Loader202及びInitrd203がFlashに記憶され、Firmware204がHDDに記憶されていても良い。
上記した実施形態では、本発明の情報処理装置の一例として画像形成装置1について説明したが、本発明の情報処理装置は、画像形成装置でなくても構わない。例えば、本発明の画像形成装置は、パーソナルコンピュータ、タブレット、スマートフォン、ゲーム機、遊技機、空気調和機、ATMであっても良い。
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給するよう構成することによっても達成される。この場合、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することにより、上記機能が実現されることとなる。なお、この場合、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される場合に限られない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
さらに、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、前述した実施形態の機能が実現される場合も含まれる。つまり、プログラムコードがメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって実現される場合も含まれる。
1 画像形成装置
101 CPU
103 HDD
115 不揮発性メモリ
121 BIOS
120 設定領域
122 WDT
201 OS
202 Loader
203 Initrd

Claims (16)

  1. 起動指示に従って実行される複数のソフトウェアの少なくとも1つの改ざんを検知する検知手段と、
    前記起動指示を受信してから所定時間を計測する計測手段と、
    前記計測手段によって前記所定時間が計測されると情報処理装置を再起動する再起動手段と、
    前記計測手段に対して所定の処理を実行させる制御手段と、を有し、
    前記制御手段は、
    前記検知手段によって改ざんを検知する機能が有効な状態で、
    前記複数のソフトウェアの一部のソフトウェアの実行をするまで、前記再起動を実行させないための処理または前記再起動の実行を遅らせるための処理を前記計測手段に実行させず、
    前記一部のソフトウェアを実行し且つ他部のソフトウェアの改ざん検知を開始するまでに、前記再起動を実行させないための処理または前記再起動の実行を遅らせるための処理を前記計測手段に実行させることを特徴とする情報処理装置。
  2. 前記再起動を実行させないための処理は、前記所定時間の計測を停止させる処理であることを特徴とする請求項1に記載の情報処理装置。
  3. 前記再起動を遅らせるための処理は、前記所定時間を延長することであることを特徴とする請求項1に記載の情報処理装置。
  4. 前記再起動を遅らせるための処理は、前記計測手段による前記所定時間の計測をリセットすることを特徴とする請求項1に記載の情報処理装置。
  5. 前記再起動手段は、前記検知手段によって改ざんを検知する機能が無効な状態で、前記複数のソフトウェアの全てのソフトウェアの実行を完了するまで再起動を実行可能であることを特徴とする請求項1乃至4の何れか1項に記載の情報処理装置。
  6. 前記再起動手段は、前記検知手段よって前記複数のソフトウェアの少なくとも1つの改ざんが検知された場合、再起動を実行しないことを特徴とする請求項1乃至5の何れか1項に記載の情報処理装置。
  7. 前記改ざんが検知されたことを示す情報を出力する出力手段をさらに備えることを特徴とする請求項1乃至6の何れか1項に記載の情報処理装置。
  8. 前記出力手段は、前記改ざんが検知されたことを示す情報を表示する表示手段であることを特徴とする請求項7に記載の情報処理装置。
  9. 前記複数のソフトウェアを実行可能な実行手段をさらに備え、
    前記実行手段は、前記検知手段よって改ざんが検知されなかったソフトウェアを実行することを特徴とする請求項1乃至8の何れか1項に記載の情報処理装置。
  10. 前記実行手段は、前記複数のソフトウェアを所定の順番で実行し、
    前記実行手段によって実行されたソフトウェアが、次に実行されるべきソフトウェアの改ざんを検知する、ことを特徴とする請求項9に記載の情報処理装置。
  11. 前記複数のソフトウェアは、BIOS、Loader、OS、Initrd及びFirmwareの何れか1つを含む、ことを特徴とする請求項1乃至10の何れか1項に記載の情報処理装置。
  12. 前記一部のソフトウェアは、前記BIOS、前記Loaderを少なくとも含み、前記他部のソフトウェアは、Initrdを少なくとも含むことを特徴とする請求項11に記載の情報処理装置。
  13. 前記改ざんを検知する機能が有効または無効を示す情報を記憶する記憶手段と、
    を特徴とする請求項1乃至12のいずれか1に記載の情報処理装置。
  14. 画像を印刷する印刷手段をさらに備える、ことを特徴とする請求項1乃至13の何れか1項に記載の情報処理装置。
  15. 原稿の画像を読み取る読取手段をさらに備える、ことを特徴とする請求項1乃至14の何れか1項に記載の情報処理装置。
  16. 起動指示に従って実行される複数のソフトウェアの少なくとも1つの改ざんを検知する検知工程と、
    前記起動指示を受信してから所定時間を計測する計測工程と、
    前記所定時間が計測されると情報処理装置を再起動する再起動工程と、
    前記検知工程において改ざんを検知する機能が有効な状態で、前記複数のソフトウェアの一部のソフトウェアを実行するまで、前記再起動を実行させないための処理または前記再起動の実行を遅らせるための処理を前記計測工程において実行せず、
    前記一部のソフトウェアを実行し且つ他部のソフトウェアの改ざん検知を開始するまでに、前記再起動を実行させないための処理または前記再起動の実行を遅らせるための処理を前記計測工程において実行する制御工程と、を有することを特徴とする情報処理装置の制御方法。
JP2022064235A 2018-06-26 2022-04-08 起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及び改ざん検知方法 Active JP7322233B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022064235A JP7322233B2 (ja) 2018-06-26 2022-04-08 起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及び改ざん検知方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018121326A JP7059127B2 (ja) 2018-06-26 2018-06-26 起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及びその制御方法
JP2022064235A JP7322233B2 (ja) 2018-06-26 2022-04-08 起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及び改ざん検知方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2018121326A Division JP7059127B2 (ja) 2018-06-26 2018-06-26 起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及びその制御方法

Publications (2)

Publication Number Publication Date
JP2022087195A JP2022087195A (ja) 2022-06-09
JP7322233B2 true JP7322233B2 (ja) 2023-08-07

Family

ID=87519633

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022064235A Active JP7322233B2 (ja) 2018-06-26 2022-04-08 起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及び改ざん検知方法

Country Status (1)

Country Link
JP (1) JP7322233B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008525892A (ja) 2004-12-23 2008-07-17 マイクロソフト コーポレーション モニタを用いてtpmを常に“オン”にロックする方法及びシステム
WO2009013831A1 (ja) 2007-07-26 2009-01-29 Panasonic Corporation 情報処理端末及び改ざん検証方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008525892A (ja) 2004-12-23 2008-07-17 マイクロソフト コーポレーション モニタを用いてtpmを常に“オン”にロックする方法及びシステム
WO2009013831A1 (ja) 2007-07-26 2009-01-29 Panasonic Corporation 情報処理端末及び改ざん検証方法

Also Published As

Publication number Publication date
JP2022087195A (ja) 2022-06-09

Similar Documents

Publication Publication Date Title
US11520894B2 (en) Verifying controller code
TWI530790B (zh) 系統啓動碼恢復方法、運算系統、及供於系統中使用之控制器
JP7059127B2 (ja) 起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及びその制御方法
CN103718165B (zh) Bios闪存攻击保护和通知
TWI522838B (zh) 組配系統之技術
US10720225B2 (en) Information processing apparatus, control method thereof, and storage mediumMD
JP2010086364A (ja) 情報処理装置、動作状態監視装置および方法
US8140836B2 (en) Information processing apparatus and program
JP5561791B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP7322233B2 (ja) 起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及び改ざん検知方法
US20150039937A1 (en) Image forming apparatus, image forming apparatus control method, and recording medium
US20230069169A1 (en) Information processing apparatus and control method of the same
JP2022126549A (ja) 情報処理装置
JP2020086516A (ja) 情報処理装置、情報処理装置の制御方法、及び、プログラム
JP2019200660A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
US11836033B2 (en) Information processing apparatus and control method for controlling information processing apparatus
US20240241662A1 (en) Information processing apparatus and control method therefor
JP2023072170A (ja) 情報処理装置および情報処理装置の制御方法
JP2024004647A (ja) 情報処理装置および情報処理装置の制御方法
JP2020057250A (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP2017102887A (ja) 情報処理装置、起動方法および起動プログラム
JP2020155029A (ja) 情報処理装置とその制御方法、及びプログラム
WO2022159107A1 (en) Application security and mobility
JP2023047420A (ja) 情報処理装置および情報処理装置の制御方法
JP5422690B2 (ja) 情報処理装置及びデータ保護方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220408

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230418

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230608

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: 20230627

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230726

R151 Written notification of patent or utility model registration

Ref document number: 7322233

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151