アットマーク・アイティ @IT@IT自分戦略研究所QA@ITイベントカレンダー+ログ

 @IT > Linuxの真実、Windowsの真実(4)
 
@IT[FYI] 企画:アットマーク・アイティ 営業企画局
制作:アットマーク・アイティ 編集局
掲載内容有効期限2004年12月31日

 

Linuxの真実、Windowsの真実(4)
ワークロード2: セキュリティ

第4回
LinuxはWindowsより安全か?


脆弱性の数、セキュリティ・パッチ対応、セキュリティ管理に必要な情報公開を比較する

 

 いまやセキュリティは、サーバOS選択の最重要課題の1つだといってよいだろう。不正アクセスやシステム障害による損失、セキュリティ・アップデートに要する時間的損失を考慮すれば、セキュリティは慎重に検討されてしかるべきテーマなはずだ。

 しかし、実際には、根拠が定かでない噂レベルの情報や、現状とかけ離れた過去の情報に踊らされてOSが選択されるケースも少なくない。

 そこで今回は、Windows Server 2003とLinuxのセキュリティについて、きちんとしたデータに基づく比較を行いたい。

    Linuxは本当に安全なのか?

 サーバ導入時にLinuxを選ぶ理由として「Linuxは、Windowsに比べてセキュリティ上の安全性が高い」という意見を耳にすることが多いが、果たして、これは本当だろうか。

■実は数多いLinuxの脆弱性
 Windowsは、Linuxよりもセキュリティ・ホールが多く、安全性が低いという間違った先入観を持っているユーザーは少なくない。Linux関連の脆弱性は目に触れにくいだけで、数は決して少なくない。これについては、以下の米BugTraqのサイトで、Venderに“RedHat”などと入力して脆弱性をフィルタ表示してみると分かる。Linux関連ソフトウェアにおいても、Windowsに勝るとも劣らない数の脆弱性が報告されていることが分かるだろう。

 こうした現実があるにもかかわらず、Linuxの安全神話が生まれるのはなぜだろうか。

 本コーナーの第1回でも述べたように、Linuxとは、厳密にはカーネル部分のみを指す。このため脆弱性が報じられる際にも、カーネルに対するものだけが「Linuxの脆弱性」として報じられ、ディストリビューション・パッケージに含まれるその他のソフトウェアに関しては、個別のソフトウェア名で報じられる。

 これに対してWindowsでは、GUIやWebサーバ、ファイル・サーバなど、Windowsの標準コンポーネントに対する脆弱性は、いずれもWindowsの脆弱性として報じられてしまう。

 脆弱性の報告は各ソフトウェア単位であるにもかかわらず、OSの選択ではディストリビューション・パッケージ全体を“Linux”と呼ぶために、「Linuxは脆弱性が少なく安全性が高い」という安全神話につながっている大きな理由であると考えられる。

■オープンソースは対応が早いか?

 もう1つ、「Linuxはオープンソースなので、脆弱性が発見されてから修正されるまでの対応が早い」という意見もよく耳にする。確かに、ソース・プログラムを自分で読んで理解し、自らプログラムを修正して脆弱性を解消できる高いスキルを持った人なら、そのとおりかもしれない。しかし、ほとんどのシステム管理者は、スキルがあっても膨大なソース・コードから問題を探し出し、修正することはコストと効果の面から敬遠することがほとんどであろう。当該プログラムを開発するコミュニティや、ディストリビュータから更新プログラムが公開されるまでは、対策を講じられないのが実情である。だとすれば、各ディストリビュータの更新プログラム公開に要する時間を比べてみる必要がある。

 マイクロソフトが公開している米国Forrester社の調査レポートに、各OSの脆弱性が公開されてから、更新プログラムが公開されるまでの平均日数を比べたものがある。それをまとめたものが次表だ。

OS 平均日数
Windows Server 2003 25日
Red Hat Linux 47日
SuSE Linux 54日
更新プログラムが公開されるまでの平均日数
出典:Forrester「LinuxはWindowsより安全なのか(Is Linux More Secure Than Windows?)」
http://www.microsoft.com/japan/windowsserversystem/facts/analyses/vulnerable.mspx
 これによれば、Windows Server 2003は、RedHat LinuxやSuSE Linuxの約半分の日数で更新プログラムが提供されている。これはあくまで平均日数であり、これを持って安全性を単純に比較できるわけではないが、少なくとも「Linuxは脆弱性への対応が早い」という意見は間違いであることを証明している。
 また、更新プログラム自体の信頼性においても両者に違いがある。マイクロソフトでは、更新プログラムの公開前に社内の数千のサーバ、クライアント環境など、広範囲なテストを実施した後に公開を行っている。ソフトウェアの組み合わせなどを考えると、バグの発生数が過去から減少しているのは、こういった事前テストの効果であると考えてよい。それに対してLinuxでは、ストレス・テストや、ほかのソフトウェアとの相互作用に関するテストはほとんどなされていないのが実情だ。

■セキュリティ・レスポンスの質は?
 
ここまでは、脆弱性の件数という数量的な面を比較してきたが、セキュリティ・レスポンスに対する質的な面はどうだろうか。

 ITセキュリティに関する国際規格にCCITSE(Common Criteria for Information Technology Security Evaluation:情報テクノロジ・セキュリティ評価のための共通基準。以下CCと略す)がある。

 このCCにおいて、ソフトウェアの欠陥に対するマイクロソフトの対応レベルは、「ALC_FLR-3」が認定されている。これは、欠陥の修正において「FLR1」レベルを、欠陥の報告の受付において「FLR2」レベルをそれぞれクリアして包含しており、それらに対して専任チームを配備し、システム化していることを意味している。現時点でALC_FLR-3を取得しているのはマイクロソフトのみである。

 これに対しLinux製品では、各ディストリビュータがFLRを取得するのだが、代表的なディストリビュータの1つであるRed Hat社が取得しているのはALC_FLR1である。このレベルでは、修正プログラムの確証もとれていないことになる。

 一方の製品レベルでは、Windows 2000ファミリは、評価保証レベル4+(Evaluation Assurance Level:EAL4+)と修正対応のシステム化レベル3(Flaw Remediation:FLR3)の認定を受けている。EALは、その製品でセキュアな構成が可能かどうかを示すものだ。ちなみに、EAL4+は商業用ソフトウェアとしては最高レベルの位置づけである。現在、Windows Server 2003の評価が進行中であるが、同レベルをクリアすることが確実視されている。

 他方、Red Hat Enterprise Linux 3はCCのEAL2を、SuSE Linux Enterprise Server 8はEAL2+およびFLR1という認定を取得しているが、いずれもWindowsに比べれば低いレベルに留まっている。

■ソフトウェアのサポート期間は?
 
ソフトウェアのサポート・ライフサイクルは、情報システム全体のライフ・サイクルを決定づける重要な要素の1つである。重大なバグの修正や、セキュリティ・パッチの提供が途絶えたシステム使い続けるわけにはいかないからだ。各OSのサポート・ライフサイクルを次表に示す。

