組み込み機器でTOMOYO Linuxを使う

2009年7月30日(木)
宍道 洋

組み込み機器とセキュアOSの関係

 これまで説明したように、組み込み機器にもセキュリティー対策が必要になってきていますが、その手段の一つとして「セキュアOS」があります。組み込みLinuxを使う場合は、TOMOYO Linuxをはじめ、SELinuxやSmack、LIDSなどが利用できます。

 セキュアOSでは、例えばどのプログラムがどのファイルにアクセスできるか、といったルールが細かく定義された「ポリシー」にしたがってプログラムの動作をカーネルレベルで制御しており、そのポリシーに記述されていない動作をすべて禁止しています。そのためアンチウイルスソフトのようなアプリケーションレベルの防御策とは異なり、リソース消費を低く抑えつつ、ウイルスなどの攻撃を防ぐことができます。また、セキュリティーの脆弱性が発見されてから、その脆弱性への対策がとられる前に攻撃されてしまう0-day攻撃などに対する耐性が高いことから、長時間連続稼動させる必要があり、簡単にはアップデートできない組み込み機器にはうってつけです。

 実際にセキュアOSを利用する際に重要になる点は、適用するポリシーをいかに作成するか、ということです。ポリシーをうまく作成しないと、外部からの攻撃を防御できないばかりか、必要なアプリケーションが正常に動作しない、といった問題が出てきます。

 またセキュアOSを使う組み込み機器を新たに開発する際には、ポリシーに関する仕様決めや作成・試験などの工程が加わることになります。開発にかかる負荷を極力抑えるために、ポリシーが理解しやすく、簡単に作成できる必要があります。

組み込み向きなTOMOYO Linux

 第1回の記事(http://thinkit.jp/article/973/1/)でも説明した通り、TOMOYO Linuxはパス名を使ったアクセス制御や自動学習などといった機能を持っているため、上述したポリシーの理解のしやすさや構築の容易さから、組み込み機器に適したセキュアOSといえます。

 また、アプリケーション単位でのアクセス制御も可能であることから、必要な部分(例えばWebサービスなどの外部と通信を行う部分)のみTOMOYO Linuxでアクセス制御をかけて防御し、それ以外のアプリケーションはアクセス制御を行わずに自由に実行できるようにさせることで、ポリシーの作成量を抑え、また正常に動作しなくなるといったリスクを軽減することも可能です。

 中でもTOMOYO Linuxの自動学習機能はほかのセキュアOSにはない強力な機能です。あらかじめ準備したポリシーを使えば、ほかのセキュアOSでもポリシー作成にかかる手間を省くことはできますが、組み込み機器ではその機器の用途に合わせた専用アプリケーションや処理の違いなどがあるため、どうしてもポリシー作成の工程が発生してしまいます。この場合はTOMOYO Linuxが持つ学習機能が有効になってきます。

 その他、学習機能の副次的な効果として、前回の記事(http://thinkit.jp/article/992/3/)にあるようにデバッグで用いるほか、ファイルシステムの最適化が可能です。これは自動学習によって得られた結果を使い、その結果に記録されていないファイルシステム上のファイルを取り除いていくことで、ファイルシステム全体のサイズを小さくするというものです。特に資源の乏しい組み込み機器には、TOMOYO Linuxのアクセス制御を使用する・しないにかかわらず効果的でしょう。

日本セキュアOSユーザ会
日本セキュアOSユーザー会メンバー。趣味でセキュアOSを組み込み機器などで動かして遊んでいる。以前は会社でセキュリティーと直接関連の無い仕事を行っていたが、最近はセキュリティー関連の仕事となり、ついでにセキュアOSを製品に組み込もうと画策中。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています