セキュアOSとは?SELinuxとTOMOYOLinux

セキュアOSとは?SELinuxとTOMOYOLinux

セキュアOS

セキュアOSとは、従来のOSよりもセキュリティ的に強化されたOSの総称です。一般には次の2つの特徴を持っています。

(1) MAC (Mandatory Access Control : 強制アクセス制御)

従来の多くのOS に採用されている DAC(Discretionary Access Contral:任意アクセス制御)では、オブジェクト(ファイルなど)の所有者が、各オブジェクトへのアクセス権限を設定できます。一方、MAC では、オブジェクトの所有者ではなく、管理者がセキュリティポリシーを保持し、オブジェクトのアクセス権もコントロールします。このため MAC で管理者から権限を付与されていなければ、所有者であってもオブジェクトのアクセス権限を変更することはできません。このようにすることで、より堅牢にシステムを守ることが可能になります。

(2)最小特権

Linux など UNIX系の OS では通常、管理者アカウント (root ユーザー)にありとあらゆる権限(システム上では何でも実行できる権限)が与えられていますが、セキュア OS ではこのような万能アカウントは使用せず、作業を行うために必要な最小の権限を一時的に与えるようにします。上記のように、セキュア OS は、通常の OS と比べ、より安全にはなっていますがその反面、権限管理が複雑になるという課題も残っています。セキュリティ的には優れていますが、決して万能な OS ではないということは覚えておいてください。

代表的なセキュアOS

代表的なセキュアOS には、Linux の強化版であるSELinux(Security-Enhanced Linux) や TOMOYO Linux があります。

SELinux,TOMOYO Linux

SELinux (Security-Enhanced Linux)

セキュリティ強化を行った Linux 実装の1つに SELinux があります。SELinux la, TE(Type Enforcement) ERBAC(Role Based AccessControl:ロールベースアクセス制御)の2つを用いて、セキュア OSの要件である強制アクセス制御(MAC)と最小特権を実現しています 。SELinux では、ユーザーが持つ権限よりも、「プログラムに対して許可する操作!のほうが優先されますが、この操作を記述するのが TE であり、RBAC です。

SELinux では、プログラムに対し「何をさせられる」ということを「ドメイン」で、ファイルなどの資源に対し「誰に対し」「何をさせる」ということを「タイプ」でそれぞれ定義できます。このことをTE と呼びます。ユーザーに対する権限付与も、ドメインを複数束ねた「ロール」を用いて実現します。たとえば 「root ならば目的に関係なく何でもできる」ではなく、「root に対しても資源の目的外利用を許可しない」というようにできるので、より安全な環境になることが期待できます。

TOMOYO Linux

SELinux は、きちんと運用できれば非常に強固なセキュリティを実現できますか、TEとRBAC がとにかく難解なのが課題です。これを解決するためのアプローナの1つとして、TOMOYO Linux が開発されました。TOMOYO Linux では、セキュア OS の要件である MAC(強制アクセス制御)と最小特権を実現するために、学習、確認、強制の3つのモードを使い分けます。す習モードでTOMOYO Linux を動かし、通常の運用管理を行うことで、「通常行づきこと」をシステムに教え込み、確認モードで教え込んだ内容が適切であるかを確認して、強制モードで MACと最小特権状態を実現します。SELinux と比較して運用が直感的でわかりやすいのが特徴といえます。|

セキュリティカテゴリの最新記事