製品名 サポート期間 リリース サポート期限
Windows Server 2003, Enterprise Edition リリースから10年 2003年 7月1日 2013年6月30日
Red Hat Enterprise Linux Version 3 リリースから7年 2003年11月1日 2010年10月31日
SuSE Linux Enterprise Server 9 リリースから5年 2004年 8月6日 2009年8月5日
各OSのサポート・ライフサイクル

 なお、SuSE Linuxは2004年8月5日にバージョン9が登場しているので、ここではその最新バージョンで比較した。

 マイクロソフトでは、製品の無償サポートや個別環境に向けた不具合修正、仕様変更に関する要求など、すべてのサポート(メインストリーム・サポート)が製品リリースから5年提供され、その後も、セキュリティ更新プログラムの無償提供と、有償契約での問い合わせサポート(延長サポート)が5年間提供されるため、トータルでは製品リリースから10年間サポートが提供される。

 このため、表に示した3製品の中では、Windows Server 2003が最も早くリリースされたにもかかわらず、いちばん最後までサポートを受けることが可能となっている。

 表の値からだけ判断すると、Linuxディストリビューションも比較的長期のサポートが提供されるように思えるが、パッケージに含まれる大部分のソフトウェアの開発をコミュニティに頼っている性格上、万一コミュニティの規模縮小や解散などがあると、サポートも大きく影響を受ける可能性が高い。またLinuxディストリビューションには、複数のファウンデーションが開発した製品がバッケージ化されており、それらがバージョンアップされた際の過去のバージョンに対するサポート・ポリシーは必ずしも明確化されていない。推測の域を脱しないが、企業ユーザーとしては無視できない不安材料である。

    セキュリティ・アップデートの実際

 セキュリティ・アップデートに必要な作業量はどの程度違うのだろうか。

 Windowsには、Windows Updateというソフトウェアの自動更新機能が提供されている。これに対し最近の主要なLinuxディストリビューションでも、同様の機能が提供されるようになった。

 例えばRed Hat Linuxでは、「Red Hatネットワーク」と呼ばれるセキュリティアップデート・ネットワークが構築されており、定期的にサーバをチェックし、更新があれば自動的にパッチ・プログラムなどを取得して適用することができる。

 ただし、内部の動作は異なる。Windowsでは更新が必要なモジュールのみが更新されるのに対して、Linuxではソフトウェア・パッケージ全体が更新されるため、本来は更新の必要がないモジュールも更新されてしまう。そのため、ほかのソフトウェアとの整合性に不安が残ることと、更新プログラム公開直後は、更新プログラム配信サーバとの間でネットワーク・トラフィックが増大する傾向があることは覚悟しておく必要がある。

Red Hatネットワークの設定画面
初期設定の勝手が異なるが、自動更新などは違和感なく使用できる。
 
    セキュリティ・アップデート情報

 Windows Server 2003とLinuxでは、セキュリティ・アップデートに関する情報の入手性に大きな違いがある。両者のサポート・サイトを見てみよう。

 次の画面は、マイクロソフトが提供するセキュリティ・アップデート情報の一例である。

画像をクリックすると拡大します
マイクロソフト・セキュリティ情報
完全とはいえないが、Windowsに関するセキュリティ・アップデート情報は質、量ともに非常に充実している。

 同サイトには、日本語による2000ページ以上の情報がストックされていて、イラストを配したセキュリティ情報(「絵で見るセキュリティ情報」)も用意されているなど、熟練ユーザーから初心者ユーザーまで、利用者のレベルに合わせたコンテンツが提供されている。特定の脆弱性に関して必要な情報一式が同一ページ内に記述されているため、原因や対処方法などによって複数の情報を収集したりする必要はない。いわゆる「ワンストップ」のトラブル解決が可能となっている。またマイクロソフトでは、日本語情報が英語と並び最重要言語の1つに位置づけられており、米国版とほぼ時差がなく情報が公開されている。

 次の画面は、レッドハット社のサイト「セキュリティ&アップデート/ERRATA」内の1ページである。

