要約
通常のシステムでは、スーパーユーザ(システム管理者権限、ルート権限)は必要な管理タスク(例えば、バックアップ)を行うために、セキュリティ上何でもできるようになっています。この何でもできるという一種の妥協こそがセキュリティホールに繋がり、ハッカーが狙うものです。ハッカーはシステムの脆弱点があると、ここを突き不正にスーパーユーザ権限を入手してしまいます。このように、システムに保管されている情報は、見た目ほど安全ではないのです。特許技術に基づく
VPDisk は、ディスク上の重要ファイルに対して、暗号技術によるセキュリティを実現しつつ、ユーザやアプリケーションから透過的(Transparent
Data Encryption)にアクセスでき、かつ、新たな管理を必要としないソリューションを提供します。
初めに
システム全体のセキュリティのレベルは、そのシステム内で1番安全性が低い部分のセキュリティのレベルと同じであるといえます。現代のコンピュータシステムにおいて、情報を安全に保管しておくのは非常に難しいことです。以下がその主な理由になります。
- システムの管理を行うために、スーパーユーザは特権を持っています。これはセキュリティの観点から見ると、セキュリティを犠牲にした上での妥協であるといえます。
- このセキュリティを犠牲にした上での妥協が、不正ユーザからの攻撃の機会を提供しています。
- システム監査は、攻撃からの防御を提供するものではありません。
- ネットワークセキュリティ、ファイアウォール、VPNは、コンピュータ自体のセキュリティ問題を解決するものではありません。
- ハードディスク上の情報は、それがコンピュータから取り外された時点で、もう何の保護も掛かっていない状態になります。
- 暗号化ユーティリティーは不便です。
システムとネットワークを稼動させ続けるためには、システム管理者には特権が必要です。しかしそれは、そのシステムの一般ユーザ(CEOを含む)から見ると、システムに保管した自身の機密情報について、システム管理者を信頼しなければならないことを意味しています。これは、システム管理者が信頼できない場合や、不正ユーザがシステム管理者の特権を不正に奪取した場合に、問題になります。
この問題を解決すべく、過去多くのソフトウェアが現れましたが、どれも成功しませんでした。いくつかは、スーパーユーザの役割をいくつかの特権ユーザに分けて、責任を分散するというもでした。他のいくつかは、1つの重要なタスクを行うのに、複数の特権ユーザが参加しないと完結できないというものでした。しかし、このようなシステムでも、ファイルアクセスの特権は、1人の特権ユーザに与えられていました。これでは、その特権ユーザが機密情報のファイルを含めて、全てのファイルに無条件にアクセスできてしまいます。
違うアプローチを取ったシステムでは、必須のアクセス制御(MAC)というものを採用して、スーパーユーザに一定の制限をかけるというものでした。MACのシステムでは、オペレーティングシステムの中にセキュリティポリシーを持っていて、一定のセキュリティレベル以上のユーザが、特定のファイルにアクセスできるというものでした。しかし、このスーパーユーザに制限をかけて、かつシステムが正常に機能するようにするためには、セキュリティポリシーを書き換えるための新しいメカニズムが必要でした。
最後のアプローチを取ったシステムでは、スーパーユーザを含めて全てのユーザを、ルール・データベースの元にコントロールするというものでした。しかし、このシステムでは、ルール・データベースの管理者が新たに必要になり、この管理者が全てのセキュリティ設定をコントロールできてしまうので、結局、スーパーユーザであれば何でも出来てしまうという状態と大差ありませんでした。
以上の教訓を踏まえると、スーパーユーザであれば何でも出来てしまうという問題は、アクセス・コントロールでは解決できないということです。アクセス・コントロールによるアプローチをとっても、結局、システム管理者がファイルを移動したり、バックアップを取ったりする必要がある以上、システム管理者には特権が必要であるということです。
問題をもっと複雑にしているのは、特権とユーザ認証のメカニズムが一緒には使われないということです。特権をもっているユーザを認証するメカニズムは存在しないので、特権を悪用していろいろなことをするというのは簡単です。例えば、UNIXのsetuidコマンドは、誰でもスーパーユーザになれる事を許可しています。これにはスーパーユーザのパスワードは必要ありません。これは、UNIXシステムにおいて、最も多く悪用されるもので、大きなセキュリティホールへと繋がっています。
ファイアウォールはシステムを攻撃から守ります。VPNは通信回線上のデータを守ります。しかし、情報は最後には、ディスクやバックアップテープの上に保管されます。統計によると、情報盗難のほとんどは、内部で発生しています。ディスクやバックアップテープ上の情報の保護は、いくら強調してもしすぎることはありません。
コンピュータの小型化が進んでいるので、新しいタイプの盗難が発生しています。物理的なディスクを盗み出して、攻撃者自身がスーパーユーザであるコンピュータにその盗み出したディスクを搭載するというものです。コンピュータの監査機能ではデータを保護しきれません。
データの暗号化は非常に有効な防御になります。しかし、エンドユーザレベルの暗号化ユーティリティーは使いにくいという問題があります。何故かというと、アプリケーション・プログラムとうまく連携していないからです。つまり、アプリケーション・プログラムで使用する前に、ファイルを復号化しておく必要があります。また、この復号化した状態では、ファイルが保護されていないため、アタッカーに狙われても防ぎようがありません。アプリケーションを使用した後に、ユーザが暗号化を忘れてしまったり、復号化した方が一時ファイルの削除を忘れてしまうこともあり得ます。
暗号化ユーティリティーは、だれでも使えるというものではありませんし、デーモンのように常時動作するアプリケーションからは全く使えません。
いくつかのアプリケーション・プログラムは、暗号化機能を内部に持っています。しかし、この暗号化機能は、システムのインフラとして提供されているものではないので、他との相互運用ができません。異なるアプリケーション間で、暗号化によるセキュリティを保つのは、難しいことです。
OmniSecure社 の VPDisk (Virtual Private Disk)
VPDiskは、透過的な暗号化をサポートしている製品で、3つのコンポーネントからなっています。
それらは、ユーザのキーボックスファイル、稼動中のプロセスにより所持されるキーチェイン、オペレーティングシステムに埋め込まれた透過的(Transparent
Data Encryption)な暗号化機能を提供するエンジンです。
- キーボックスファイルは、ユーザの鍵を保管します。キーボックスファイル自体は、キーボックスのパスワードで保護されています。このパスワードは、キーボックスの所持者により設定されます。
- プロセスにより所持されるキーチェインには、鍵が付けられ、そのプロセスから使用できる状態になります。これは、オペレーティングシステムのカーネル上の動的なメモリに置かれます。この動的メモリ上のキーチェインにはスクランブルが掛かっていて、メモリのダンプを取ってもわからないようになっています。
- 透過的(Transparent Data Encryption)な暗号化機能を提供するエンジンは、ローカルディスクに対しても、ネッワーク上のディスクに対しても同等に機能します。
これは、暗号化ファイルに合う鍵を所持しているユーザやプログラムに、on-the-fly(瞬時)の暗号化サービスを提供します。
ディスクスペースの暗号化された領域に、安全かつ透過的(Transparent Data Encryption)にアクセスできるということは、共有ディスク上に、仮想プライベートストレージ領域をユーザに提供するといことです。
NFSなどのネットワークファイルシステム環境においては、リモートのファイルサーバ上にデータを安全に保管できます。また、ディスクなしのクライアントコンピュータにおいては、仮想プライベートディスクを提供することになります。
VPDisk のテクノロジーには以下の特徴があります。
100%の透過性(Transparent Data Encryption)
全ての現行アプリケーションと、新規アプリケーションから透過的(Transparent Data Encryption)に使用できます。現行プログラムの修正や再コンパイルは一切必要ありません。
ゼロ管理
システム管理者がグループIDやセキュリティに関する属性を設定するような古い方式に比べ、VPDisk はそれ自身で完結しているので、システム管理者の管理が増えることはありません。
妥協なしのセキュリティ
合う鍵なしには、スーパーユーザであっても、ファイルの中身を見る事はできません。ディスク上とバックアップ媒体上のファイルの中身は常に保護されます。
ファイルの移行なし
VPDisk は新しいタイプのファイルシステムではありません。今あるファイルシステムに暗号化の機能を追加するものです。ファイルの移行や新しい場所への移動は必要ありません。
分散
個々のユーザが自身のキーボックスファイルを管理します。集中データベースはありません。UID、GID、アクセス権、属性などのシステム全体にまたがる関連付けはありません。この設計により、どこか1箇所がボトルネックになったり、どこか1箇所が壊れたときに、システム全体に影響が及ぶことがありません。
高パフォーマンス
要求ページ毎の暗号化とSmartCache技術により、暗号化ファイルへのアクセスは高速です。メモリーマップファイルもサポートされています。
簡単な説明
ファイルは暗号化により保護されアクセスできません。それに合う鍵を保管しているキーボックスのパスワードを知っているユーザは透過的(Transparent
Data Encryption)にアクセスできます。
使いやすさ
ユーザが通常使用するコマンドは1つだけです。プロセスが所持するキーチェインに鍵が付けられれば、ユーザは VPDisk の事を忘れて使用できます。ユーザはいつもと同じように、自分の仕事を行うことが出来ます。
信頼のおけるバイナリ
VPDisk はバイナリ形式の実行ファイルとテキストファイルを保護することができます。ユーザのキーボックス中の鍵で暗号化された実行ファイルは「信頼のおけるバイナリ」と呼ばれます。信頼のおけるバイナリは、トロイの木馬、ウイルス、その他の攻撃の影響を全くうけません。
社会全体でコンピュータが使われる時代
過去を振り返ってみると、コンピュータは4つの時代に分類されます。
科学目的のコンピュータ時代
初期のコンピュータは、科学や学術上の問題を解くために使用されました。ネットワークやリモートアクセスはありませんでした。コンピュータは1つの部屋と同じ大きさがありました。唯一のセキュリティは、入り口に立っている警備員でした。この時代のセキュリティとは、コンピュータを隔離しておくことでした。
ビジネス目的のコンピュータ時代
ビジネス目的でンピュータが使われるようになると、ネットワークとリモートアクセスが使われるようになりました。しかし、この時代のネットークは閉じた環境での使用で、コンピュータにアクセスするにはアカウントが必要でした。システムはあまり安全ではありませんでした。社外の人間は歓迎されず、社内の人間も信用されませんでした。悪いことをした人を特定するために監査が行われました。システム管理者はセキュリティにおける重要な役割をもっていました。この時代のセキュリティとは、ユーザが区別することでした。
パーソナルコンピュータ時代
この時代は、スタンドアローンのパーソナルコンピュータの時代で、セキュリティはあまり意識されませんでした。
社会全体でコンピュータが使われる時代
インターネットが爆発的に使用されるようになると、ネットワークがいたるところで存在する時代になりました。インターネットサービスプロバイダ(ISP)は、多数の関連性のないユーザを結び付け、コンピュータのプラットフォームの共有を可能にしています。コンピュータは社会全体から使われる位置付けになりました。人々が好きな時に参加し、好きな時に出て行くという形で、コンピュータは使われています。この時代のセキュリティは、オープンで、安全で、管理者を必要とせず、かつ、妥協点がないものである必要があります。
まとめ
OmniSecure社の VPDisk は、一切妥協なしのセキュリティを、システム管理者の新たな負担なしで提供します。しかも、アプリケーションからの100%の透過性(Transparent Data Encryption)も実現しています。ほとんどのコンピュータ・プラットフォーム上に存在しているセキュリティの欠点を埋めて、システムをより安全なものにします。

|