サーバを 守るは 己自身なり

ケチャップ強盗からサーバOSのセキュリティを考える 私はケチャップ強盗により、かばんを盗まれてしまいました。どうすればそれを防ぐことができたでしょうか?FOSDEM'08自体に参加していなければ、ブリュッセルでかばんを奪われることはなかったわけですが、私はFOSDEM'08に発表するためにきたのです

原田 季栄

2008年6月28日 20:00

ケチャップ強盗からサーバOSのセキュリティを考える

 私はケチャップ強盗により、かばんを盗まれてしまいました。どうすればそれを防ぐことができたでしょうか?FOSDEM'08自体に参加していなければ、ブリュッセルでかばんを奪われることはなかったわけですが、私はFOSDEM'08に発表するためにきたのですから、それでは答えになりません。

 Linuxのセキュリティ強化の取り組みを始めたころ、OSのセキュリティ強化に関連する論文や情報を手当たり次第に調べました。そのときよく「サーバのセキュリティを保つことは簡単で、サーバをネットワークにつなげない、さらに電源もいれず、物理的に誰も近づけないようにしておけば万全だ」という表現を目にしました。でもそれでは何もできません。

 セキュリティに「これで大丈夫」はありません。考えられるリスクや脆弱性に対して対策を講じることはできても、未知のリスクまで防ぐことはできないからです。サーバOSのセキュリティ強化も同じです。ではSELinuxやTOMOYO Linuxなど、「セキュリティを強化したLinux」は、何をどのように強化しているのでしょうか?

 Linux/UNIXは、「制限された一般ユーザ」と「万能の管理者」というモデルに基づいています。一般のユーザが行える操作は限られています。必要に応じて管理者を呼び出したり、部分的に管理者の権限を認めてもらうというモデルです。

 このモデルはなかなかよくできているのですが、致命的な欠点を持っています。不正な方法により管理者の権限を奪われてしまうとその瞬間にゲームオーバーになる点です。管理者は万能なので、一度管理者権限を奪われると歯止めが何もありません。

 システムは正当な管理者とクラッカー、あるいは正当な要求と不当な要求を区別する術を持ちませんから、指示されるがままにクラッカーに操られます。そうなってしまうと、「ログ」もあてにはなりません、と言うよりあてにしてはいけません。管理者権限を奪ったクラッカーは、システムの日付を変更し、ログを編集できるのですから。

 しかしだからといって管理者や管理者権限をやめるというわけにはいきません。それではシステムの運用が成り立ちません。となると、できることは「万能の管理者」の権限を制限する以外にありません。

OSセキュリティ強化の2つの原則

 読者の中には、Windows Vistaをお使いになっている方も多いと思います。Vistaでは、ときどき画面が暗くなりダイアログが表示されて、「本当にその操作を実行しますか?」と聞かれます。「XPではこんなこと聞かれなかったのに」と不評なようですが、例えばワームに感染したとき、XPではそのまま黙って行われる処理が、Vistaではユーザの判断により止めるチャンスがあると言われると、「仕方ないなぁ」という気がしてきませんか?「何も聞かれずに何でもできてしまう」ということは、便利と言えば便利かもしれませんが、実は危険な状態でもあるのです。

 SELinuxやTOMOYO Linuxでは、管理者でログインしていてもシステムを完全に自由にすることはできません。「ポリシー」と呼ばれる設定で認められている内容は実行できますが、それ以外は管理者であっても拒否されます。

 逆に言えば、SELinuxやTOMOYO Linuxは、「漏れなく、例外なく、OS機能の実行をポリシーに照らして判断する」ための仕組みということです。この仕組みを「強制アクセス制御」と呼びます。英語では、Mandatory Access Control(MAC)です。

 なぜポリシーが必要なのでしょうか?それは、「OSには個々の機能を実行する意味や善悪がわからない」からです。人間が、管理者が、定義してコンピュータに教えてあげるしかないのです。SELinuxやTOMOYO Linuxも、事前にポリシーを定義しなければ使えません。

 「セキュアOS(より正確にはセキュリティを強化されたOS)」では、例外なくこのMACが実装されており、そのほかに「最少権限(Least Privilege)」と呼ばれる管理者の権限(特権)の分割が行われています。

 例えば、社内のあらゆる決裁に社印が必要だったらと考えてみてください。ボールペンを1本買うのに社印が貸し出されたとして、それが悪意を持つ社員の手に渡ってしまったら...。現実の会社では、委任内規により権限が分割されていますが、古き良き時代に作られたOSはそうなっていないのです。

 以上「セキュアOS」の基本的な概念である「強制アクセス制御」と「最少特権の原則」について簡単に紹介しました。2008年1月に刊行されたアスキー出版の「プロフェッショナル・セキュリティ・レビュー」に8ページの解説記事を書きました。興味を持たれた方はぜひ記事全文と紹介している参考文献をご一読いただければと思います。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30