画像をクリックすると拡大します
レッドハット「セキュリティ&アップデート/ERRATA」(http://www.jp.redhat.com/support/errata/

 同サイトはトップページこそ日本語だが、個別のアップデート情報の多くは画面のように英語のままであり、説明もコンピュータやネットワークに詳しいシステム管理者を想定しており、予備知識なしには読み進めない。日本語情報を得る場合には、追加コストを負担してそれらのニュースを購読しなければならない。こういったサービスはオープンソース・ソフトウェアでは基本的にユーザーの負担の範囲となり、TCOを押し上げる一因となっている。

 また、アップデートがほかのどのプログラムに影響を及ぼすかどうかなど、関連する情報は必ずしも整理されていないため、脆弱性の緩和策やセキュリティ・更新プログラムの適用作業では、結局のところ、それぞれのプログラムを開発するコミュニティのサイトに散在する情報を管理者自身が集めなければならない。到底、ワンストップのトラブル解決というわけにはいかない。

 WindowsとLinux、どちらがセキュリティ的に安全かなど軽々しくは判断できない。使用する管理者のスキルや熟練度、セキュリティ確保にかける時間とコストなど、多岐に渡る複合的な要素を加味する必要がある。ある人にとっては安全な製品であっても、ある人にとっては安全に構築できないといった状況に陥るのはこのためである。

 システム管理者にとって、セキュリティ対策は、悪意あるユーザーが存在し活動を続ける限り、継続して実施しなければならないシステム運用の一環として位置づけられるべきである。セキュリティ対策のTCOを長い目で考えたとき、情報が手厚く、ワンストップ・サポートが実現されているWindows環境は、Linuxに比較するとかなり有利だといえるだろう。



<バックナンバー>
◆ インデックスページ 「Linuxの真実、Windowsの真実
◆ プロローグ 「LinuxとWindows。その本当のコストとリスクを評価するために
◆ 第1回 「ファイル/プリント・サーバの基本機能比較
◆ 第2回 「ネットワーク管理に不可欠なディレクトリ・サービス
◆ 第3回 「Linuxの本当のTCOを考える
◆ 第4回 「LinuxはWindowsより安全か?
◆ 第5回 「Office互換ソフトの実力とリスク
◆ 第6回 「Webサーバ・プラットフォームとしてのLinuxとWindows
◆ 第7回 「大規模Webホスティング・サービスでシェアを広げるWindows+IIS
◆ 第8回 「Webアプリ開発プラットフォームとしてのLinux+フリーJavaとWindows+.NET
◆ 第9回 「可用性、スケーラビリティを備えたシステム開発
◆ 第10回 「座談会:システム・インテグレータから見たLinuxとWindows(前編)
◆ 第11回 「座談会:システム・インテグレータから見たLinuxとWindows(後編)
 


ファイルサーバーとしてWindows Server 2003のパフォーマンスがLinuxを凌ぐ

エンタープライズコンピューティングにおける Windows 2000 と Linux の比較ビジネスバリューを複数のワークロードから検証

社内のファイルサーバーを効率的に管理するには?

社内のサーバーが増加し、管理コストが問題に

情報漏洩と改ざんへの対策とは?

情報の安全性を確保するバックアップ

ファイルサーバーのディスク領域管理

導入事例:ライオン株式会社
Unix と Linux の環境を Microsoft Windows Server 2003 環境へ移行。社内サーバー台数を 200 台から 15 台へ削減

導入事例:東北電力/東北インフォメーション・システムズ
Microsoft? Windows? 2000 Server の PKI サポートを利用したスマートカード導入により、約 1 万 4000 台の超大規模システムのセキュリティを効率的に強化

Windows Server Systemのホームページ

Windows Server 2003のホームページ

Windows Server 2003テクノロジ(ファイル サービスと印刷サービス)

Microsoft TechNetのホームページ

TechNet:Windows 2000 Server

TechNet:Windows Server 2003



</comment> <tr> <td bgcolor="#EEEEEE"><font size="2"><a href="javascript:KeepIt();"> <img src="/club/keepoint/images/ico_kpt.gif" alt="kee&lt;p&gt;oint保存" border="0" align="absmiddle" width="24" height="18">kee&lt;p&gt;ointで保存</a></font></td> </tr> <comment>

 
@ITトップ@IT Special インデックス会議室利用規約プライバシーポリシーサイトマップ