(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2022-11-11
(45)【発行日】2022-11-21
(54)【発明の名称】情報処理装置、及び制御方法
(51)【国際特許分類】
G06F 21/57 20130101AFI20221114BHJP
G06F 21/45 20130101ALI20221114BHJP
【FI】
G06F21/57
G06F21/45
(21)【出願番号】P 2021182401
(22)【出願日】2021-11-09
【審査請求日】2021-11-09
(73)【特許権者】
【識別番号】505205731
【氏名又は名称】レノボ・シンガポール・プライベート・リミテッド
(74)【代理人】
【識別番号】100161207
【氏名又は名称】西澤 和純
(74)【代理人】
【識別番号】100169764
【氏名又は名称】清水 雄一郎
(74)【代理人】
【識別番号】100175824
【氏名又は名称】小林 淳一
(74)【代理人】
【識別番号】100206081
【氏名又は名称】片岡 央
(72)【発明者】
【氏名】福田 涼
(72)【発明者】
【氏名】荒木 直幸
(72)【発明者】
【氏名】佐々木 健
(72)【発明者】
【氏名】松浦 佑樹
(72)【発明者】
【氏名】三田村 公智
【審査官】宮司 卓佳
(56)【参考文献】
【文献】特開2005-293282(JP,A)
【文献】特開2008-293442(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/57
G06F 21/45
(57)【特許請求の範囲】
【請求項1】
BIOS(Basic Input Output System)のプログラムを記憶する第1のメモリと、
前記第1のメモリに記憶されたプログラムを実行するCPU(Central Processing Unit)と、
少なくとも起動の制御を行うプログラムを記憶する第2のメモリと、
前記第2のメモリに記憶されたプログラムを実行するEC(Embedded Controller)と、
を備え、
前記CPUは、
前記第1のメモリに記憶された前記BIOSのプログラムを実行することにより、
所定の条件が満たされた場合、時間計測の指示を前記ECへ送信するとともに、シャットダウンの指示をする停止制御処理、
を行い、
前記ECは、
前記第2のメモリに記憶されたプログラムを実行することにより、
前記時間計測の指示を取得したことに応じて、時間の計測を開始する計時処理と、
前記計時処理により時間の計測を開始してからの経過時間が予め設定された時間に達するまでは、前記BIOSの起動を禁止する起動制御処理と、
を行う情報処理装置。
【請求項2】
前記ECは、
前記起動制御処理において、前記経過時間が予め設定された時間に達するまでは、前記BIOSの起動のトリガを検出しても、前記BIOSを起動させない、
請求項1に記載の情報処理装置。
【請求項3】
前記ECは、
前記起動制御処理において、前記経過時間が予め設定された時間に達した後は、前記BIOSの起動の禁止を解除し、前記BIOSの起動のトリガを検出した場合、前記BIOSの起動を指示し、
前記CPUは、
前記ECから前記BIOSの起動の指示を受取ることに応じて、前記第1のメモリに記憶された前記BIOSのプログラムを実行する、
請求項1に記載の情報処理装置。
【請求項4】
前記ECは、
前記シャットダウンしている状態において少なくとも前記計時処理を実行可能な動作モードを有し、
前記CPUから前記時間計測の指示を取得したことに応じて、前記動作モードへ遷移する、
請求項1から請求項3のいずれか一項に記載の情報処理装置。
【請求項5】
前記ECは、
前記計時処理による時間の計測中に計測した前記経過時間を随時に不揮発性メモリに記憶させ、自身に供給される電源が喪失した場合には前記計時処理を停止し、当該電源の復帰後に前記計時処理を再開する際に、前記不揮発性メモリに記憶されている前記経過時間から継続して時間の計測を行う、
請求項1から請求項4のいずれか一項に記載の情報処理装置。
【請求項6】
前記CPUは、
前記BIOSのプログラムを実行することにより、前記所定の条件が満たされたか否かを判定することにより不正アクセスを検出する検出処理を行い、
前記検出処理において、前記所定の条件が満たされたと判定した場合、不正アクセスを検出し、
前記検出処理により不正アクセスが検出された場合、前記停止制御処理において、前記時間計測の指示を前記ECへ送信するとともに、シャットダウンの指示をする、
請求項1から請求項5のいずれか一項に記載の情報処理装置。
【請求項7】
前記CPUは、
前記BIOSの起動に応じてパスワード認証による認証処理を行い、
前記認証処理により連続して所定回数以上の認証失敗となった場合、前記検出処理において前記不正アクセスを検出する、
請求項6に記載の情報処理装置。
【請求項8】
BIOS(Basic Input Output System)のプログラムを実行するCPU(Central Processing Unit)と、少なくとも起動の制御を行うプログラムを実行するEC(Embedded Controller)と、を備える情報処理装置における制御方法であって、
前記CPUが、所定の条件が満たされた場合、時間計測の指示を前記ECへ送信するとともに、シャットダウンの指示をするステップと、
前記ECが、前記時間計測の指示を取得したことに応じて、時間の計測を開始するステップと、前記時間の計測を開始してからの経過時間が予め設定された時間に達するまでは、前記BIOSの起動を禁止するステップと、
を含む制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、及び制御方法に関する。
【背景技術】
【0002】
コンピュータへの不正アクセスを防止する方法の一つとして、システムへのログインやディスクドライブへのアクセスをパスワードで保護することが一般的に行われている(例えば、特許文献1)。また、パスワードで保護している場合、繰り返し攻撃を受けると、いずれはパスワードが合致して解除されてしまうため、一定回数を超えて間違ったパスワードが入力された場合には、一定時間パスワードの入力を禁止する対策も行われている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、起動時に一定回数を超えて間違ったパスワードが入力された場合には、一定時間パスワードの入力を禁止するためにシャットダウンが行われる。しかしながら、シャットダウン中に時間を計測するカウンターは、従来はRTC(Real Time Clock)のみであったため、RTC用の電源(例えば、コイン電池)が抜かれてしまうと計測した時間が消失し、一定時間まで計測できなくなる。これにより、一定時間待たなくともパスワードの入力が可能となるため、不正アクセスが行われてしまう懸念がある。
【0005】
本発明は、上記した事情に鑑みてなされたもので、不正アクセスに対する安全性を高めた情報処理装置、及び制御方法を提供することを目的の一つとする。
【課題を解決するための手段】
【0006】
本発明は上記の課題を解決するためになされたものであり、本発明の第1態様に係る情報処理装置は、BIOS(Basic Input Output System)のプログラムを記憶する第1のメモリと、前記第1のメモリに記憶されたプログラムを実行するCPU(Central Processing Unit)と、少なくとも起動の制御を行うプログラムを記憶する第2のメモリと、前記第2のメモリに記憶されたプログラムを実行するEC(Embedded Controller)と、を備え、前記CPUは、前記第1のメモリに記憶された前記BIOSのプログラムを実行することにより、所定の条件が満たされた場合、時間計測の指示を前記ECへ送信するとともに、シャットダウンの指示をする停止制御処理、を行い、前記ECは、前記第2のメモリに記憶されたプログラムを実行することにより、前記時間計測の指示を取得したことに応じて、時間の計測を開始する計時処理と、前記計時処理により時間の計測を開始してからの経過時間が予め設定された時間に達するまでは、前記BIOSの起動を禁止する起動制御処理と、を行う。
【0007】
上記情報処理装置において、前記ECは、前記起動制御処理において、前記経過時間が予め設定された時間に達するまでは、前記BIOSの起動のトリガを検出しても、前記BIOSを起動させなくてもよい。
【0008】
上記情報処理装置において、前記ECは、前記起動制御処理において、前記経過時間が予め設定された時間に達した後は、前記BIOSの起動の禁止を解除し、前記BIOSの起動のトリガを検出した場合、前記BIOSの起動を指示し、前記CPUは、前記ECから前記BIOSの起動の指示を受取ることに応じて、前記第1のメモリに記憶された前記BIOSのプログラムを実行してもよい。
【0009】
上記情報処理装置において、前記ECは、前記シャットダウンしている状態において少なくとも前記計時処理を実行可能な動作モードを有し、前記CPUから前記時間計測の指示を取得したことに応じて、前記動作モードへ遷移してもよい。
【0010】
上記情報処理装置において、前記ECは、前記計時処理による時間の計測中に計測した前記経過時間を随時に不揮発性メモリに記憶させ、自身に供給される電源が喪失した場合には前記計時処理を停止し、当該電源の復帰後に前記計時処理を再開する際に、前記不揮発性メモリに記憶されている前記経過時間から継続して時間の計測を行ってもよい。
【0011】
上記情報処理装置において、前記CPUは、前記BIOSのプログラムを実行することにより、前記所定の条件が満たされたか否かを判定することにより不正アクセスを検出する検出処理を行い、前記検出処理において、前記所定の条件が満たされたと判定した場合、不正アクセスを検出し、前記検出処理により不正アクセスが検出された場合、前記停止制御処理において、前記時間計測の指示を前記ECへ送信するとともに、シャットダウンの指示をしてもよい。
【0012】
上記情報処理装置において、前記CPUは、前記BIOSの起動に応じてパスワード認証による認証処理を行い、前記認証処理により連続して所定回数以上の認証失敗となった場合、前記検出処理において前記不正アクセスを検出してもよい。
【0013】
また、本発明の第2態様に係る、BIOS(Basic Input Output System)のプログラムを実行するCPU(Central Processing Unit)と、少なくとも起動の制御を行うプログラムを実行するEC(Embedded Controller)と、を備える情報処理装置における制御方法は、前記CPUが、所定の条件が満たされた場合、時間計測の指示を前記ECへ送信するとともに、シャットダウンの指示をするステップと、前記ECが、前記時間計測の指示を取得したことに応じて、時間の計測を開始するステップと、前記時間の計測を開始してからの経過時間が予め設定された時間に達するまでは、前記BIOSの起動を禁止するステップと、を含む。
【発明の効果】
【0014】
本発明の上記態様によれば、不正アクセスに対する安全性を高めた情報処理装置を提供することができる。
【図面の簡単な説明】
【0015】
【
図1】実施形態に係る情報処理装置の外観を示す斜視図。
【
図2】実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図。
【
図3】実施形態に係る不正アクセスを制限する機能構成の一例を示すブロック図。
【
図4】実施形態に係るBIOS側の不正アクセス制限処理の一例を示すフローチャート。
【
図5】実施形態に係るEC側の不正アクセス制限処理の一例を示すフローチャート。
【
図6】実施形態に係るロックモード中に電源喪失が起きた場合のEC側の不正アクセス制限処理の一例を示すフローチャート。
【発明を実施するための形態】
【0016】
以下、図面を参照して、本発明の実施形態について説明する。
[情報処理装置の概要]
図1は、本実施形態に係る情報処理装置の外観を示す斜視図である。
図示する情報処理装置10は、クラムシェル型のノートPC(Personal Computer)である。情報処理装置10は、表示部14(ディスプレイ)が搭載されたディスプレイ筐体101と、キーボード32が搭載された機器筐体102と、ヒンジ機構103とを備えている。ディスプレイ筐体101及び機器筐体102は、略四角形の板状(例えば、平板状)の筐体である。
【0017】
ディスプレイ筐体101の側面の一つと機器筐体102の側面の一つとがヒンジ機構103を介して結合(連結)されており、ヒンジ機構103がなす回転軸の周りにディスプレイ筐体101と機器筐体102とが相対的に回動可能である。ディスプレイ筐体101と機器筐体102との回転軸の周りの開き角θが略0°の状態が、ディスプレイ筐体101と機器筐体102とが重なり合って閉じた状態(「閉状態」と称する)である。閉状態に対してディスプレイ筐体101と機器筐体102とが開いた状態のことを「開状態」と称する。開状態とは、開き角θが予め設定された閾値(例えば、10°)より大きくなるまで、ディスプレイ筐体101と機器筐体102とが相対的に回動された状態である。この
図1に示す情報処理装置10の外観は、開状態の一例を示している。
【0018】
ここでは、ディスプレイ筐体101の表示部14が設けられている面をディスプレイ面101a、ディスプレイ面101aに対して反対側の面をトップ面101bと称する。また、機器筐体102のキーボード32が設けられている面をキーボード面102a、キーボード面102aに対して反対側の面をボトム面102bと称する。閉状態においてディスプレイ面101aとキーボード面102aとは互いに対面する側の面である。図示する例において、キーボード32は、ユーザの操作を受け付ける複数のキー(操作子の一例)が配列された物理的なキーボードである。なお、キーボード面102aには、キーボード32以外にタッチパッドなどが設けられてもよい。また、機器筐体102の側面には、電源ボタン35が設けられている。
【0019】
閉状態では、ディスプレイ筐体101のディスプレイ面101aと機器筐体102のキーボード面102aとが対面して重なり合うため、表示部14が視認できない状態、且つキーボード32への操作ができない状態となる。一方、開状態では、表示部14が視認可能な状態、且つキーボードへの操作が可能な状態となる。
【0020】
[情報処理装置10のハードウェア構成]
図2は、本実施形態に係る情報処理装置10の主要なハードウェア構成の一例を示すブロック図である。
図2に示すように、情報処理装置10は、CPU11と、メインメモリ12と、ビデオサブシステム13と、表示部14と、チップセット21と、RTC電源25と、BIOSメモリ22と、エンベデッドコントローラ31と、キーボード32と、電源回路33と、リセットスイッチ34と、電源ボタン35と、バッテリ60とを備える。なお、この
図2において、
図1の各部に対応する構成には同一の符号を付しており、その説明を適宜省略する。
【0021】
CPU11は、プログラム制御により種々の演算処理を実行し、情報処理装置10の全体を制御している。例えば、CPU11は、OS(Operating System)やBIOS(Basic Input Output System)などのプログラムに基づく処理を実行する。
【0022】
メインメモリ12は、CPU11の実行プログラムの読み込み領域として、又は、実行プログラムの処理データを書き込む作業領域として利用される書き込み可能メモリである。メインメモリ12は、例えば、複数個のDRAM(Dynamic Random Access Memory)チップで構成される。この実行プログラムには、OS、周辺機器類をハードウェア操作するための各種ドライバ、各種サービス/ユーティリティ、アプリケーションプログラム等が含まれる。
【0023】
ビデオサブシステム13は、画像表示に関連する機能を実現するためのサブシステムであり、ビデオコントローラを含んでいる。このビデオコントローラは、CPU11からの描画命令を処理し、処理した描画情報をビデオメモリに書き込むとともに、ビデオメモリからこの描画情報を読み出して、表示部14に描画データ(表示データ)として出力する。
【0024】
表示部14は、例えば、液晶ディスプレイや有機ELディスプレイであり、ビデオサブシステム13から出力された描画データ(表示データ)に基づく表示画面を表示する。
【0025】
チップセット21は、USB(Universal Serial Bus)、シリアルATA(AT Attachment)、SPI(Serial Peripheral Interface)バス、PCI(Peripheral Component Interconnect)バス、PCI-Expressバス、及びLPC(Low Pin Count)バスなどのコントローラを備えており複数のデバイスが接続される。
図2では、複数のデバイスの例として、BIOSメモリ22と、エンベデッドコントローラ31と、記憶装置40とがチップセット21に接続されている。また、チップセット21は、RTC211を備えている。RTC211(Real Time Clock)は、RTC電源25(例えば、コイン電池)からの給電により動作する。
【0026】
BIOSメモリ22は、例えば、SPI(Serial Peripheral Interface)フラッシュメモリや、EEPROM(Electrically Erasable Programmable Read Only Memory)などの不揮発性メモリで構成される。BIOSメモリ22は、BIOSのプログラム、エンベデッドコントローラ31を制御するためのプログラムなどのシステムファームウェアを記憶する。また、BIOSメモリ22は、BIOSのデータやコード、エンベデッドコントローラ31の制御に関するデータなどを記憶する。
【0027】
記憶装置40は、SSD(Solid State Drive)、HDD(Hard Disk Drive)などを含んで構成される。例えば、記憶装置40は、OS、各種ドライバ、各種サービス/ユーティリティ、アプリケーションプログラム、及び各種データを記憶する。情報処理装置10は、SSD40が記憶するデータを利用して各種情報処理を実行する。
【0028】
エンベデッドコントローラ(EC:Embedded Controller)31は、OSやBIOSの処理を実行するCPU11とは別に設けられているプロセッサである。例えば、エンベデッドコントローラ31は、不図示のCPU、ROM、RAM、複数チャネルのA/D入力端子、D/A出力端子、タイマ、及びデジタル入出力端子を備えるワンチップマイコン(One-Chip Microcomputer)である。エンベデッドコントローラ31には、それぞれの入力端子を介して、例えば、キーボード32、電源回路33、リセットスイッチ34、及び電源ボタン35などが接続されている。また、エンベデッドコントローラ31は、バスを介して接続されているチップセット21を経由して、CPU11とデータの授受を行う。
【0029】
例えば、エンベデッドコントローラ31は、電源ボタン35に対するユーザの操作に応じた操作信号を受取り、電源回路33の制御およびシステムの起動の指示などを行う。また、エンベデッドコントローラ31は、キーボード32またはリセットスイッチ34に対するユーザの操作に応じた操作信号を受取り、当該操作信号に応じた処理を行う。
【0030】
キーボード32は、ユーザの操作を受け付ける複数のキー(操作子の一例)が配列された入力デバイスである。キーボード32は、
図1に示すように、機器筐体102のキーボード面102aに設けられている。キーボード32は、ユーザの操作に応じた操作信号をエンベデッドコントローラ31へ出力する。なお、キーボード32以外の入力デバイスとして、ポインティング・デバイス、タッチパッドなどの任意の入力デバイスが任意の場所に設けられてもよい。
【0031】
電源回路33は、例えば、DC/DCコンバータ、充放電ユニットなどを含んで構成されている。DC/DCコンバータは、ACアダプタ(外部電源)もしくはバッテリ60から供給される直流電力の電圧を、各部で要求される電圧に変換する。DC/DCコンバータにより電圧が変換された電力が各電源系統を介して各部へ供給される。例えば、電源部400は、エンベデッドコントローラ31による制御に基づいて各電源系統を介して各部に電力を供給する。
【0032】
[不正アクセス制限の機能構成]
次に、本実施形態に係る情報処理装置10において不正アクセスを制限する機能について説明する。本実施形態において「不正アクセス」とは、非正規のユーザが、正規ユーザになりすましてシステムにログインする行為、データにアクセスする行為、データを窃取する行為、またはデータを改ざんする行為など、情報処理装置10に対する不正な行為の全般を指す。また、実際には不正なアクセスではなくとも、行為が同等であるもの(例えば、間違ったパスワードを連続して入力など)も同様に、不正アクセスと判断される。ここでは、起動時のシステムへのログイン認証における不正アクセスを例として説明する。
【0033】
例えば、起動時に一定の回数を超えて間違ったパスワードが入力された場合、情報処理装置10は、一定時間パスワードの入力を禁止するためにシャットダウンを行う。ここで、RTC211を用いてシャットダウン中の経過時間を計測した場合、RTC電源25が抜かれてしまうとRTC電源が喪失してしまい、経過時間を計測できなくなる。そのため、起動のトリガが発生すると起動してしまい、一定時間パスワードの入力を禁止することができなくなる。即ち、再び不正アクセスされる危険が生じる。
【0034】
そこで、本実施形態に係る情報処理装置10は、シャットダウン中の経過時間の計測をエンベデッドコントローラ31で行う構成とした。エンベデッドコントローラ31がシャットダウン中の経過時間を計測することにより、RTC電源が喪失したとしても、シャットダウン中の経過時間を計測が継続される。エンベデッドコントローラ31は、シャットダウンしてから一定時間経過するまで、電源オン(起動)しないように制限することにより、一定時間パスワードの入力を禁止する。これにより、不正アクセスに対する安全性を高めることができる。以下、この不正アクセスを制限する機能の構成について、詳しく説明する。
【0035】
図3は、本実施形態に係る情報処理装置10において不正アクセスを制限する機能構成の一例を示すブロック図である。本実施形態では、BIOSの制御により不正アクセスを検出した場合に、エンベデッドコントローラ31は、一定時間電源オン(起動)しないように制限する。
図3において、OS110は、CPU11がOSのプログラムを実行することにより実現される機能構成として示している。また、BIOS120は、CPU11がBIOSのプログラムを実行することにより実現される機能構成として示している。
【0036】
OS110は、認証処理部111を含んで構成されている。認証処理部111は、BIOSの起動に応じてログイン認証を行う認証処理を行う。例えば、認証処理部111は、キーボード32に対して入力されたパスワードが正しいパスワードであるか否かを照合するパスワード認証を実行する。なお、パスワード認証に代えてまたは加えて、指紋認証、顔認証、スマートカードを用いた認証、位置情報を利用した認証などが行われてもよい。
【0037】
BIOS120は、検出部121と、モード制御部122とを含んで構成されている。検出部121は、情報処理装置10に対する不正アクセスを検出する検出処理を行う。例えば、検出部121は、所定の条件が満たされたか否かを判定することにより不正アクセスを検出する。そして、検出部121は、所定の条件が満たされたと判定した場合、不正アクセスを検出する。所定の条件とは、不正アクセスと判定するための予め設定された条件であり、例えば、認証処理において連続して所定回数(例えば、5回)以上の認証失敗となることである。例えば、パスワード認証の場合、間違ったパスワードが連続して所定回数(例えば、5回)以上入力された場合、不正アクセスと判定される。なお、ここに例示した所定の条件は、一例であって、これに限られるものではない。
【0038】
モード制御部122は、システムの起動およびシャットダウンの制御を行う。また、モード制御部122は、不正アクセスが検出された場合には、エンベデッドコントローラ31に対して動作モードの指示を行うとともに、シャットダウンの指示を行う。ここで、エンベデッドコントローラ31の動作モードについて説明する。
【0039】
本実施形態では、エンベデッドコントローラ31は、シャットダウンした時に、通常のシャットダウン状態の他に、シャットダウン状態でも少なくともタイマで経過時間を計測可能な動作モード(以下、「ロックモード」と称する)が定義されている。なお、通常のシャットダウン状態とは、例えばACPI(Advanced Configuration and Power Interface)で規定されているS5状態に相当する。つまり、ロックモードは、エンベデッドコントローラ31が起きておくのに必要最低限の電源のみを維持しつつ、S5状態でも経過時間の計測が可能な動作モードである。
【0040】
モード制御部122は、検出部121により不正アクセスが検出された場合、ロックモードへ遷移させる指示(ロックリクエスト)をエンベデッドコントローラ31へ送信する。即ち、モード制御部122は、検出部121により不正アクセスが検出された場合、ロックリクエストを送信することにより、時間計測の指示(シャットダウンしてからの経過時間の計測の指示)を行う。
【0041】
さらに、モード制御部122は、ロックリクエストを送信した後に、シャットダウンの指示を行い、システムをシャットダウンさせる。なお、モード制御部122は、シャットダウンの指示(シャットダウンリクエスト)をエンベデッドコントローラ31へ送信し、エンベデッドコントローラ31からのシャットダウン指示に応じてシステムをシャットダウンさせてもよい。
【0042】
また、モード制御部122は、シャットダウン状態において、エンベデッドコントローラ31からの起動の指示を受取ることに応じて、BIOSのプログラムを実行し起動させる。
【0043】
エンベデッドコントローラ31は、エンベデッドコントローラ31を制御するためのプログラムを実行することにより実現される機能構成として、モード遷移部311と、計時部312と、起動制御部313とを備えている。
【0044】
モード遷移部311は、BIOS120から送信されたロックリクエストを受取ると、ロックモードへ遷移させる。即ち、モード遷移部311は、BIOS120から送信されたロックリクエストを受取ることにより、時間計測の指示(シャットダウンしてからの経過時間の計測の指示)を受ける。
【0045】
計時部312は、ロックモードへ遷移すると、時間の計測を開始する。即ち、計時部312は、BIOS120からロックリクエスト(時間計測の指示)を取得したことに応じて、時間の計測を開始する。また、計時部312は、時間の計測中、計測した経過時間を随時に(例えば、カウントの度に)BIOSメモリ22(不揮発性メモリ)に記憶させる。なお、計時部312が時間の計測を開始してからの経過時間は、シャットダウンしてからの経過時間(シャットダウン中の経過時間)に相当する。
【0046】
起動制御部313は、計時部312が計時している経過時間が予め設定された時間に達するまでは、BIOSの起動を禁止する起動制御処理を行う。予め設定された時間とは、不正アクセスの可能性がある場合に一定時間起動を禁止するための時間であり、例えば、6時間、12時間、24時間などである。
【0047】
例えば、起動制御部313は、計時部312が計時している経過時間が予め設定された時間に達するまでは、BIOSの起動のトリガ(例えば、電源ボタン35に対する操作)を検出しても、CPU11へBIOSの起動の指示を行わない(BIOSを起動させない)。一方、起動制御部313は、計時部312が計時している経過時間が予め設定された時間に達した後は、BIOSの起動の禁止を解除する。つまり、起動制御部313は、計時部312が計時している経過時間が予め設定された時間に達した後は、BIOSの起動のトリガを検出した場合、CPU11へBIOSの起動の指示を行う。
【0048】
なお、エンベデッドコントローラ31は、シャットダウンしてからの経過時間の計測中または計測終了後に、経過時間をBIOS120へ通知してもよい。
【0049】
[不正アクセス制限処理]
次に、本実施形態に係る情報処理装置10が不正アクセスを制限する不正アクセス制限処理の動作について説明する。まず、
図4を参照して、BIOS側の処理の動作について説明する。
【0050】
図4は、本実施形態に係るBIOS側の不正アクセス制限処理の一例を示すフローチャートである。
【0051】
(ステップS101)BIOS120は、所定の条件が満たされたか否かを判定することにより不正アクセスを検出したか否かを判定する。BIOS120は、不正アクセスを検出していない(所定の条件が満たされない)と判定した場合(NO)、ステップS101の判定処理を所定の周期で繰り返し実行する。一方、BIOS120は、不正アクセスを検出した(所定の条件が満たされた)と判定した場合(YES)、ステップS103の処理へ進む。
【0052】
(ステップS103)BIOS120は、ロックリクエストをエンベデッドコントローラ31へ送信する。即ち、BIOS120は、エンベデッドコントローラ31に対して時間計測の指示を行う。そして、ステップS105の処理へ進む。
【0053】
(ステップS105)BIOS120は、シャットダウンリクエストをエンベデッドコントローラ31へ送信する。そして、ステップS107の処理へ進む。
【0054】
(ステップS107)BIOS120は、シャットダウン処理を行い、システムをシャットダウンさせる。ここで、BIOS120は、ステップS105の処理を行わずに、自身でシャットダウン処理を実行してもよい。また、BIOS120は、ステップS105の処理を行った場合、エンベデッドコントローラ31からのシャットダウン指示に応じてシステムをシャットダウンさせてもよい。また、BIOS120は、シャットダウン処理を行う際に、ロックリクエストを送信したことを示す情報をBIOSメモリ22(不揮発性メモリ)に記憶させてから、システムをシャットダウンさせる。
【0055】
(ステップS109)CPU11は、エンベデッドコントローラ31から起動の指示を受けた場合(YES)、起動処理を実行する(ステップS111)。一方、CPU11は、エンベデッドコントローラ31から起動の指示を受けない場合(NO)、シャットダウン状態を継続する。
【0056】
次に、
図5を参照して、エンベデッドコントローラ31(EC)側の不正アクセス制限処理の動作について説明する。
図5は、本実施形態に係るEC側の不正アクセス制限処理の一例を示すフローチャートである。
【0057】
(ステップS201)エンベデッドコントローラ31は、BIOS120からロックリクエストを取得したか否かを判定する。エンベデッドコントローラ31は、ロックリクエストを取得していないと判定した場合(NO)、ステップS201の処理を継続する。一方、エンベデッドコントローラ31は、ロックリクエストを取得したと判定した場合(YES)、ステップS203の処理へ進む。
【0058】
(ステップS203)エンベデッドコントローラ31は、ステップS201においてロックリクエストを取得したと判定した場合、ロックモードへ遷移させる。即ち、エンベデッドコントローラ31は、時間計測の指示(シャットダウンしてからの経過時間の計測の指示)を受けると、ロックモードへ遷移させる。また、このときエンベデッドコントローラ31は、ロックモードへ遷移させたことを示す情報を、BIOSメモリ22(不揮発性メモリ)に記憶させる。そして、ステップS205の処理へ進む。
【0059】
(ステップS205)エンベデッドコントローラ31は、時間の計測を開始する。即ち、エンベデッドコントローラ31は、シャットダウンしてからの経過時間(シャットダウン中の経過時間)を計測する。また、エンベデッドコントローラ31は、時間の計測中、計測した経過時間を随時にBIOSメモリ22(不揮発性メモリ)に記憶させる。
【0060】
(ステップS207)また、エンベデッドコントローラ31は、時間の計測開始とともに、BIOSの起動を禁止する。なお、ステップS205の処理とステップS207の処理は、順序を入れ替えてもよいし、同時でもよい。そして、ステップS221の処理へ進む。
【0061】
BIOSの起動が禁止されると、例えば、エンベデッドコントローラ31は、BIOSの起動のトリガ(例えば、電源ボタン35に対する操作)を検出しても、CPU11へ起動の指示を送信しない。
【0062】
(ステップS221)エンベデッドコントローラ31は、シャットダウンしてから一定時間が経過したか否かを判定する。例えば、エンベデッドコントローラ31は、ステップS205において計時を開始してからの経過時間が予め設定された時間に達したか否かによって、シャットダウンしてから一定時間が経過したか否かを判定する。エンベデッドコントローラ31は、シャットダウンしてから一定時間が経過していないと判定した場合(NO)、ステップS221の処理を再び行う。一方、エンベデッドコントローラ31は、シャットダウンしてから一定時間が経過したと判定した場合(YES)、ステップS223の処理へ進む。
【0063】
(ステップS223)エンベデッドコントローラ31は、BIOSの起動の禁止を解除する。また、このときエンベデッドコントローラ31は、ステップS203においてBIOSメモリ22(不揮発性メモリ)に記憶させたロックモードへ遷移させたことを示す情報をクリアする。
【0064】
BIOSの起動の禁止が解除されると、例えば、エンベデッドコントローラ31は、BIOSの起動のトリガ(例えば、電源ボタン35に対する操作)を検出した場合、CPU11へ起動の指示を送信する。
【0065】
(ステップS225)また、エンベデッドコントローラ31は、経過時間の計測を終了し、タイマをリセットする。なお、ステップS223の処理とステップS225の処理は、順序を入れ替えてもよいし、同時でもよい。
【0066】
[EC電源喪失時の不正アクセス制限処理]
次に、不正アクセス制限処理において、エンベデッドコントローラ31の電源が喪失した時の処理について説明する。ACアダプタからの電源供給が無く、さらにバッテリ60が取り外されてしまった場合には、エンベデッドコントローラ31の電源が喪失する。エンベデッドコントローラ31は、ロックモードに遷移している状態で電源が喪失した場合、時間の計測ができなくなるため、計時処理を一旦停止するが、その後、電源の復帰後に時間の計測を再開する。その際に、エンベデッドコントローラ31は、BIOSメモリ22(不揮発性メモリ)に記憶されている経過時間から継続して時間の計測を行う。従って、エンベデッドコントローラ31は、強制的に電源喪失が行われても、ロックモードに遷移してからトータルで一定時間以上経過するまで起動させないようにすることができるため、不正アクセスが行われないように制限できる。
【0067】
図6は、ロックモード中に電源喪失が起きた場合のEC側の不正アクセス制限処理の一例を示すフローチャートである。この図において、
図5の各処理に対応する処理には同一の符号を付しており、その説明を省略する。ステップS201~S207の処理は、
図5に示す処理と同様であり、エンベデッドコントローラ31は、BIOS120からロックリクエストを取得するとロックモードに遷移し、シャットダウンしてからの経過時間(シャットダウン中の経過時間)の計測を開始し、BIOSの起動を禁止する。
【0068】
(ステップS211)エンベデッドコントローラ31は、電源の喪失が無い場合(NO)、ステップS221の処理へ進み、シャットダウンしてから一定時間が経過しない間は、このステップS211の処理を行う。一方、エンベデッドコントローラ31は、電源の喪失があった場合(YES)、ステップS213に進む。
【0069】
(ステップS213)エンベデッドコントローラ31は、電源の喪失に伴い動作を停止する。即ち、エンベデッドコントローラ31は、経過時間の計測を停止する。そして、ステップS215に進む。
【0070】
(ステップS215)エンベデッドコントローラ31は、電源が復帰していない場合(NO)、電源の喪失により動作が停止している状態が継続する。一方、エンベデッドコントローラ31は、電源が復帰した場合(YES)、ステップS217へ進む。
【0071】
(ステップS217)エンベデッドコントローラ31は、電源が復帰すると、BIOSメモリ22(不揮発性メモリ)に記憶されているロックモードへ遷移させたことを示す情報を参照し、ロックモードで復帰する。このとき、エンベデッドコントローラ31は、ロックモードでは、BIOSの起動の禁止の設定を継続する。そして、ステップS219へ進む。
【0072】
(ステップS219)エンベデッドコントローラ31は、経過時間の計測を再開し、ステップS221の処理へ進む。経過時間の計測再開後に、経過時間が一定時間に満たない場合にはステップS221へ戻り、経過時間が一定時間に達した場合にはステップS223の処理へ進む。経過時間が一定時間に達した後のステップS223~S225の処理は、
図5に示す処理と同様であり、エンベデッドコントローラ31は、BIOSの起動の禁止を解除し、且つ経過時間の計測を終了してタイマをリセットする。
【0073】
[実施形態のまとめ]
以上説明してきたように、本実施形態に係る情報処理装置10は、BIOSメモリ22(不揮発性メモリ)と、CPU11と、エンベデッドコントローラ31(EC)とを備えている。BIOSメモリ22(第1のメモリおよび第2のメモリの一例)は、BIOSのプログラムと、少なくとも起動の制御を行うエンベデッドコントローラ31のプログラムとを記憶する。CPU11は、BIOSメモリ22に記憶されたBIOSのプログラムを実行する。エンベデッドコントローラ31は、BIOSメモリ22に記憶されたエンベデッドコントローラ31のプログラムを実行する。なお、BIOSのプログラムとエンベデッドコントローラ31のプログラムとは異なるメモリに記憶されてもよい。
【0074】
そして、CPU11は、BIOSのプログラムを実行することにより、所定の条件が満たされた場合(例えば、不正アクセスを検出した場合)、時間計測の指示(例えば、ロックリクエスト)をエンベデッドコントローラ31へ送信するとともに、シャットダウンを指示する停止制御処理を行う。エンベデッドコントローラ31は、エンベデッドコントローラ31のプログラムを実行することにより、時間計測の指示(例えば、ロックリクエスト)を取得したことに応じて、時間の計測を開始する計時処理を行う。また、エンベデッドコントローラ31は、計時処理により時間の計測を開始してからの経過時間(即ち、シャットダウンしてからの経過時間)が予め設定された時間に達するまでは、BIOSの起動を禁止する起動制御処理を行う。
【0075】
これにより、情報処理装置10は、所定の条件が満たされた場合(例えば、不正アクセスを検出した場合)、シャットダウンさせて一定時間は起動できなくするとともに、シャットダウンしてからの経過時間をエンベデッドコントローラ31で計時するため、仮にRTC電源の喪失があっても、シャットダウンしてから一定時間はシャットダウン状態を継続することができる。よって、情報処理装置10は、不正アクセスに対する安全性を高めることができる。
【0076】
例えば、エンベデッドコントローラ31は、シャットダウンしてからの経過時間が予め設定された時間に達するまでは、BIOSの起動のトリガ(例えば、電源ボタン35に対する操作)を検出しても、BIOSを起動させない。
【0077】
これにより、情報処理装置10は、所定の条件が満たされた(例えば、不正アクセスを検出した)ことによってシャットダウンした場合には、一定時間が経過するまでは、起動のトリガ(例えば、電源ボタン35に対する操作)が発生しても起動しないため、不正アクセスに対する安全性を高めることができる。
【0078】
また、エンベデッドコントローラ31は、シャットダウンしてからの経過時間が予め設定された時間に達した後は、BIOSの起動の禁止を解除し、BIOSの起動のトリガ(例えば、電源ボタン35に対する操作)を検出した場合、BIOSの起動をCPU11へ指示する。CPU11は、エンベデッドコントローラ31からBIOSの起動の指示を受取ることに応じて、BIOSメモリ22に記憶されたBIOSのプログラムを実行する。
【0079】
これにより、情報処理装置10は、所定の条件が満たされた(例えば、不正アクセスを検出した)ことによってシャットダウンした場合でも、一定時間が経過した後は、再起動が可能となるため、例えば正規ユーザであるのにパスワードを間違えてしまった場合などは、起動させてパスワードの入力をやり直すことができる。また、正規ユーザ以外からの不正アクセスであって場合には、不正アクセスを少なくとも一定時間以上中断させることができるため、不正アクセスを抑制することができる。
【0080】
また、エンベデッドコントローラ31は、シャットダウンしている状態において少なくとも計時処理を実行可能なロックモード(動作モードの一例)を有する。そして、エンベデッドコントローラ31は、CPU11(BIOS120)からロックリクエスト(時間計測の指示)を取得したことに応じて、ロックモードへ遷移する。
【0081】
これにより、情報処理装置10は、シャットダウンしてからの経過時間を、消費電力を抑えつつエンベデッドコントローラ31を用いて計測することができる。
【0082】
また、エンベデッドコントローラ31は、計時処理による時間の計測中に、計測した経過時間を随時にBIOSメモリ22(不揮発性メモリ)に記憶させ、自身に供給される電源が喪失した場合には計時処理を停止し、当該電源の復帰後に計時処理を再開する。そして、エンベデッドコントローラ31は、計時処理を再開する際に、BIOSメモリ22に記憶されている経過時間から継続して時間の計測を行う。
【0083】
これにより、情報処理装置10は、シャットダウンしてからの経過時間を計測中に自身への電源が喪失しその後復帰したとしても、一定時間以上はシャットダウン状態を継続し、使用できないようにすることができる。よって、情報処理装置10は、不正アクセスに対する安全性を高めることができる。
【0084】
なお、エンベデッドコントローラ31は、電源喪失した場合、シャットダウンしてからの経過時間の計測を停止し電源復帰後に計測を再開するが、計測中の時間をリセットしてから再開してもよい。また、エンベデッドコントローラ31は、時間の計測中に計測した時間を随時にBIOSメモリ22(不揮発性メモリ)に記憶しない場合には、電源復帰後に時間の計測を0から計測しなおしてもよい。この場合、エンベデッドコントローラ31は、シャットダウンしてから起動を禁止する時間がより長くなる。よって、この場合も、不正アクセスに対する安全性を高めることができる。
【0085】
また、エンベデッドコントローラ31は、例えばリセットスイッチ34に対する操作がされた場合に、計測中の時間をリセットする構成としてもよい。この構成によれば、例えばシャットダウンしてから一定時間が経過して、本来は起動可能な状態になるべきところであるのに起動しないような異常な状態となっているときに、リセットスイッチ34に対する操作を行うことで、異常状態から復帰できる可能性がある。
【0086】
また、CPU11は、BIOSのプログラムを実行することにより、所定の条件が満たされたか否かを判定することにより不正アクセスを検出する検出処理を行う。CPU11(BIOS120)は、この検出処理において、所定の条件が満たされたと判定した場合、不正アクセスを検出する。また、CPU11(BIOS120)は、検出処理により不正アクセスが検出された場合、停止制御処理において、時間計測の指示(例えば、ロックリクエスト)をエンベデッドコントローラ31へ送信するとともに、シャットダウンの指示をする。
【0087】
これにより、情報処理装置10は、不正アクセスを検出した場合、シャットダウンさせて一定時間は起動できなくするとともに、シャットダウンしてからの経過時間をエンベデッドコントローラ31で計時するため、仮にRTC電源の喪失があっても、シャットダウンしてから一定時間はシャットダウン状態を継続することができる。よって、情報処理装置10は、不正アクセスに対する安全性を高めることができる。
【0088】
例えば、所定の条件とは、パスワード認証による認証処理において、連続して所定回数以上の認証失敗となることである。CPU11は、BIOSの起動に応じてパスワード認証による認証処理を行う。例えば、OS110は、BIOSのPOST処理の後に、パスワード認証によるログイン認証処理を実行する。そして、CPU11(BIOS120)は、認証処理により連続して所定回数以上の認証失敗となった場合、不正アクセスを検出する。
【0089】
これにより、情報処理装置10は、パスワード認証による認証処理において連続して所定回数以上の認証失敗があった場合には、不正アクセスとして、シャットダウンさせて一定時間は起動できなくするため、不正アクセスに対する安全性を高めることができる。
【0090】
また、情報処理装置10における制御方法は、CPU11(BIOS120)が、所定の条件が満たされた場合、時間計測の指示(例えば、ロックリクエスト)をエンベデッドコントローラ31へ送信するとともに、シャットダウンの指示をするステップと、エンベデッドコントローラ31が、時間計測の指示(例えば、ロックリクエスト)を取得したことに応じて、時間の計測を開始するステップと、時間の計測を開始してからの経過時間(即ち、シャットダウンしてからの経過時間)が予め設定された時間に達するまでは、BIOSの起動を禁止するステップと、を含む。
【0091】
これにより、情報処理装置10は、所定の条件が満たされた場合(例えば、不正アクセスを検出した場合)、シャットダウンさせて一定時間は起動できなくするとともに、シャットダウンしてからの経過時間をエンベデッドコントローラ31で計時するため、仮にRTC電源の喪失があっても、シャットダウンしてから一定時間はシャットダウン状態を継続することができる。よって、情報処理装置10は、不正アクセスに対する安全性を高めることができる。
【0092】
以上、この発明の各実施形態について図面を参照して詳述してきたが、具体的な構成は上述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。例えば、上述の各実施形態において説明した各構成は、任意に組み合わせることができる。
【0093】
また、上記実施形態では、不正アクセスと判定するため所定の条件として、起動時の認証処理における条件を例示したが、これに限られるものではない。例えば、上記所定の条件は、起動後に、記憶装置40に記憶されているデータのうちパスワード保護されているデータにアクセスする際の認証処理における条件としてもよい。また、上記実施形態において、パスワード認証における不正アクセスの例を説明したが、パスワード認証に限られるものではなく、指紋認証、顔認証、スマートカードを用いた認証、位置情報を利用した認証などであってもよい。例えば、指紋認証、顔認証、スマートカードを用いた認証、位置情報を利用した認証などであっても、連続して所定回数(例えば、5回)以上の認証失敗となることを、上記所定の条件(不正アクセスと判定する条件)としてもよい。また、上記所定の条件は、BIOSのデータまたはコードへの不正アクセス(例えば、BIOSメモリ22への不正アクセス)と判定する条件としてもよい。
【0094】
なお、上述した情報処理装置10は、内部にコンピュータシステムを有している。そして、上述した情報処理装置10が備える各構成の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上述した情報処理装置10が備える各構成における処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、CD-ROM等の非一過性の記録媒体であってもよい。
【0095】
また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部又は外部に設けられた記録媒体も含まれる。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に情報処理装置10が備える各構成で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0096】
また、上述した実施形態における情報処理装置10が備える各機能の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。各機能は個別にプロセッサ化してもよいし、一部、又は全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
【符号の説明】
【0097】
10 情報処理装置、101 ディスプレイ筐体、101a ディスプレイ面、101b トップ面、102 機器筐体、102a キーボード面、102b ボトム面、103 ヒンジ機構、11 CPU、12 メインメモリ、13 ビデオサブシステム、14 表示部、21 チップセット、22 BIOSメモリ、25 RTC電源、31 エンベデッドコントローラ、32 キーボード、33 電源回路、34 リセットスイッチ、35 電源ボタン、40 記憶装置、60 バッテリ、110 OS、111 認証処理部、120 BIOS、121 検出部、122 モード制御部、311 モード遷移部、312 計時部、313 起動制御部
【要約】
【課題】不正アクセスに対する安全性を高めた情報処理装置を提供すること。
【解決手段】情報処理装置は、BIOSのプログラムを実行するCPU(Central Processing Unit)と、少なくとも起動の制御を行うプログラムを実行するEC(Embedded Controller)と、を備える。CPUは、BIOSのプログラムを実行することにより、所定の条件が満たされた場合、時間計測の指示をECへ送信するとともに、シャットダウンの指示をする。ECは、時間計測の指示を取得したことに応じて、時間の計測を開始する。また、ECは、時間の計測を開始してからの経過時間が予め設定された時間に達するまでは、BIOSの起動を禁止する。
【選択図】
図3