JP2006012034A - Device control unit, computer, and device control method - Google Patents
Device control unit, computer, and device control method Download PDFInfo
- Publication number
- JP2006012034A JP2006012034A JP2004191434A JP2004191434A JP2006012034A JP 2006012034 A JP2006012034 A JP 2006012034A JP 2004191434 A JP2004191434 A JP 2004191434A JP 2004191434 A JP2004191434 A JP 2004191434A JP 2006012034 A JP2006012034 A JP 2006012034A
- Authority
- JP
- Japan
- Prior art keywords
- control
- computer
- program
- specific
- password
- 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
Links
- 238000000034 method Methods 0.000 title claims description 38
- 238000012544 monitoring process Methods 0.000 claims abstract description 7
- 230000006870 function Effects 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 10
- 230000007246 mechanism Effects 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013468 resource allocation Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Landscapes
- Storage Device Security (AREA)
Abstract
Description
本発明は、コンピュータの動作制御に関し、特にコンピュータで用いられるデバイスに対する動作制御に関する。 The present invention relates to operation control of a computer, and more particularly to operation control for a device used in a computer.
近年、様々な企業でコンピュータが使用され、その企業における重要データもコンピュータにて管理されるようになっている。従って、コンピュータには、例えば、データが外部記憶メディアに複写されて持ち出されることのないような高いセキュリティが求められる。
このような高いセキュリティを確保する方法の1つに、OS(Operating System)が有するセキュリティ機能を利用する方法がある。即ち、OSが管理するユーザの属性ごとに、外部記憶メディアへデータの書き込みを行うデバイス(以下、「書き込みデバイス」という)を使用できるかどうかに関し、異なる権限を与えるという方法である。
In recent years, computers are used in various companies, and important data in the companies are managed by the computers. Therefore, the computer is required to have high security so that, for example, data is not copied to an external storage medium and taken out.
One method for ensuring such high security is to use a security function of an OS (Operating System). That is, for each user attribute managed by the OS, a different authority is given regarding whether or not a device for writing data to an external storage medium (hereinafter referred to as “writing device”) can be used.
ところが、OSが有するセキュリティ機能を利用した場合、OSがインストールされたハードディスクが交換されてしまうと、セキュリティの確保ができなくなる。
例えば、企業のIT部門が、OSが有するセキュリティ機能を利用して、ユーザの属性ごとに、書き込みデバイスの使用の可/不可を設定していたとする。この場合、OSがインストールされたハードディスクがそのまま使用されるのであれば、各ユーザは、自身に使用が許可された書き込みデバイスしか使用することはできない。ところが、悪意あるユーザが、そのシステムのハードディスクを、自身がOSをインストールしたハードディスクに交換したとすると、そのOSでは、書き込みデバイスの使用の可/不可を自由に設定できるので、そのユーザは、システムの全ての書き込みデバイスを使用できるようになってしまう。
However, when the security function of the OS is used, security cannot be ensured if the hard disk installed with the OS is replaced.
For example, it is assumed that the IT department of a company sets whether or not the writing device can be used for each user attribute using a security function of the OS. In this case, if the hard disk on which the OS is installed is used as it is, each user can use only the writing device permitted to be used by the user. However, if a malicious user replaces the hard disk of the system with a hard disk on which the OS is installed, the OS can freely set whether or not the writing device can be used. It becomes possible to use all the writing devices.
今日、企業においては、サーバコンピュータとクライアントコンピュータとがネットワークで接続され、サーバコンピュータが管理するデータをクライアントコンピュータが取得して使用するようなコンピュータシステムの形態が一般的である。この場合、企業のIT部門は、データの外部への持ち出しを防止する必要があれば、クライアントコンピュータのOSに対し、ユーザの属性ごとに、書き込みデバイスの使用の可/不可を設定することになる。しかし、クライアントコンピュータのハードディスクが交換されてしまえば、サーバコンピュータからネットワークを介して得た企業のデータが、外部記憶メディアに複写され、持ち出される可能性が出てくるのである。
尚、デスクトップのPC(Personal Computer)であれば、物理的な鍵によりハードディスクの交換を防止することも可能である。しかし、携帯情報端末にあっては、そのような防止方法を採用することは困難であり、ハードディスクの交換が簡単に行えてしまうのが実情である。
2. Description of the Related Art Today, in a company, a computer system is generally used in which a server computer and a client computer are connected via a network, and the client computer acquires and uses data managed by the server computer. In this case, if it is necessary to prevent the data from being taken outside, the corporate IT department sets whether or not the writing device can be used for each user attribute to the OS of the client computer. . However, if the hard disk of the client computer is replaced, corporate data obtained from the server computer via the network may be copied to an external storage medium and taken out.
In the case of a desktop PC (Personal Computer), it is possible to prevent the hard disk from being replaced with a physical key. However, in a portable information terminal, it is difficult to adopt such a prevention method, and the fact is that the hard disk can be easily replaced.
従って、書き込みデバイスの使用の可/不可の設定は、BIOS(Basic Input Output System)/システムハードウェアによって行うことが必要である。
そのようなBIOS/システムハードウェアによる設定としては、例えば、PCシステムが、書き込みデバイスを使用できるかを、オーナとユーザとで区別するという方法がある。具体的には、PCシステムのオーナであるアドミニストレータ(スーパバイザ)は、「アドミニストレータ・パスワード(スーパーバイザ・パスワード)」を入力することにより特定の書き込みデバイスを使用でき、ユーザはこのパスワードを入力しなければその書き込みデバイスを使用できないといったものである。かかる実装は、今日、多くのPCシステムで採用されている。
書き込みデバイスとしては、例えば、フロッピー(登録商標)ディスクドライブ、PCカード、USB(Universal Serial Bus)ポート等がある。企業のIT部門のPC管理者は、これらのデバイスからの重要データの流出を防ぐため、PCシステムのこれらのデバイスを使用不可に設定すると考えられる。このような設定がなされると、ユーザは、アドミニストレータ・パスワードの入力なしにはそのデバイスを使用することはできない。
Therefore, it is necessary to set whether or not the writing device can be used by BIOS (Basic Input Output System) / system hardware.
As the setting by such BIOS / system hardware, for example, there is a method in which the owner distinguishes whether the PC system can use the writing device between the owner and the user. Specifically, an administrator (supervisor) who is the owner of a PC system can use a specific writing device by entering an “administrator password (supervisor password)”, and the user must enter this password. The writing device cannot be used. Such an implementation is used today in many PC systems.
Examples of the writing device include a floppy (registered trademark) disk drive, a PC card, and a USB (Universal Serial Bus) port. It is considered that a PC administrator in the corporate IT department sets these devices in the PC system to be unusable in order to prevent leakage of important data from these devices. Once such a setting is made, the user cannot use the device without entering the administrator password.
ところが、特定の書き込みデバイスの使用を、不可から可に、又は、可から不可に一時的に変更したい場合もある。かかる場合、稼動中のOSを一旦終了させ、BIOSで設定の変更を行い、その後、OSを再起動させる必要があり、利便性に劣ることとなる。即ち、システムが中断してしまうため、システムの可用性(Availability)が損なわれてしまうことになる。
一方、OSが提供するAPI(Application Program Interface)を利用することにより、システムの可用性を損なうことなく、BIOSでの設定を行うことも提案されている(例えば、特許文献1参照。)。これは、拡張ユニットに収納された記憶デバイスのアクセスロックを、APIを利用したシームレスなユーザインターフェースを用いたパスワード入力により解除するというものである。
However, there are cases where it is desired to temporarily change the use of a specific writing device from disabled to enabled or from enabled to disabled. In such a case, it is necessary to terminate the operating OS once, change the setting with the BIOS, and then restart the OS, which is inconvenient. That is, since the system is interrupted, the availability of the system is impaired.
On the other hand, it has also been proposed to make settings in the BIOS without impairing system availability by using an API (Application Program Interface) provided by the OS (see, for example, Patent Document 1). This is to release the access lock of the storage device housed in the expansion unit by inputting a password using a seamless user interface using API.
しかしながら、特許文献1の技術は、あくまでOSを介するものであるので、スパイウェアを排除できない等、重大なセキュリティ上の問題が存在している。 However, since the technique of Patent Document 1 is only via the OS, there is a serious security problem such that spyware cannot be excluded.
本発明は、以上のような技術的課題を解決するためになされたものであって、その目的は、システムの可用性を損なうことなく、かつ、セキュアに、デバイスに対する制御を行えるようにすることにある。 The present invention has been made to solve the technical problems as described above, and an object of the present invention is to enable secure control of devices without impairing system availability. is there.
かかる目的のもと、本発明では、使用不可となっているデバイスを、次のようなシーケンスで一時的に使用可能とする。まず、稼動中のシステムで、あるデバイスを一時的に使用可能としたい場合、ユーザ又はアドミニストレータは、ハードウェア機構やアプリケーションプログラムを通じて、BIOSにその意図を通知する。そして、BIOSは、OSを中断させるためにいったんシステムをサスペンド状態(スタンバイ状態)に遷移させる。その後、デバイスの使用の可/不可の設定をパスワードにて検証し、OSをリジュームさせる。更に、BIOSは、使用可能となったデバイスの状態をOSに通知し、OSが、デバイスへのアクセスを可能とする。また、使用可能となっているデバイスを一時的に使用不可とする場合も、ほぼ同様のシーケンスで処理が行われる。但し、OSをサスペンドさせるに先立ち、資源の解放を行い、OSをレジュームした後には資源の割当てを行わない。 For this purpose, in the present invention, a device that cannot be used is temporarily usable in the following sequence. First, when it is desired to temporarily use a certain device in an operating system, a user or an administrator notifies the BIOS of the intention through a hardware mechanism or an application program. Then, the BIOS temporarily shifts the system to the suspended state (standby state) in order to interrupt the OS. After that, the device use / non-use setting is verified with the password, and the OS is resumed. Furthermore, the BIOS notifies the OS of the status of the device that has become available, and the OS enables access to the device. Also, when a device that can be used is temporarily disabled, processing is performed in a substantially similar sequence. However, resources are released prior to suspending the OS, and resources are not allocated after the OS is resumed.
即ち、本発明のコンピュータは、デバイスを使用可又は使用不可とする制御を行う制御手段と、制御の要求に応じ、OSをサスペンドさせた後、パスワードの入力を要求し、入力されたパスワードが妥当である場合に、制御手段に制御の指示を行うBIOSとを備えている。また、本発明のコンピュータは、制御の要求を行うためのアプリケーションプログラム、又は、制御の要求を行うためのハードウェア機構を更に備えた構成であってもよい。更に、BIOSは、パスワードの入力後、OSをレジュームし、OSは、必要に応じてデバイスに対する資源の割当てを行う。
これにより、システムの可用性(Availability)を高めることができる。また、OSを中断させるため、そこには、スパイウェア等が存在することはなく、セキュリティ上の問題もなくなる。
In other words, the computer according to the present invention controls the device to enable or disable the device, and suspends the OS in response to the control request, requests the password, and the input password is valid. In this case, a BIOS for instructing control to the control means is provided. The computer of the present invention may be configured to further include an application program for making a control request or a hardware mechanism for making a control request. Further, the BIOS resumes the OS after inputting the password, and the OS allocates resources to the devices as necessary.
Thereby, the availability of the system can be increased. Further, since the OS is interrupted, there is no spyware or the like, and there is no security problem.
また、本発明は、デバイスの使用の可/不可の制御をセキュアに行うことの可能なデバイス制御装置として捉えることもできる。その場合、本発明のデバイス制御装置は、デバイスを使用可又は使用不可とする制御を行う制御手段と、コンピュータが特定の動作モードになっている場合に動作する特定のプログラムであって、制御手段に制御を指示する正当な権限を有するプログラムを実行するプログラム実行手段と、コンピュータが特定の動作モードになっていることを示す信号を出力する信号出力手段とを備え、制御手段は、信号出力手段により出力される信号を監視することにより、特定のプログラムが制御を指示していることが判明した場合に、制御を行うというものである。 The present invention can also be understood as a device control apparatus that can securely control whether or not a device can be used. In this case, the device control apparatus of the present invention includes a control unit that performs control to enable or disable a device, and a specific program that operates when the computer is in a specific operation mode, the control unit A program execution means for executing a program having a legitimate authority for instructing control, and a signal output means for outputting a signal indicating that the computer is in a specific operation mode. By monitoring the signal output by, control is performed when it is found that a specific program instructs control.
更に、本発明は、デバイスの使用の可/不可の制御をセキュアに行うためのデバイス制御方法として捉えることもできる。その場合、本発明のデバイス制御方法は、デバイスを使用可又は使用不可とする制御を行う制御手段が、制御の指示を受けるステップと、制御手段が、コンピュータが特定の動作モードになっていることを示す信号を監視することにより、特定の動作モードになっている場合に動作する特定のプログラムが制御の指示を出力しているかどうかを判定するステップと、特定のプログラムが制御の指示を出力していると判定された場合に、制御手段が、制御を行うステップとを含んでいる。 Furthermore, the present invention can also be understood as a device control method for securely controlling whether or not a device can be used. In that case, the device control method of the present invention is such that the control means for performing control to enable or disable the device receives the control instruction, and the control means is such that the computer is in a specific operation mode. Monitoring a signal indicating whether or not a specific program operating in a specific operation mode outputs a control instruction, and the specific program outputs a control instruction. The control means includes a step of performing control when it is determined that the control is performed.
本発明によれば、システムの可用性を損なうことなく、かつ、セキュアに、デバイスに対する制御を行えるようになる。 According to the present invention, it becomes possible to control a device in a secure manner without impairing the availability of the system.
以下、添付図面を参照して、本発明を実施するための最良の形態(以下、「実施の形態」という)について詳細に説明する。
図1は、本実施の形態によるハードウェアに関する設定の制御を実現するコンピュータシステム100のハードウェア構成を示した図である。
図1に示すコンピュータシステム100において、CPU101は、プログラム制御により種々の演算処理を実行し、コンピュータシステム100全体を制御している。
メモリコントローラ102は、CPU101とメモリ104等を接続する機能を担うチップである。Intelのハブ・アーキテクチャでは、MCH(Memory Controller Hub)に相当する。
ビデオサブシステム103は、画像表示に関連する機能を実現するためのサブシステムであり、ビデオコントローラを含んでいる。このビデオコントローラは、CPU101からの描画命令を処理し、処理した描画情報をビデオメモリに書き込むと共に、ビデオメモリからこの描画情報を読み出して、液晶ディスプレイ(LCD)等のモニタに描画データとして出力している。
メモリ104は、CPU101が実行するプログラム又はそのプログラムが処理するデータの格納領域として利用される書き込み可能メモリである。例えば、複数個のDRAMチップで構成され、128MBや256MBを標準装備し、4GBまで増設することが可能である。尚、CPU101が実行するプログラムには、OSや周辺機器類をハードウェア操作するための各種ドライバ、特定業務に向けられたアプリケーションプログラム、後述するフラッシュROM108に格納されたBIOS等のファームウェアが含まれる。
The best mode for carrying out the present invention (hereinafter referred to as “embodiment”) will be described below in detail with reference to the accompanying drawings.
FIG. 1 is a diagram showing a hardware configuration of a
In the
The
The
The
I/Oコントローラ105は、PCIバスやUSB等を他の構成要素と接続するためのチップである。Intelのハブ・アーキテクチャでは、ICH(I/O Controller Hub)に相当する。
ATA(AT Attachment)106は、ATA規格に準拠したハードディスク等の機器を示している。ATAは、1989年にアメリカ規格協会(ANSI)によって標準化されたIDEの正式な規格である。最初のATA規格では、最大データ転送速度が3.3MB/秒で、1台のハードディスクの最大容量は528MBまでとなっている。
ATAPI(AT Attachment Packet Interface)107は、ATAPI規格に準拠したCD−ROMドライブ等の機器を示している。ATAPIは、IDEコントローラにハードディスク以外の機器を接続するためにアメリカ規格協会(ANSI)によって規格化されたものである。
フラッシュROM108は、一括またはブロック単位でのデータの消去、新たな書き込みを電気的に行えるROMであり、上述したようにBIOSを格納している。
PCIe(PCI Express)バス109は、ISA/EISAバス、PCI/PCI−Xバスに続く第三世代の高性能I/Oバスとして注目を集めているバスであり、PCIeデバイス110が接続される。
USB111は、キーボード、マウス、モデム、ジョイスティック等の周辺機器とパソコンとの間でのデータ伝送の規格の一つであり、USBデバイス112が接続される。
The I /
An ATA (AT Attachment) 106 indicates a device such as a hard disk conforming to the ATA standard. ATA is an official IDE standard that was standardized in 1989 by the American National Standards Institute (ANSI). According to the first ATA standard, the maximum data transfer rate is 3.3 MB / second, and the maximum capacity of one hard disk is up to 528 MB.
An ATAPI (AT Attachment Packet Interface) 107 indicates a device such as a CD-ROM drive conforming to the ATAPI standard. ATAPI is standardized by the American National Standards Institute (ANSI) to connect devices other than hard disks to the IDE controller.
The
The PCIe (PCI Express)
The
LPC(Low Pin Count)バス113は、ISAバスを持たないシステムにレガシーデバイスを接続するためのインターフェース規格であり、33MHzの動作クロックで、コマンド、アドレス、データを同じ4本の信号線(LAD信号)を使ってやりとりしている(例えばデータなら8bitを4bit×2クロックで転送)。
SuperI/Oコントローラ114は、パラレルポートを介したパラレルデータの入出力(PIO)、シリアルポートを介したシリアルデータの入出力(SIO)、FDDの駆動を制御するものである。
TPM(Trusted Platform Module)115は、セキュリティのための基本機能を提供するためのチップであり、プラットフォームの正当性検証、インテグリティの観測、暗号鍵の保護、暗号処理機能等を有している。
KMC(Keyboard Mouse Controller)/EC(Embedded Controller)116のうち、KMCは、キーボード及びマウスを制御するコントローラである。また、ECは、各種のデバイス(周辺装置、センサ、電源回路等)を監視し制御するワンチップ・マイコン(one-chip microcomputer)である。
The LPC (Low Pin Count)
The Super I /
A TPM (Trusted Platform Module) 115 is a chip for providing a basic function for security, and has platform validity verification, integrity observation, encryption key protection, encryption processing function, and the like.
Of the KMC (Keyboard Mouse Controller) / EC (Embedded Controller) 116, the KMC is a controller that controls a keyboard and a mouse. EC is a one-chip microcomputer that monitors and controls various devices (peripheral devices, sensors, power supply circuits, etc.).
PCIバス117は、比較的高速なデータ転送が可能なバスであり、データバス幅を32ビットまたは64ビット、最大動作周波数を33MHz、66MHz、最大データ転送速度を132MB/秒、528MB/秒とする仕様によって規格化されている。このPCIバス117には、カードバスブリッジ118が接続され、カードバス119を介してPCカード120との間でデータの送受信がなされる。
The
以下、本実施の形態の特徴的な構成について詳細に説明する。
尚、本実施の形態では、次の要件を満たすシステムを前提とする。
(1) システムの設定のために必要なアドミニストレータ・パスワードを保持していること。
(2) アドミニストレータ・パスワードは、OSのブートとは無関係であること。即ち、ユーザは、このパスワードなしにOSを始動できること。
(3) アドミニストレータ・パスワードによって保護されているシステム設定として、書き込みデバイスの使用の可/不可を設定する機能を有すること。
(4) プロセッサが、Intelプロセッサ・アーキテクチャにおけるSMI(System Management Interrupt)と同等の機能を有していること。
(5) SMIハンドラと同等の機能を実現するためのコードを保持しているメモリエリアは、プロセッサの通常の動作モードではアクセスできないこと。
(6) 稼動中のOSが、デバイスの初期化、停止、システム資源の割当て等を動的に実行可能なプラグ・アンド・プレイ機能を有していること。
(7) ハードウェアが、OSが使用するVRAM(Video RAM)を使わずにパスワードプロンプトを表示できるか、又は、パスワードプロンプトを表示するためにVRAMを壊しても、OSがレジューム後に画面をイニシャライズできること。
Hereinafter, a characteristic configuration of the present embodiment will be described in detail.
In this embodiment, it is assumed that the system satisfies the following requirements.
(1) The administrator password necessary for system settings is retained.
(2) The administrator password has nothing to do with booting the OS. That is, the user can start the OS without this password.
(3) As a system setting protected by the administrator password, it has a function to set whether to use the writing device.
(4) The processor has a function equivalent to SMI (System Management Interrupt) in the Intel processor architecture.
(5) The memory area holding the code for realizing the same function as the SMI handler cannot be accessed in the normal operation mode of the processor.
(6) The operating OS has a plug-and-play function that can dynamically execute device initialization, shutdown, system resource allocation, and the like.
(7) The hardware can display the password prompt without using the VRAM (Video RAM) used by the OS, or the OS can initialize the screen after resuming even if the VRAM is broken to display the password prompt. .
次に、図2を参照して、本実施の形態におけるソフトウェア構成について説明する。尚、図2では、ソフトウェアによる制御の対象となるハードウェア10も図示している。ハードウェア10としては、具体的には、次のようなデバイスを想定している。
第一に、FDD(Floppy Diskette Drive)である。FDDは、モータへの電源シグナルをコントロールできるハードウェアを有し、そのハードウェアを制御する方法はセキュアであるものとする。
第二に、PCカードである。PCカードに関しては、システムが、カードスロットのDetection Pin、及び、カードスロットへの電源供給(3.3/5/12V)を制御できるハードウェアを有し、そのハードウェアを制御する方法はセキュアであるものとする。
第三に、ExpressCard(商標)である。ExpressCard(商標)に関しては、システムが、カードへの電源の供給を制御できるハードウェアを有し、そのハードウェアを制御する方法はセキュアであるものとする。
第四に、USBコネクタである。USBコネクタに関しては、システムが、外部からアクセスできるUSBポートへの電源を制御できるハードウェアを有し、そのハードウェアを制御する方法はセキュアであるものとする。
尚、各デバイスに関して述べた、ハードウェアを制御するためのセキュアな方法については、後述する。
Next, with reference to FIG. 2, the software configuration in the present embodiment will be described. Note that FIG. 2 also shows
The first is FDD (Floppy Diskette Drive). The FDD has hardware capable of controlling a power signal to the motor, and the method for controlling the hardware is secure.
Second, it is a PC card. For PC cards, the system has hardware that can control the detection pin of the card slot and power supply (3.3 / 5 / 12V) to the card slot, and the method of controlling the hardware is secure And
Third, ExpressCard (trademark). With regard to ExpressCard (trademark), it is assumed that the system has hardware capable of controlling the supply of power to the card, and the method for controlling the hardware is secure.
Fourth, a USB connector. Regarding the USB connector, it is assumed that the system has hardware capable of controlling the power supply to the USB port accessible from the outside, and the method for controlling the hardware is secure.
The secure method for controlling the hardware described regarding each device will be described later.
また、エンベデッドコントローラ20は、デバイスの使用の可/不可の制御を行うコントローラである。
SMIハンドラ30は、本実施の形態における主モジュールであり、デバイスの使用の可/不可の制御を行うようエンベデッドコントローラ20に指示したり、パスワードを管理したりするモジュールである。このモジュールは、IntelプロセッサのSMIや同等の機能を処理するモジュールである。また、一般のソフトウェアからはアクセスできないSMM(System Management Mode)メモリエリアに常駐しており、動作中に通常のインタラプトにより実行が中断させられることはあり得ない。
尚、本実施の形態では、SMIハンドラ30を、エンベデッドコントローラ20にデバイスの使用の可/不可の制御を行うよう指示する正当な権限を有するプログラムとして位置付けている。従って、エンベデッドコントローラ20とSMIハンドラ30との間の通信には、セキュアな方法が要求される。このセキュアな方法についても、後述する。
The embedded
The
In the present embodiment, the
ACPI(Advanced Configuration and Power Interface)BIOS40は、デバイスドライバ50やOS60との間で通信を行うためのモジュールである。
尚、上述したSMIハンドラ30もBIOSに含まれる。従って、単に「BIOS」というときは、このSMIハンドラ30とACPI BIOS40とを含むものを意味する。
The ACPI (Advanced Configuration and Power Interface)
The
デバイスドライバ50は、AP70とACPI BIOS40との間を結ぶためのカーネルモードモジュールである。
AP70は、対象デバイスの使用の可/不可を設定するためのトリガー、及び、ユーザインターフェースを提供するモジュールである。SMIハンドラ30と協業し、アドミニストレータ・パスワードが要求されるデバイスかどうかを判断し、その判断結果に基づいて次の動作を決定する。
The
The
一方、図3には、本実施の形態の機能構成を示している。
本実施の形態におけるコンピュータシステム100では、図2に示したエンベデッドコントローラ20、SMIハンドラ30、ACPI BIOS40、デバイスドライバ50、OS60、AP70が、図示するように関係付けられ、情報を交換し合う。
また、コンピュータシステム100を構成するハードウェア要素として、デバイス制御の要求を行うためのホットキー11、パスワードプロンプトが表示されるディスプレイ12、制御の対象となるデバイス13が示されている。
On the other hand, FIG. 3 shows a functional configuration of the present embodiment.
In the
As hardware elements constituting the
更に、図4に、本実施の形態におけるコンピュータシステム100の動作を示す。
そこで、図3、4を参照して、本実施の形態の動作を説明する。尚、ここでは、アドミニストレータが、使用不可/可となっているデバイスを一時的に使用可/不可とする場合について、説明する。また、各動作ステップの末尾の括弧書きでは、第一に、図3における矢印に付された識別記号を、第二に、図4のフローチャートにおけるステップ番号を示している。
まず、アドミニストレータの指示により、AP70が起動し、デバイスの使用の可/不可を設定するためのユーザインターフェース(例えば、メニュー)を表示する(矢印無し、ステップ101)。アドミニストレータが、使用可としたいデバイスをユーザインターフェース上で指定すると、AP70は、その指定されたデバイスを特定する(矢印無し、ステップ102)。
或いは、デバイスの使用の可/不可の設定は、ハードウェア機構を用いて行うこともできる。例えば、アドミニストレータが、デバイスの使用の可/不可の設定操作に割り付けられたホットキー11を押下する。これにより、エンベデッドコントローラ20が、押下を検知し、ACPI BIOS40に伝える(矢印a、ステップ103)。そして、ACPI BIOS40が、その要求を認識し、デバイスドライバ50に伝える(矢印b、ステップ104)。また、デバイスドライバ50は、その要求をOS60が提供するAPI(Application Program Interface)を介してAP70に伝え(矢印c、ステップ105)、AP70が、前述と同様、指定されたデバイスを特定する(矢印無し、ステップ102)。
Further, FIG. 4 shows an operation of the
The operation of the present embodiment will be described with reference to FIGS. Here, a case will be described in which the administrator temporarily enables / disables a device that is disabled / enabled. Further, in parentheses at the end of each operation step, first, an identification symbol attached to an arrow in FIG. 3 is shown, and second, a step number in the flowchart of FIG. 4 is shown.
First, in response to an instruction from the administrator, the
Alternatively, the setting of whether or not the device can be used can be set using a hardware mechanism. For example, the administrator presses the
次に、AP70は、そのデバイスの使用の可/不可の設定にパスワードが必要かどうかを判定する(矢印無し、ステップ106)。尚、この判定は、デバイスの使用の可/不可の設定にパスワードが必要かどうかを管理する情報を参照することにより行われる。そのような情報は、AP70が保持しておいてもよいし、BIOSに問い合わせて入手するようにしてもよい。
その結果、パスワードが必要と判定された場合、デバイスドライバ50は、AP70から情報を受け、OS60をサスペンド(スタンバイ)させるための要求をACPI BIOS40に伝える(矢印d、ステップ107)。これにより、ACPI BIOS40は、通常のサスペンド要求をOS60に伝える(矢印e、ステップ108)。
Next, the
As a result, if it is determined that a password is necessary, the
OS60は、かかる要求を受けると、通常のサスペンドのプロセスを行い、最後にサスペンド状態に入るためのI/Oポートをアクセスする。しかしながら、ハードウェアは、実際には、サスペンド状態に入らずに、SMIハンドラ30に制御を渡す(矢印f、ステップ109)。
このような制御は、例えば、Intelプロセッサであれば、「SMI Control and Enable Register」のビット4に「1」をセットすることにより行う。即ち、こうすることにより、OS60が「Power Management 1 Control Register」のビット13に「1」をセットしてサスペンド状態に移行しようとしても、そのままサスペンド状態には移行せず、「SMI#」を発生させてSMMに移行する。
When receiving such a request, the
For example, in the case of an Intel processor, such control is performed by setting “1” to bit 4 of “SMI Control and Enable Register”. That is, by doing this, even if the
その後、OS60がサスペンド状態に移行すると、ACPI BIOS40は、その通知を受ける(矢印g、ステップ110)。また、一方で、SMIハンドラ30は、ディスプレイ12にパスワードプロンプトを表示し、アドミニストレータ・パスワードの入力を促す(矢印h、ステップ111)。そして、アドミニストレータ・パスワードが入力されると、その妥当性を検証する。尚、ここでの妥当性の検証は、入力されたアドミニストレータ・パスワードとBIOSが予め保持していたアドミニストレータ・パスワードとが一致するかどうかを調べることにより行う。
そして、ACPI BIOS40は、OS60のレジュームを開始し(矢印i、ステップ112)、OS60は、レジュームのプロセスを行う(矢印無し、ステップ113)。ステップ111でアドミニストレータ・パスワードが妥当であると判定された場合は、その後、デバイスの使用の可/不可の設定を行うことになる。
Thereafter, when the
The
一方、ステップ106でパスワードが不要と判定された場合、デバイスドライバ50は、OS60のサスペンド、パスワードプロンプトの表示、OS60のレジュームといった過程を経ることなく、デバイスの使用の可/不可の設定の要求をSMIハンドラ30に伝える(矢印j、ステップ114)。この場合は、無条件に、デバイスの使用の可/不可の設定を行うことになる。
On the other hand, if it is determined in
こうした処理の後、デバイスの使用の可/不可の設定は、次のように行う。
即ち、まず、SMIハンドラ30が、エンベデッドコントローラ20に対し、ハードウェア設定を指示する(矢印k、ステップ115)。
これにより、エンベデッドコントローラ20は、ハードウェアの設定を行う(矢印l、ステップ116)。
次に、ACPI BIOS40は、このハードウェア設定により新たにデバイスのシステム資源の割当てが必要になる場合は、デバイスの状態変更をOS60に伝える(矢印m、ステップ117)。これにより、OS60は、必要に応じてシステム資源をそのデバイスに割り当てる(矢印無し、ステップ118)。
After such processing, the device is set to be enabled / disabled as follows.
That is, first, the
Thereby, the embedded
Next, the
尚、本実施の形態では、上述したように、エンベデッドコントローラ20によるハードウェアの制御には、セキュアな方法を用いている。以下、このセキュアな方法の実施例について説明する。セキュアな方法として、まず、暗号化手法等の一般的な手法が考えられるが、本実施の形態では、図5に示したような手法を用いることも想定している。
即ち、ホットキー11又はAP70を用いた指示により、SMMに移行させるための信号「SMI#」がCPU101に送られる。これに応じて、CPU101は、メモリコントローラ102に対し、動作モードをSMMに切り替えるための信号「SMMEM#」(「SMIACT#」ともいう)を送るが、その際、エンベデッドコントローラ20に対しても「SMMEM#」を送るようにしておく。
一方、エンベデッドコントローラ20は、専用のI/Oポートを介してSMIハンドラ30との通信を行う。そこで、このポートを使用している際に、CPU101からの信号「SMMEM#」をモニタすることにより、実際に通信を行っているソフトウェアモジュールがSMIハンドラ30だと特定することができる。
但し、エンベデッドコントローラ20がバスマスタからの信号を受け取らないように、バスアービトレーションを行わない設定にしておく必要がある。
In the present embodiment, as described above, a secure method is used for hardware control by the embedded
That is, in response to an instruction using the
On the other hand, the embedded
However, it is necessary to set so that the bus arbitration is not performed so that the embedded
次に、図5に示した手法におけるエンベデッドコントローラ20の処理を、図6のフローチャートを参照して説明する。
まず、エンベデッドコントローラ20は、デバイスの使用の可/不可の設定を指示する信号を受信する(ステップ201)。尚、ここでは、その信号の送信元が、SMIハンドラ30なのかその他のプログラムなのかは分かっていない。
一方で、エンベデッドコントローラ20は、動作モードをSMMに切り替えるための信号「SMMEM#」をモニタしており、「SMMEM#」を受信したかどうかを判定する(ステップ202)。
その結果、「SMMEM#」を受信していないと判定した場合は、SMIハンドラ30以外のプログラムがデバイスの使用の可/不可の設定を指示する信号を送信してきたことになるので、そのまま処理を終了する。一方、「SMMEM#」を受信したと判定した場合は、SMIハンドラ30がデバイスの使用の可/不可の設定を指示する信号を送信してきたことになるので、その指示に従ってデバイスの使用の可/不可を設定する(ステップ203)。
Next, the processing of the embedded
First, the embedded
On the other hand, the embedded
As a result, if it is determined that “SMMEM #” has not been received, a program other than the
また、FDDについては、次のような手法を採用することもできる。即ち、FDDへのI/Oポートである3F2hを監視し、このポートを通じてモータがオンになったのが検出された場合、SMIハンドラ30が、モータを強制的にオフする手法である。かかる手法を採用すれば、データは一切、外部に出ない。 For FDD, the following method can also be adopted. That is, this is a method of monitoring the 3F2h, which is an I / O port to the FDD, and forcibly turning off the motor when it is detected that the motor is turned on through this port. If this method is adopted, no data will be released.
最後に、本実施の形態におけるデバイスに対する制御をセキュアに行うための信号を図1のハードウェア構成図に書き入れたものを、図7に示す。
図7に示すように、CPU101からKMC/EC116に対し「SMIハンドラ同定信号」が送られており、これにより、KMC/EC116は、LPCバス113を介して制御の指示を行っているプログラムがSMIハンドラ30であることを認識し、各デバイスに対し制御信号を送っている。具体的には、FDDの電源に対しては「FDD電源制御信号」を、PCカードに関しては「カード検出制御信号」を、USBデバイスに関しては「USB電源制御信号」を、PCIeデバイスに関しては「PCIe検出電源制御信号」を、それぞれ、送っている。
Finally, FIG. 7 shows the signal for securely controlling the device according to the present embodiment written in the hardware configuration diagram of FIG.
As shown in FIG. 7, a “SMI handler identification signal” is sent from the
尚、本実施の形態では、デバイスの使用の可/不可を制御するハードウェアとして、エンベデッドコントローラ20を想定したが、エンベデッドコントローラ20以外の制御手段を用いるようにしてもよい。また、デバイスの使用の可/不可の制御を要求するためのハードウェアとして、ホットキー11を想定したが、ボタン等、その他のいかなるハードウェア機構を用いるようにしてもよい。更に、制御対象のデバイスとしては、書き込みデバイスを想定して説明してきたが、コンピュータで用いられるいかなるデバイスに対しても、本発明は適用可能である。
In the present embodiment, the embedded
以上説明したように、本実施の形態は、BIOSによるデバイスの使用の可/不可の制御を、OSのサスペンド、パスワードの入力要求、入力されたパスワードの妥当性検証という過程を経て行うという構成を採用した。かかる構成により、OSを停止させた状態でBIOSによる制御を行う場合における可用性を損なうという課題や、OSを立ち上げたままBIOSによる制御を行う場合におけるセキュリティ上問題があるという課題を解決している。
また、本実施の形態では、SMMに切り替えるための信号をモニタすることにより、デバイスに対する制御の指示を行っているプログラムがSMIハンドラであることが判明した場合にのみ、デバイスに対する制御の指示を受け入れるようにしている。これにより、デバイスに対する制御を更にセキュアに実現することができるようになっている。
As described above, this embodiment has a configuration in which control of whether or not a device can be used by the BIOS is performed through processes such as OS suspend, password input request, and validity verification of the input password. Adopted. With such a configuration, the problem of impairing availability when performing control by the BIOS while the OS is stopped and the problem of security problems when performing control by the BIOS while the OS is running are solved. .
In the present embodiment, by monitoring a signal for switching to SMM, the control instruction for the device is accepted only when it is determined that the program giving the control instruction for the device is the SMI handler. I am doing so. As a result, the device can be more securely realized.
11…ホットキー、12…ディスプレイ、13…デバイス、20…エンベデッドコントローラ、30…SMIハンドラ、40…ACPI BIOS、50…デバイスドライバ、60…OS、70…AP、101…CPU、102…メモリコントローラ
DESCRIPTION OF
Claims (17)
前記デバイスを使用可又は使用不可とする制御を行う制御手段と、
前記コンピュータが特定の動作モードになっている場合に動作する特定のプログラムであって、前記制御手段に前記制御を指示する正当な権限を有するプログラムを実行するプログラム実行手段と、
前記コンピュータが前記特定の動作モードになっていることを示す信号を出力する信号出力手段とを備え、
前記制御手段は、前記信号出力手段により出力される前記信号を監視することにより、前記特定のプログラムが前記制御を指示していることが判明した場合に、当該制御を行うことを特徴とするデバイス制御装置。 An apparatus for controlling a device used in a computer,
Control means for performing control to enable or disable the device;
A program execution unit for executing a program having a proper authority to instruct the control unit to perform the control, which is a specific program that operates when the computer is in a specific operation mode;
Signal output means for outputting a signal indicating that the computer is in the specific operation mode;
The control unit performs the control when it is determined that the specific program instructs the control by monitoring the signal output by the signal output unit. Control device.
前記信号出力手段は、前記特定のメモリ領域を用いて処理が行われるようにするための前記信号を、メモリコントローラに対し出力することを特徴とする請求項1記載のデバイス制御装置。 The program execution means performs processing using a specific memory area when the computer is in the specific operation mode,
2. The device control apparatus according to claim 1, wherein the signal output unit outputs the signal for performing processing using the specific memory area to a memory controller.
前記制御の要求に応じ、OSをサスペンドさせた後、パスワードの入力を要求し、入力されたパスワードが妥当である場合に、前記制御手段に当該制御の指示を行うBIOSと
を備えたことを特徴とするコンピュータ。 Control means for performing control to enable or disable the device;
And a BIOS for requesting input of a password after the OS is suspended in response to the control request and instructing the control means to perform the control when the input password is valid. And computer.
前記OSは、必要に応じて前記デバイスに対する資源の割当てを行うことを特徴とする請求項6記載のコンピュータ。 The BIOS resumes the OS after entering the password,
The computer according to claim 6, wherein the OS allocates resources to the device as necessary.
前記デバイスを使用可又は使用不可とする制御を行う制御手段が、当該制御の指示を受けるステップと、
前記制御手段が、前記コンピュータが特定の動作モードになっていることを示す信号を監視することにより、当該特定の動作モードになっている場合に動作する特定のプログラムが前記制御の指示を出力しているかどうかを判定するステップと、
前記特定のプログラムが前記制御の指示を出力していると判定された場合に、前記制御手段が、当該制御を行うステップと
を含むことを特徴とするデバイス制御方法。 A method of controlling a device used in a computer,
A control means for performing control for enabling or disabling the device, receiving an instruction for the control; and
The control means monitors a signal indicating that the computer is in a specific operation mode, so that a specific program that operates when the computer is in the specific operation mode outputs the control instruction. Determining whether or not
And a step of performing the control when it is determined that the specific program is outputting the control instruction. A device control method comprising:
前記信号は、前記特定のメモリ領域を用いて処理が行われるようにするための信号であることを特徴とする請求項13記載のデバイス制御方法。 When the computer is in the specific operation mode, processing is performed using a specific memory area,
The device control method according to claim 13, wherein the signal is a signal for performing processing using the specific memory area.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004191434A JP4403221B2 (en) | 2004-06-29 | 2004-06-29 | Device control apparatus, computer, and device control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004191434A JP4403221B2 (en) | 2004-06-29 | 2004-06-29 | Device control apparatus, computer, and device control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006012034A true JP2006012034A (en) | 2006-01-12 |
JP4403221B2 JP4403221B2 (en) | 2010-01-27 |
Family
ID=35779203
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004191434A Active JP4403221B2 (en) | 2004-06-29 | 2004-06-29 | Device control apparatus, computer, and device control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4403221B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008033388A (en) * | 2006-07-26 | 2008-02-14 | Lenovo Singapore Pte Ltd | Method for executing security operation of magnetic disk device, method for cancelling password on magnetic disk device, and computer |
JP2009075991A (en) * | 2007-09-25 | 2009-04-09 | Hitachi Ltd | External medium control system |
JP2010505356A (en) * | 2006-09-28 | 2010-02-18 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー. | Changing the shared encryption key |
US8156331B2 (en) | 2006-07-18 | 2012-04-10 | Lenovo (Singapore) Pte. Ltd. | Information transfer |
-
2004
- 2004-06-29 JP JP2004191434A patent/JP4403221B2/en active Active
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8156331B2 (en) | 2006-07-18 | 2012-04-10 | Lenovo (Singapore) Pte. Ltd. | Information transfer |
JP2008033388A (en) * | 2006-07-26 | 2008-02-14 | Lenovo Singapore Pte Ltd | Method for executing security operation of magnetic disk device, method for cancelling password on magnetic disk device, and computer |
JP4724066B2 (en) * | 2006-07-26 | 2011-07-13 | レノボ・シンガポール・プライベート・リミテッド | Method and computer for making magnetic disk device accessible |
JP2010505356A (en) * | 2006-09-28 | 2010-02-18 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー. | Changing the shared encryption key |
JP2009075991A (en) * | 2007-09-25 | 2009-04-09 | Hitachi Ltd | External medium control system |
Also Published As
Publication number | Publication date |
---|---|
JP4403221B2 (en) | 2010-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lentz et al. | Secloak: Arm trustzone-based mobile peripheral control | |
JP6404283B2 (en) | System and method for executing instructions to initialize a secure environment | |
US9026712B2 (en) | USB device control using endpoint type detection during enumeration | |
KR101019937B1 (en) | Secure operating system switching | |
JP4234202B2 (en) | System for controlling access to registers mapped to I / O address space of a computer system | |
JP5335634B2 (en) | Computer that protects the privilege level of system administration mode | |
US6704808B2 (en) | Expansion unit setup control method that allocates predetermined I/O resources not currently used in processing and later deallocates said I/O resources upon completion of setup | |
CN101675417B (en) | The system and method for anti-tamper control | |
KR20130042599A (en) | Providing fast non-volatile storage in a secure environment | |
JP2008287505A (en) | Information processor and legacy emulation processing stop control method | |
KR20090091148A (en) | System and method for sharing atrusted platform module | |
CN110622162B (en) | Computer with independent user computing part | |
WO2021086747A1 (en) | Embedded system and method | |
JP4403221B2 (en) | Device control apparatus, computer, and device control method | |
JP2016018555A (en) | Operating environment switching method, computer, and computer program | |
KR20120062969A (en) | Security apparatus and method for desktop virtualization | |
US6948075B2 (en) | Computer controlling method, information apparatus, computer, and storage medium | |
JP4724066B2 (en) | Method and computer for making magnetic disk device accessible | |
JP2005346172A (en) | Computer, method for preventing removal of removable device, and program | |
WO2010114523A1 (en) | Bios usb write prevent | |
JP2002229854A (en) | Information processing device and control method for the information processing device | |
JP4800340B2 (en) | Physical presence authentication method and computer based on TCG specification | |
JP2000039929A (en) | Portable computer | |
JP2007334705A (en) | Undocking inhibition method, and computer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20051006 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20051129 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051129 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20051129 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20051129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090519 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090728 |
|
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: 20090825 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20090917 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090917 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121113 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4403221 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121113 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121113 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131113 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |