Point
1. Webサーバーのパッチ適用費を抑えるためにセキュリティ強化OSを採用
2. アプリケーションの脆(ぜい)弱性を突かれても実害が生じない構成を採った
3. サーバー1台当たり年間で最大200万~500万円の運用費削減につながる

画面1●宝グループのシステムを開発・運用する宝ネットワークシステムはWebサーバーに「セキュリティ強化OS」を導入
図1●ワームに侵害された反省と,サーバー・パッチ適用のコスト削減を目的に,セキュリティ強化OSの採用を決めた
2001年7月,Windows NT 4.0/IIS4.0で実装したWebサーバーがワーム「Code Red」に侵害されてしまう。この反省から2002年3月,大半のサーバーをLinuxに移行したが,既存のアプリケーション資産を維持するために一部Windowsサーバーは残した。その結果,追跡すべきパッチの数が増えてしまい,パッチ適用のコストもふくらんだ。セキュリティ・レベルを下げずに運用コストを下げる方法を模索した結果,セキュリティ強化OSの採用を決めた
図2●Webサーバーにセキュリティ強化ソフトを組み込んで攻撃への耐性を高めた
既存のWebサーバーに,OSのカーネル領域でセキュリティを強化するソフト「PitBull Protector Plus」を組み込んだ。ユーザー領域のアプリケーションから呼び出されるシステム・コールを捕捉して,ポリシー設定に従いアクセス制御するソフトである。OSやアプリケーションの変更なしに,不正ファイルの書き込み,シェル・プログラムの実行,セキュリティ強化の定義ファイルへの読み書きなどを阻止できる
 このままだとパッチの検証や適用の作業が追いつかなくなる――。

 宝酒造など宝グループの情報システムを開発・運用する宝ネットワークシステムは,ベンダーなどから相次いで提供されるセキュリティ・パッチの多さに悲鳴を上げていた。

 不正アクセスやワーム感染などの脅威からサーバーを守るには,プログラムの脆(ぜい)弱性を修正するパッチを適用せざるを得ない。ところが,提供されるパッチの数が多すぎて,保守要員は検証や適用に忙殺されることが常態化していた。パッチの適用が追いつかなくなると,システムの脆弱性が放置される結果になり,被害を被るリスクが飛躍的に高まってしまう。

 窮地を脱するため,宝ネットワークシステムは,WebサーバーのOSにアクセス制御機能を強化するソフトを組み込むことにした(画面1[拡大表示])。いわゆる「セキュリティ強化OS」を採用したのである。グループ企業のタカラバイオの商品カタログ・サイトに2004年5月末に導入するのを皮切りに,ほかのサイトにも順次導入する計画だ。

 セキュリティ強化OSを使うと,パッチを適用していない脆弱性を突かれても,重要なシステム資源へのアクセスを禁止しておくことで,実害の発生を抑え込める可能性がある。「安全面を犠牲にせずに,適用しなければならないパッチの数を減らせる。休日出勤して急いでパッチを当てるなどの手間が減る」(ソリューション企画室長 チーフコンサルタント 内山恒示氏)。

ワーム感染で“パッチ地獄”に

 宝ネットワークシステムがパッチ適用に忙殺される“パッチ地獄”に陥ったのは,2001年7月。ワーム「Code Red」に侵害されたのがきっかけだった(図1[拡大表示])。

 Code Redは,マイクロソフトのWebサーバー・ソフト「IIS」の脆弱性を突き,ネットワーク経由で自動的に感染し,多くの企業に被害を与えた。同社の取引先も数社が被害を受けたため,不安に駆られて保守を請け負っている全システムを調べたところ,一部のサーバーで攻撃を受けた痕跡が見つかった。「ファイアウォールを過信してパッチを適用していなかった担当者がいた」(内山氏)。幸い同社では,Webサーバーの公開フォルダの場所などをメーカーの既定値ではない独自の設定にしていた。このため,公開用のデータを改ざんされる,バックドアを仕掛けられるなどの実害は免れた。

 この反省に基づき,宝ネットワークシステムは保守担当者にパッチ適用を周知徹底する一方,ワームの標的になりやすいWindowsのWebサーバー十数台を2002年3月にLinuxに移行した。保守料を削減する狙いもあった。

 ただ,Active Server Pagesのアプリケーションとして実装したタカラバイオのカタログ・サイトなどをLinuxに移植するのは,かなりの手間とコストがかかると判断。これらごく一部のサーバーはWindows 2000にアップグレードするだけとした。結果として宝ネットワークシステムは,WindowsとLinuxのそれぞれについて,脆弱性の情報を追跡し,パッチを検証・適用しなければならなくなった。

負担軽減が急務に

 WindowsでもLinuxでも,サーバー1台当たり月1~2本のパッチは適用せざるを得ない。緊急性が高いものやサーバーの再起動が必要なものは,保守担当者が休日返上で適用作業を実施する。サーバー1台当たりのパッチ適用の労力をコスト換算すると,月額で約20万~40万円,年額では約200万~500万円に膨らんでいた(金額はいずれも本誌推定)。

 一時は,パッチ適用の準備作業を省力化するため,脆弱性の情報を提供するセキュリティ情報サービスの利用を検討した。だが,「値段の割には検証や適用という実質的な手間はあまり減らない」(内山氏)ため,諦めた。

 省力化の手だてを模索しているときに知ったのが,セキュリティ強化OSと呼ばれる製品だった。OSが提供する基本的な命令(システム・コール)の呼び出し可否を,カーネル領域の内部で制御できるソフトである(図2[拡大表示])。

 このアクセス制御機能を使い,多くの攻撃コード(exploit)が悪用しようとするシェル(Windowsでいうcommand.com)の実行を禁止すれば,「アプリケーションの脆弱性を狙った攻撃コードの多くを無効化できる可能性が高い」(ソリューション企画室ソリューション企画グループ 白坂昌司氏)。アクセス制御の設定ファイルの読み書きや,不正ファイルの作成を阻止すれば,改ざんも抑止できる。

(実森 仁志=hjitsumo@nikkeibp.co.jp)