第1回 インテルTXTが実現する真のセキュアなプラットフォームインテルTXTによるトラステッド・コンピューティング

企業システムに対するセキュリティ上の脅威が高まる今、その脅威に対抗するためにインテルは「インテル トラステッド・エグゼキューション・テクノロジー(インテルTXT)」を開発した。この新しいセキュリティ技術は、本当の意味での「信頼できるコンピューティング」を実現するものとして注目されている。

» 2008年01月29日 07時00分 公開
[敦賀松太郎,ITmedia]

ソフトウェアによるセキュリティ対策の限界

 あらゆるコンピュータがネットワークに接続されている今、セキュリティ上の脅威は高まる一方である。機密情報の窃盗目的だけでなく、サービスの停止や情報の消去によってシステムを混乱させたり、漏えいした情報を公開することで企業の社会的信用の失墜を狙ったりなど、攻撃者の目的も多様化している。それに伴って手口は巧妙になっており、攻撃者が侵入しても発見できず、知らず知らずのうちに被害が拡大していたという例も少なくない。

 このように、コンピュータをすべての攻撃から確実に保護することは、非常に困難なのが実状である。その理由は、コンピュータシステムを守るセキュリティ技術のほとんどが、ソフトウェアだけで実現されてきたものだからだ。ソフトウェアに脆弱性があり、その脆弱性を突いた攻撃を受けたとしても、システムのハードウェアプラットフォームは何ら関知することができない。

 そうしたソフトウェアベースに頼るセキュリティの課題を解決するために、ハードウェアベースでセキュリティ機能を強化しようと立ち上がったのがインテルである。インテルは、多くの企業システムで稼働するコンピュータに標準的に採用されているプロセッサ、およびチップセットにセキュリティ機能を組み込み始めている。これにより、これまで検知することが難しかったソフトウェアの改ざんをハードウェアの機能によって検知可能にし、セキュリティの堅牢性を高めようというのだ。これが「インテル トラステッド・エグゼキューション・テクノロジー(インテルTXT)」という新しいセキュリティ技術である。

真のトラステッドを目指すインテルTXT

 インテルTXTをはじめとして、最近は「トラステッド」という言葉をよく耳にする。このトラステッドとは、「信頼された」と直訳されるが、コンピュータにおけるトラステッドは利用者、あるいは管理者が意図したとおりに動作するということを意味している。

 攻撃者によって操られる危険性を残した状態にあるコンピュータでは、とても信頼することはできない。もちろん、あらゆる攻撃を完璧に防御することは難しいので、たとえソフトウェアの改ざんが行われたとしても、それを検知して利用者、あるいは管理者に知らせることができれば、被害は防止できる。こうして、安全性を高めながら、利用者や管理者が意図したとおりにコンピュータが動作する状態が、トラステッドなのである。

 従来のソフトウェアベースのセキュリティ対策でも、安全性を高めるためにさまざまな手段が試されてきた。例えば、多くのデスクトップ、モバイルコンピュータのBIOSには、パスワードによるロック機能が備わっている。このコンピュータ固有のパスワードと、OSのログインID/パスワードを併用すれば、安全性は高まる。しかし、パスワードによるロックは100%破られないという保証はないし、破られないように堅牢性を高めれば高めるほど、使い勝手が低下するというトレードオフの関係にある。

 こうした課題を解決しながら真のトラステッドを実現するために、インテルTXTには、ハードウェア側にセキュリティ機能のメカニズムが搭載されている。

トラステッドな環境を実現するトラストチェーン

 インテルTXTは、「信頼された」コンピューティング環境の確立を目指して設立された業界標準化団体「トラッステッド・コンピューティング・グループ(TCG)」によって定義された概念をベースにしている。

 TCGのワーキンググループでは、コンピュータに必要なBIOSやブートローダといったソフトウェアの情報を、ハッシュ関数で演算した値として格納するセキュリティチップの仕様を策定している。これが、「TPM(Trusted Platform Module)」と呼ばれるものだ。セキュリティチップとしてハードウェアに情報を格納しておけば、データを改ざんすることは不可能である。したがって、ソフトウェアベースに比較して、はるかに信頼された状態を実現できるわけだ。

 セキュリティチップの情報は、コンピュータの起動時にBIOSやブートローダから取得して演算したハッシュ値と照合し、問題がなければ正常に起動して問題が見つかれば通知される。このうちインテルTXTでは、コンピュータが信頼できるかどうかを測定(メジャーメント)することが規定されている。

 コンピュータの電源を投入してからシステムが立ち上がるまで、いくつものソフトウェアが介在している。ユーザーが操作しているアプリケーションが正常に動作しているように見えたとしても、OSやドライバに脆弱性があるかもしれない。さらに、OSの安全性、信頼性が確認できたとしてもOSが稼働するプラットフォーム(物理的なハードウェア、または仮想マシン)は信頼できないかもしれない。そこで、OSを起動するブートローダが「信頼できる」とメジャーメントされ、そのブートローダを呼び出すBIOSもメジャーメントされる必要がある。

 そこでTCGでは、コンピュータの起動に実行されるBIOSを含むすべてのソフトウェアコンポーネントに対してメジャーメントを行い、トラステッドなブートローダを起動し、トラステッドなOSを起動するというように連鎖していく「トラストチェーン」という概念も定義している。トラストチェーンで最も重要なのは、当然のことながら最初に実行されるソフトウェアコンポーネントである。

インテルTXTのトラストチェーン

 TCGは、この最初に実行されるソフトウェアコンポーネントを「RTM(Root of Trust for Measurement)」と呼び、BIOS ROMからトラストチェーンを開始する「SRTM(Static RTM)」と、プロセッサが特定のイベントを発生させてトラストチェーンを開始する「DRTM(Dynamic RTM)」の2種類に大別している。インテルTXTでは、このうちのDRTMを実現するテクノロジーである。

インテルTXTの構成と働き

 このメジャーメントとトラストチェーンを具現化した技術こそが、インテルTXTなのである。

 インテルTXTは、プロセッサ、チップセット、セキュリティチップ(TPM)の各ハードウェア、およびコンピュータの構成をメジャーメントするためのソフトウェア「AC(Authenticated Code)モジュール」で構成されている。このACモジュールは、プロセッサの特定領域でのみ実行されるものだ。

 インテルTXTの動作は、次のようになる。まず、インテルTXT対応プロセッサに実装された新しい命令セットが動的にRTMを構成し、トラストチェーンを開始する。次に実行されるACモジュールのメジャーメントを実行し、ACモジュールはコンピュータシステムの構成オプションを検査する。さらに、ACモジュールによってメジャーメントが行われたブートローダが実行され、同じくメジャーメントが行われたOSを起動する。

 こうしたトラストチェーンの中で、メジャーメントを行うのがインテルTXTの役目になる。さらに、OSの起動時に実行されるドライバ、サービス、アプリケーションなどのメジャーメントを行い、この先のトラストチェーンを実現するには、OSやサードパーティが提供するソフトウェアソリューションの機能を利用することになる。

 次回は、インテルTXTが提供するシステムを常にトラステッドな状態に維持する機能を掘り下げて紹介する。

関連キーワード

Intel | セキュリティ | パスワード | Penryn


Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