(57)【要約】  情報処理装置の構成変更を行った際のセキュリティを確保する技術を提供するため、情報処理装置に接続すべき構成要素の情報を参照用構成情報として構成記憶部に記憶し、前記情報処理装置の起動時に接続している構成要素の情報である構成情報を検出し、前記情報処理装置の起動時に、検出した前記構成情報と前記参照用構成情報とを比較し、前記比較の結果、検出した前記構成情報と前記参照用構成情報とが一致しない場合に、前記情報処理装置の起動を停止し、前記情報処理装置の起動完了後、当該情報処理装置の動作中に、構成変更を監視し、前記監視により前記情報処理装置の動作中に構成変更が認識された場合、前記参照用構成情報を構成変更後の情報に更新する。
2010113282.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置に接続しうる構成要素の情報を参照用構成情報として記憶した構成記憶部と、
前記情報処理装置の起動時に接続される構成要素の情報である構成情報を検出する検出部と、
前記情報処理装置の起動時に、検出した前記構成情報と前記参照用構成情報とを比較する比較部と、
前記比較の結果、検出した前記構成情報と前記参照用構成情報とが一致しない場合に、前記情報処理装置の起動を停止する起動制御部と、
前記情報処理装置の起動完了後、当該情報処理装置の動作中に、構成変更を監視する変更監視部と、
前記監視により前記情報処理装置の動作中に構成変更が認識された場合、前記参照用構成情報を構成変更後の情報に更新する動的更新部と、
を備えた情報処理装置。
【請求項２】
前記監視により前記情報処理装置の動作中に構成変更が認識された場合、前記参照用構成情報の更新前に、前記比較部が、前記構成情報と前記参照用構成情報とを比較し、
前記比較の結果、前記構成情報と前記参照用構成情報とが一致しない場合に、前記参照用構成情報の更新を中止する請求項１に記載の情報処理装置。
【請求項３】
情報処理装置に接続しうる構成要素の情報を参照用構成情報として構成記憶部に記憶する手順と、
前記情報処理装置の起動時に接続される構成要素の情報である構成情報を検出する手順と、
前記情報処理装置の起動時に、検出した前記構成情報と前記参照用構成情報とを比較する手順と、
前記比較の結果、検出した前記構成情報と前記参照用構成情報とが一致しない場合に、前記情報処理装置の起動を停止する手順と、
前記情報処理装置の起動完了後、当該情報処理装置の動作中に、構成変更を監視する手順と、
前記監視により前記情報処理装置の動作中に構成変更が認識された場合、前記参照用構成情報を構成変更後の情報に更新する手順と、
を情報処理装置が実行する制御方法。
【請求項４】
前記監視により前記情報処理装置の動作中に構成変更が認識された場合、前記参照用構成情報の更新前に、前記構成情報と前記参照用構成情報とを比較する手順と、
前記比較の結果、再検出した前記構成情報と前記参照用構成情報とが一致しない場合に、前記参照用構成情報の更新を中止する手順とを前記情報処理装置が実行する請求項３に記載の制御方法。
【請求項５】
情報処理装置に接続しうる構成要素の情報を参照用構成情報として構成記憶部に記憶する手順と、
前記情報処理装置の起動時に接続される構成要素の情報である構成情報を検出する手順と、
前記情報処理装置の起動時に、検出した前記構成情報と前記参照用構成情報とを比較する手順と、
前記比較の結果、検出した前記構成情報と前記参照用構成情報とが一致しない場合に、前記情報処理装置の起動を停止する手順と、
前記情報処理装置の起動完了後、当該情報処理装置の動作中に、構成変更を監視する手順と、
前記監視により前記情報処理装置の動作中に構成変更が認識された場合、前記参照用構成情報を構成変更後の情報に更新する手順と、
を情報処理装置に実行させるための制御プログラム。
【請求項６】
前記監視により前記情報処理装置の動作中に構成変更が認識された場合、前記参照用構成情報の更新前に、前記構成情報と前記参照用構成情報とを比較する手順と、
前記比較の結果、再検出した前記構成情報と前記参照用構成情報とが一致しない場合に、前記参照用構成情報の更新を中止する手順とを前記情報処理装置に実行させるための請求項５に記載の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、情報処理装置の構成変更を検証する技術に関する。
【背景技術】
【０００２】
情報処理装置のセキュリティ上の脅威としては、コンピュータウィルスやネットワークを介した攻撃が広く知られているが、このほか、当該情報処理装置にセキュリティホールとしてのバックドアとなり得るデバイスを追加するといった物理的な手法が考えられる。【０００３】
例えば、情報漏えいを防止するため、管理者が意図しない通信ユニットや入出力装置を接続しない運用ポリシーを定めていたとしても、ユーザが勝手に入出力装置を接続してしまうケースがある。【０００４】
そこで、情報処理装置の構成情報を予めＴＰＭ（Trusted Platform Module）といった耐タンパ性をもつチップに記憶させておき、起動時に構成情報を収集して、ＴＰＭに記憶させた情報と照合して変更が無いかどうかを検証する情報処理装置がある。【０００５】
また、本願発明に関連する先行技術として、例えば、下記の特許文献に開示される技術がある。【０００６】
【特許文献１】特開２００６−０９２５３３号公報
【特許文献２】特開２００６−３２３８１４号公報
【特許文献３】特開２００２−０６３０３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
前述のように、起動時に構成変更を検証する情報処理装置は、正当な構成変更を行った場合であっても、構成変更を検出し、起動処理を中止するといった問題がある。【０００８】
このため正当な構成変更を行った際には、構成変更の検証機能をＯＦＦにし、再起動後に構成変更の検証機能をＯＮにすることが考えられる。【０００９】
例えば、動的再構成機能としてのＤＲ(Dynamic Reconfiguration)により、情報処理装置の稼働中に構成変更した場合に、検証機能をＯＦＦにすると、次回の再起動までのセキュリティが、確保できない。また、検証機能をＯＮにし忘れる可能性がある。【００１０】
そこで本件は、情報処理装置の構成変更を行う際のセキュリティを確保する技術を提供する。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本件の一実施形態である情報処理装置は、
情報処理装置に接続しうる構成要素の情報を参照用構成情報として記憶した構成記憶部と、
前記情報処理装置の起動時に接続される構成要素の情報である構成情報を検出する検出部と、
前記情報処理装置の起動時に、検出した前記構成情報と前記参照用構成情報とを比較する比較部と、
前記比較の結果、検出した前記構成情報と前記参照用構成情報とが一致しない場合に、前記情報処理装置の起動を停止する起動制御部と、
前記情報処理装置の起動完了後、当該情報処理装置の動作中に、構成変更を監視する変更監視部と、
前記監視により前記情報処理装置の動作中に構成変更が認識された場合、前記参照用構成情報を構成変更後の情報に更新する動的更新部と、を備えた。
【発明の効果】
【００１２】
開示の技術は、情報処理装置の構成変更を行う際のセキュリティを確保する技術を提供できる。
【図面の簡単な説明】
【００１３】
【図１】情報処理装置の概略図
【図２】構成情報の説明図
【図３】初回起動時の制御方法の説明図
【図４】２回目以降の起動時の制御方法を示す図
【図５】情報処理装置の動作中に構成変更した場合の制御方法の説明図
【発明を実施するための最良の形態】
【００１４】
図１は構成変更の検証機能を有した情報処理装置の概略図である。図１の情報処理装置１０は、ＣＰＵ（Central Processing Unit）１、コントローラ２、ＲＡＭ（Random Access Memory）３、ディスプレイ４、ブートＲＯＭ（Read Only Memory）５、ＴＰＭ６、拡張デバイス７、記憶装置８を備えている。【００１５】
ＲＡＭ３は、ＣＰＵ１からの読み書きが可能なメインメモリである。
ディスプレイ４は、ＣＰＵ１の処理結果等の情報を表示する。【００１６】
ブートＲＯＭ５は、情報処理装置を起動させるためのブートローダや、ＢＩＯＳ（Basic Input/Output System）を記憶する。【００１７】
コントローラ２は、ＣＰＵ１の処理により出力される命令に基づき各デバイス３−８を制御する。例えば、コントローラ２は、ＣＰＵ１からの表示命令に基づきビデオ信号を生成してディスプレイ４に画像を表示させる。また、コントローラ２は、ＣＰＵ１からのよ命令に基づきＲＡＭ３や、ブートＲＯＭ５、記憶装置８に対する情報の読み書きを制御する。【００１８】
ＴＰＭ６は、Trusted Computing Groupという団体で策定された使用に基づく半導体チップであり、セキュリティ機能を提供する。ＴＰＭ６は、プロセッサ６１、メモリ６２、ＰＣＲ(Platform Configuration Register)６３を備え、乱数生成、ハッシュ演算、公開鍵の生成、秘密鍵の生成を行う。プロセッサ６１は、構成記憶部としてのＰＣＲ６３に構成情報を記憶させる。プロセッサ６１は、ＰＣＲ６３に値を書き込む場合、現在のＰＣＲ６３の値と追加したい値をハッシュしたものが格納される。即ち、ＰＣＲ６３の値は、過去の書き込み値とハッシュ化されているので、特定の値に改ざんすることが困難である。また、ＰＣＲ６３の値は、ハッシュ化のときに元データを意図的に欠落させるため、以前の値に変換されることが無い。【００１９】
外部ＣＰＵ９は、情報処理装置１０の動作中に、ＣＰＵ１からのリセット要求に応じてＴＰＭ６へリセット信号を送り、ＴＰＭ６をリセットする。外部ＣＰＵ９は、リセット要求の受信とリセット信号の送信を行うための簡単なプロセッサを含む半導体チップであっても良いし、リセット要求の受信とリセット信号の送信を実行する汎用の情報処理装置であっても良い。【００２０】
拡張デバイス７は、通信制御部や、入出力装置、外部記憶装置など、情報処理装置１０に対して着脱可能なデバイスである。【００２１】
記憶装置８は、記憶媒体を備え、当該記憶媒体にＯＳ (Operating System)や、アプリケーションソフトウェア、構成情報を記憶する。記憶装置８としては、例えば、ＳＳＤ［Solid State Drive］、ＨＤＤ［Hard Disk Drive］、ＢＤ［Blue-ray Disk］ドライブ、ＤＶＤ［Digital Versatile Disk］ドライブ、メモリーカード装置、及び、フレキシブルディスクドライブがある。また、記憶媒体としては、例えば、不揮発性半導体メモリ（フラッシュメモリ）、ハードディスク、ＢＤ、ＤＶＤ、ＣＤ、メモリーカード、及び、フレキシブルディスクがある。以上に例示した記録媒体は、ストレージデバイス３に対して着脱自在であってもよいし、ストレージデバイス３内に固定的に装着されたものであってもよい。なお本形態における記憶媒体は、コンピュータ可読媒体である。【００２２】
ＣＰＵ１は、ＯＳやＢＩＯＳを実行することにより、構成登録部、検出部、比較部、起動制御部、変更監視部、動的更新部として機能する。【００２３】
検出部としてのＣＰＵ１は、情報処理装置１０の起動時に接続している構成要素の情報である構成情報を検出する。【００２４】
構成登録部としてのＣＰＵ１は、情報処理装置１０に接続すべき構成要素の情報を参照用構成情報として構成記憶部としてのＰＣＲ６３に記憶させる。構成登録部は、起動時だけでなく、ＯＳ動作中にも、構成変更があれば構成情報をＰＣＲ６３に記憶させる。【００２５】
図２は、構成情報の説明図である。本例では、ＰＣＲ６３のＰＣＲ［０］〜ＰＣＲ［５］の領域に所定の情報を記憶させる。【００２６】
例えば、ＰＣＲ［０］は、情報処理装置本体のファームウェア（コード）やバージョン等、起動毎に変化しにくいものを記憶する。【００２７】
ＰＣＲ［１］は、ＣＰＵやメモリ、ＵＳＢポート等、ハードウェアコンポーネントの設定情報を記憶する。【００２８】
ＰＣＲ［２］は、ＰＣＩカードからロードされるドライバやアプリケーション等、情報処理装置本体以外に加えられたファームウェアコードモジュールを記憶する。【００２９】
ＰＣＲ［３］は、ＰＣＲ［２］で測定したコードに関連した設定をＰＣＲ［３］に記憶する。【００３０】
ＰＣＲ［４］は、ＯＳ  Ｌｏａｄｅｒに係る情報を記憶する。ＯＳ  ＬｏａｄｅｒはＯＳを起動させるためのプログラムで実際にはＯＳの一部として提供される。【００３１】
ＰＣＲ［５］は、ＯＳ起動ディスクのパス等、ＯＳ  Ｌｏａｄｅｒの設定情報を記憶する。【００３２】
比較部としてのＣＰＵ１は、情報処理装置１０の起動時に、検出した構成情報と参照用構成情報とを比較する。【００３３】
起動制御部としてのＣＰＵ１は、比較の結果、検出した構成情報と参照用構成情報とが一致しない場合に、情報処理装置１０の起動を停止する。【００３４】
変更監視部としてのＣＰＵ１は、情報処理装置１０の起動完了後、当該情報処理装置１０の動作中に、構成変更を監視する。【００３５】
動的更新部としてのＣＰＵ１は、前記監視により情報処理装置１０の動作中に構成変更が認識された場合、参照用構成情報を構成変更後の情報に更新する。
を備えた情報処理装置。【００３６】
本例において、ＣＰＵ１やＲＡＭ３、ディスプレイ４、デバイス７、記憶部８は、それぞれ複数を接続することが可能である。また、ＣＰＵ１やコントローラ２、ＲＡＭ３、ディスプレイ４、記憶部８は、ＤＲによる着脱が可能である。【００３７】
上述の構成を備えた情報処理装置が、制御プログラムに従って実行する制御方法について図３−図５に示す。図３は初回起動時の制御方法の説明図である。【００３８】
先ず、情報処理装置の電源がＯＮされると、外部ＣＰＵ９は、ＴＰＭ６にリセット信号を送り、ＴＰＭ６をリセットさせる（Ｓ１）。次に、ＣＰＵ１は、ブートＲＯＭ５の起動プログラムを読み出して実行する（Ｓ２）。ここで、ＴＰＭ６へのリセット信号は、起動のタイミングを通知する信号であり、ＴＰＭ６の所定の入力端子に入力される。なお、情報処理装置の電源がＯＮされた際に、外部ＣＰＵ９は、ＴＰＭ６へ電力供給を開始させ、当該電力の供給開始をリセット信号としても良い。【００３９】
また、ＣＰＵ１は、起動プログラムに従い、情報処理装置１０に接続しているデバイスを初期化し、検出部として初期化したデバイスから構成情報を検出する（Ｓ３）。【００４０】
構成登録部としてのＣＰＵ１は、検出した構成情報をＴＰＭ６のＰＣＲ６３に参照用構成情報として記憶させる（Ｓ４）。【００４１】
更に、ＣＰＵ１は、起動プログラムに従い、記憶装置８からＯＳを読み出して起動を開始し（Ｓ５）、ＯＳの起動を完了して情報処理装置１０をユーザが利用可能な状態とする（Ｓ６）。【００４２】
ＯＳの起動完了後、ユーザが入力装置を介してセキュアブート機能をＯＮにする操作を行うと、ＣＰＵ１は、ＯＳに従い、セキュアブート機能の初期化処理を開始し（Ｓ７）、構成情報をＴＰＭ６から取得して、記憶装置８中のＯＳの保存領域に、前回の構成情報として記憶させる（Ｓ８）。ここでセキュアブート機能をＯＮにしたことで、次回のＯＳ起動よりセキュアブートが有効となる。なお、セキュアブート機能がＯＮかＯＦＦかは、ＣＰＵ１が記憶装置８に記憶させておく。【００４３】
図４は２回目以降の起動時の制御方法を説明する図である。【００４４】
先ず、情報処理装置の電源がＯＮされると、外部ＣＰＵ９は、ＴＰＭ６にリセット信号を送り、ＴＰＭ６をリセットさせる（Ｓ２１）。次に、ＣＰＵ１は、ブートＲＯＭ５の起動プログラムを読み出して実行する（Ｓ２２）。【００４５】
また、ＣＰＵ１は、起動プログラムに従い、情報処理装置１０に接続しているデバイスを初期化し、検出部として初期化したデバイスから構成情報を検出する（Ｓ２３）。【００４６】
構成登録部としてのＣＰＵ１は、検出した構成情報をＴＰＭ６のＰＣＲ６３に参照用構成情報として記憶させる（Ｓ２４）。【００４７】
更に、ＣＰＵ１は、起動プログラムに従い、記憶装置８からＯＳを読み出して起動を開始し（Ｓ２５）、ＯＳの起動を完了して情報処理装置１０をユーザが利用可能な状態とする（Ｓ２６）。【００４８】
ここで、ＣＰＵ１は、記憶装置８を参照し、セキュアブート機能がＯＮであれば、セキュアブート処理を開始する（Ｓ２６）。比較部としてのＣＰＵ１は、ＴＰＭ６のＰＣＲ６３から参照用構成情報を読み出し、記憶部８から前回の構成情報を読み出して、比較する（Ｓ２８）。【００４９】
起動制御部としてのＣＰＵ１は、比較の結果、参照用構成情報と前回の構成情報とが一致していれば（Ｓ２９，Ｙｅｓ）、ＯＳを起動し（Ｓ３０）、参照用構成情報と前回の構成情報とが一致していなければ（Ｓ２９，Ｎｏ）、ＯＳの起動を中止する（Ｓ３１）。【００５０】
このように、参照用構成情報と前回の構成情報とが異なれば、ＯＳが起動しないので、意図しないデバイスが接続されたまま、情報処理装置を動作させてしまうことが防止される。【００５１】
図５は、ＤＲで構成変更した場合の制御方法の説明図である。
図３又は図４の起動完了後、情報処理装置１０の動作中に、ユーザがＤＲにより構成の変更を行うと、変更監視部としてのＣＰＵ１が構成変更を認識する（Ｓ４１）。【００５２】
前記監視により情報処理装置１０の動作中に構成変更が認識された場合、ＣＰＵ１は、セキュアブート機能をＯＦＦにし（Ｓ４２）、比較部として参照用構成情報と前回の構成情報を比較し、変更がないことを確認する（Ｓ４３）。参照用構成情報と前回の構成情報とが異なっていた場合、ＣＰＵ１は処理を中断する。即ち、この段階で不正にデバイスが追加されている或いはデバイスが抜き取られている場合、処理を中断する。もし不正な構成変更に気づかずにＳ４８以降の処理を実行してしまうと、参照用構成情報と前回の構成情報とを一致させてしまうため、予め構成変更がないかどうかを確認する。【００５３】
Ｓ４３において参照用構成情報と前回の構成情報とが一致した場合に、ＣＰＵ１は、ＯＳに従い、ＤＲによる構成の変更を実行する。即ち、ＣＰＵ１は、追加したデバイスを有効にする、或いは抜脱したデバイスを無効にする（Ｓ４４）。ＯＳのＤＲ処理によっては、Ｓ４４の処理は、後述するＳ４５、Ｓ４６、Ｓ４７の処理中もしくは処理後に実行される場合もある。【００５４】
ＣＰＵ１は外部ＣＰＵ９にリセット要求を送り、ＴＰＭ６をリセットさせる（Ｓ４５）。【００５５】
検出部としてのＣＰＵ１は、情報処理装置１０に接続しているデバイスを再検出する（Ｓ４６）。構成登録部としてのＣＰＵ１は、再検出した構成情報を参照用構成情報としてＰＣＲ６３に登録する（Ｓ４７）。【００５６】
次にＣＰＵ１は、セキュアブート機能をＯＮにし（Ｓ４８）、セキュアブート機能の初期化処理を開始する（Ｓ４９）。動的更新部としてのＣＰＵ１は、構成情報をＴＰＭ６から取得して、記憶装置８中のＯＳの保存領域に、前回の構成情報として記憶させる（Ｓ５０）。【００５７】
以上のように本実施形態によれば、情報処理装置１０の動作中に構成変更が生じた場合、直ちに参照用構成情報を更新し、前回の構成情報と整合させるため、次回の起動時に起動処理が中断することがない。【００５８】
また、情報処理装置の動作中に構成変更を行っても次回のセキュアブートをＯＦＦにする必要がなく、次回起動時のセキュリティレベルを低下させることがない。【００５９】
本発明は、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【図１】
2010113282.tif 000003
【図２】
2010113282.tif 000004
【図３】
2010113282.tif 000005
【図４】
2010113282.tif 000006
【図５】
2010113282.tif 000007
【国際調査報告】
2010113282.tif 000008
2010113282.tif 000009
2010113282.tif 000010
2010113282.tif 000011