TOP比較データ> Multi-Level Security
個人情報保護法から見るセキュアOSの必要性
個人情報保護法から見るセキュアOSの必要性

第4回:セキュアOS紹介(2)
〜 Trusted SolarisとPitBull

著者:日本高信頼システム  田口 裕也   2005/3/16
前のページ  1  2   3  4  次のページ
Multi-Level Security

   Trusted OSにはどのような強制アクセス制御機能が実装されているのかを解説します。通常、データを保存するサーバには情報の機密度が異なるデータがたくさん保存されています。そのため、データにアクセスできるユーザを制限しなければなりません。そこでTrusted OSでは、情報の機密度、重要度の高さを表す「機密レベル」というセキュリティ属性をすべてのプロセス、ファイルに付与しています。

   この機密レベルには上下関係があり、極秘情報(TopSecret)や、公開情報(Public)など、いくつかの階層が用意されています(図1)。この階層の上下関係には動作の規則があり、上位の機密レベルから下位の機密レベルには読み出しと実行しか許可しません。また、下位の機密レベルから上位の機密レベルへは追記のみ許可します。書き込みの動作は、プロセスとファイルが同一の機密レベルのときのみ許可されます。

Multi-Level Securityを使用した強制アクセス制御(情報の機密度を使用したアクセス動作)
図1:Multi-Level Securityを使用した強制アクセス制御
(情報の機密度を使用したアクセス動作)
(画像をクリックすると別ウィンドウに拡大図を表示します)


   このように、それぞれの情報に機密度の格付けを行ってアクセス制御を行う方式をMLS(Multi-Level Security)と呼びます。

   BINDの動作で説明すると、namedデーモンを「Confidential」、ゾーンファイルを「Public」、ログファイルを「TopSecret」と機密レベルを定義しましょう(図1)。すると、namedデーモンは自身より下位の機密レベルのみ参照できるので、ゾーンファイルのみ確認できます。もしBINDにセキュリティホールがあって、悪意あるユーザに権限が奪取されたとしても、MLSの構造に合わせた動作しか許可されませんので、ログファイルの内容を改竄されることはありません。

   また、機密レベルの他に、区画情報を定義することもできます(図2)。区画情報を定義すると、異なる区画へのアクセスは禁止されます。同じくBINDにセキュリティホールがあったとして、悪意あるユーザに権限が奪取されたとしても、異なる区画へのアクセスはできませんので、Apacheが被害を受けることはありません。

Multi-Level Securityを使用した強制アクセス制御(情報の機密度+区画を使用したアクセス動作)
図2:Multi-Level Securityを使用した強制アクセス制御
(情報の機密度+区画を使用したアクセス動作)
(画像をクリックすると別ウィンドウに拡大図を表示します)


   このように、Trusted OSでは機密レベルと区画情報を使用して、強制アクセス制御を実現しています。SELinuxにもオプションとしてMLSの機能が用意されています。まだ検証段階であるため実用レベルでの実装にはほど遠いですが、将来的には利用できるようになるでしょう。

前のページ  1  2   3  4  次のページ



著者プロフィール
日本高信頼システム株式会社  田口 裕也
CTCテクノロジー株式会社にてサン・マイクロシステムズ社認定Solarisインストラクターとして、Solarisの技術教育を担当、またLinuxの技術教育コース開発、立ち上げにも関わる。2003年 日本高信頼システム株式会社に入社し、教育事業マネージャーとして、SELinuxやPitBull、Trusted SolarisなどのセキュアOS、Trusted OSを扱えるエンジニア育成を中心にスクール講義、コース開発を担当。またLinux月刊誌への連載執筆その他多数の寄稿がある。また、NPOへ参加し、大学などで講演も行う。監訳書で「SELinuxシステム管理」(オライリージャパン)がある。

Linuxコンソーシアム セキュリティ部会 メンバー
NPO日本オープンソース推進機構(JOSAO) SELinux専門委員会メンバー


INDEX
第4回:セキュアOS紹介(2)〜 Trusted SolarisとPitBull
  はじめに
Multi-Level Security
  Trusted Solaris
  PitBull