sleepingbird.net Home since Sep.23 2003
Copyright sleepingbird, 1993- All rights reserved.
Laboratory

TOP > Laboratory > セキュリティについて

12. 21, 2003

基本的なこと

 コンピュータのセキュリティーにおいては、定石はあるが万能策はない。
 これは、すでに発見されたセキュリティーホールへの対応策は確立されているが、未だに発見されていないものについてはその対応策はないという、当たり前すぎる理屈である。
 いまのところ、コンピュータプログラムについて不具合(bug)が無いことを証明するための理論はない。
 通常、プログラミングの最終テスト段階においては、疑似データによって意図したとおりの結果が得られるかを確認し、もし結果が満足したものでなかったら該当するコード部分を丹念に人手で追跡し、誤りを見つけ手直しするという方法を繰り返す事によって完成品に仕上げられる。
 ここで、テストに使われる疑似データはあらゆる条件を網羅したものが使用されべきであるが、何をもって全て試したと言い切れるのかは難しい。従って、実際にそのプログラムが市場に流通したときに不具合が発見される場合も多々発生する。
 それではどうするか。完璧なコードを持つプログラムが存在し得ない以上、発見された不具合に対し迅速に修正を施すかがその影響を拡大させないための最良策である。従来、プログラムは新しいバージョンがリリースされる直前のものが一番安定していると言われるゆえんある。使い込むことによって隠れていた不具合が洗い出され、コードが修正されてより完成度の高いコードへと転換されていく。
 数年前までの状況に比べ昨今のプログラムは機能が一層高度化し、かつ、複数のプログラムが一台のコンピュータ上で、あるいはネットを通して複数のコンピュータ上で稼働する状況であり、その相互間の影響も無数となり、コードが複雑で膨大な状況に拍車が掛かっている。従ってこれまで以上に市場流通後の修正が多発している状況は否定できない。
 プログラムは不具合が無い方が良いに決まっている。しかし、それが出来ない以上、発見された不具合に迅速に対応し、修正しながら使っていくものだとの認識は必要である。

情報セキュリティとコンピュータセキュリティ

 「情報セキュリティ」というとコンピュータのことと考える人が多いのに驚く。これは情報処理=コンピュータという誤った認識のためだろう。1960〜70年代に EDPS という言葉が流行ったことがある。EDPS とは Electronic Data Processing System の略であり、コンピュータを使った情報処理(電子的情報処理)システムの事である。このコンピュータを使ったという部分が略されたため、誤解が蔓延したのではないかと思う。
 情報セキュリティの一手法としてコンピュータセキュリティは存在するが、コンピュータセキュリティが情報セキュリティの全てではない。
 情報セキュリティとは、全ての情報についての保護策であり、例えば自分個人の情報を提供するような懸賞などにむやみに応募しないとか、職場の仕事机の引出を常に施錠するというのもセキュリティの一環である。
 方やコンピュータセキュリティは、大きく二つに分類できる。一つは記録された情報の保護という部分ともう一つはコンピュータシステムの保護と言う部分である。前者はそのままデータの漏洩を防止することであるが、後者はシステム停止の防止、あるいはネット上でのいわゆる踏み台などとしての利用防止を言うものであり、手法としては共通する部分が多いが概念としては切り分けて考える必要がある。

コンピュータセキュリティ

 コンピュータの保護を考えた場合、現在のキーワードは「ウィルス・ワーム・ファイアウォール」と言うことになるようだ。
 ネットを介してファイアウォールを乗り越えウィルス・ワームを送り込みコンピュータに感染させ、その動きを止めたりデータを抜き取ったり、一昔前のSF映画が現実のものになっている。しかし、高度な技術が無くても、コンピュータを止めたいならコンセントを引き抜けばいいし、データを盗み出したいなら USB メモリドライブなどにコピーしてしまえばよい。ハイテク面ばかりに着目すると思わぬローテクな部分で足払いを喰らうので注意する。

ネットワークセキュリティ

 一番安全なのは、ネットワークに繋がないこと。(^^;
 次に、Microsoft 製品をなるべく使わないこと。セキュリティ関連サイトの統計を見るとネットワークを介してのウィルス・ワームの感染は Internet Explorer あるいは Outlook Express 絡みのものが大半である。従って、これらのソフトを使用しないことでほとんどの感染を防げく事が出来る。殊に、メーラーを変更することは効果絶大である。
 でも、どうしても使用したい場合や、より安全に安心してネットを楽しみたい場合は次の3つのポイントを押さえておく。

  1. 使用するプログラムは常に最新の状態にしておく。
  2. セキュリティソフトを導入する。
  3. ファイアウォールを導入する。
 1 については、linux 系 OS なら apt 、Windows 系 OS なら Windows Update によるオンラインアップデートがあるので、これを利用する。アプリケーションについては特に通信を行うものは注意を要する。アプリケーション自体にネットで更新を提供するものもあるが、更新情報は各サイトでも広報してるので常にチェックを欠かさない。サイト内容の更新チェック用ユーティリティやメールによる広報制度もあるので利用する。
 なお、 OS 本体の修正があった場合、アプリケーションプログラムに不具合が発生する場合があるが、通常事前にメーカーから対応方法がアナウンスされる。もし、そのようなアナウンスがなされず不具合が放置されるなら、以後、そのプログラムのみならず同一メーカーの製品の使用は考慮した方が良い。プログラムは修正しながら使うものである。その修正を放置するならメーカーの体質を疑った方が良い。企業として特注するようなプログラムにあっては、契約書に「使用する OS のパッチが提供された場合には、当該プログラムに与える影響を○○以内に検証し、不具合が認められない場合には速やかにそのパッチ適用することとし、不具合が認められた場合でも○○以内に対応策を提供しパッチを適用するものとする。なお、パッチ適用後に発見された当該パッチに起因する不具合についても○○以内に対応策を提供するものとする。」のような条文が必要になるのではないか。
 2 については、市販等のウィルス等検知・駆除プログラムを導入すると言うことであるが、常に定義ファイルを最新に保っておくことが必要である。
 3 は、機器を接続するタイプとプログラムによる場合とがあり、2のウィルス等検知・駆除プログラムに内蔵されている場合もある。ただし、どちらも設定を誤ると通信が一切出来なくなることがあるので注意を要する。
 最も簡単な方法としては、数千円程度のルータを回線とPCの間に接続する。これだけで絶大な効果が得られる。

 何れにしても、上記3つのポイントは並列して対処しておかなければ効果は半減する。
 こんな例がある。
 ファイアウォールで徹底して通信をブロックして不正データの進入を阻止し、ウィルス等対策ソフトでリアルタイムにウィルス等をチェックを行っていたが、数ヶ月前に発表された OS の修正プログラムを適用しなかったばかりに、内部からワームに感染した。ファイアウォールを過信しすぎて OS の保守を怠り、感染経路もハイテク面ばかりに着目したミスである。その後、そのワームに対するパッチは適用されたが、のど元過ぎた現在では以後の修正パッチは適用されず放置状態となっている。