○コンピュータウィルス対策
昨今では、spam 対策に埋没しがちで、且つ混同されがちなのだが、今となってはセキュリティ対策の基本とも言える。
コンピュータウィルス対策を行うソフトウェアで、よく知られているのは概ね下記だろう:
| ・ウィルスバスター | (トレンドマイクロ社 | http://jp.trendmicro.com/jp/home/ ) |
| ・Norton AntiVirus | (シマンテック社 | http://www.symantec.com/ja/jp/ ) |
| ・マカフィー | (マカフィー社 | http://www.mcafee.com/japan/ ) |
| ・ウィルスセキュリティー | (ソースネクスト社 | http://www.sourcenext.com/ ) |
| ・avast ! antivirus | (ALWIL Software a.s. | http://www.avast.com/index_jpn.html ) |
| ・Clam AntiVirus | (ClamAV | http://www.clamav.net/ ) |
このうち、 avast ! antivirus と Clam AntiVirus は無償(avast! antivirus は個人利用のみ無償) である。
さらに Clam AntiVirus はオープンソースで、メールサーバに組み込んで使用する。他の5つは、普段使うコンピュータに常駐プログラムの形で使用する。
この手のソフトウェアは、spam 対策と同様、コンピュータウィルスに感染している電子メールを抽出し、隔離する。
ただ、コンピュータウィルスの場合は、隔離して保存しても、保存した電子メールは読まないにこしたことは無いので、隔離後に削除することが多い。実際、上記で挙げたコンピュータウィルス抽出を行うソフトウェアは、コンピュータウィルスを検出すると、電子メール丸ごと削除が基本となっている。
さて、コンピュータウィルスはどのように検出・抽出するのだろうか。
現状では、検出方法に大きく「シグネチャ手法(パターンマッチング手法とも言う)」と「ヒューリスティック手法」があり、現在流通しているほぼ全てのコンピュータウィルス検出を行うソフトウェアは、両者の検出方法を併用している。
シグネチャ手法: 遺伝子DNAのように、特定のコンピュータウィルスにもそれ自身を示す固有部分をチェックする方法。初期のコンピュータウィルスは殆どこのやり方で検出できる。
ヒューリスティック手法: コンピュータウィルス自身がシグネチャ型の検出逃れをするため、自身をアメーバのように変化させるもの(ステルス型とも言う)も増えてきているので、コンピュータ全体の挙動チェックをして、コンピュータウィルスと疑われる動作をしたプログラムをコンピュータウィルスとするもの。
また、上記のシグネチャ手法に類似した手法として、「チェックサム手法」、
上記のヒューリスティック手法に類似した手法として、「ジェネリック手法」「ルールベース手法」がある。

どの手法を採用するにしろ、コンピュータウィルスを見極める手がかりとするため、パターン定義ファイルが必須である。
このパターン定義ファイルは、Clam AntiVirus・avast! antivirus は毎日、他のソフトウェアも2~3日に1回、ほぼ毎日現れる新種のコンピュータウィルスに対応するために更新される。
現在では、このパターン定義ファイルは、インターネット経由で入手・更新するのが普通になっている。
多くの場合、コンピュータウィルス抽出を行うソフトウェアが自動的にこの処理を行う。
左記は、筆者が管理するメールサーバの1つを統計したものである。
このメールサーバは、組織内部での電子メールが多いため、spam メールは平均で全体流量の5~7%程度で、極めて少ない部類になる。
最近は、コンピュータウィルスは減少傾向である。
しかしながら、2~3年前に大発生したコンピュータウィルスが未だにほぼ毎日検出される。
「自分のところは大丈夫」とタカをくくっていないだろうか?
是非、セキュリティ対策の基本であるコンピュータウィルス抽出を行うソフトウェアを導入して頂きたいものである。
○今どきのメールサーバは、こんなに複雑
最後に、メールサーバの構成を簡単に示そう。左の図は、筆者が運用しているメールサーバの構成概要を示したものである。赤文字は現在採用しているもので、将来は変わる可能性もある。
このほかに port 587(submittion) を送信のメールサーバで受け付けている。
また、受信のメールサーバには、電子メールアドレス単位でメールボックス(メールスプール)を設けている。
図中には無いが、spam フィルタにも、電子メールアドレス単位で、ベイジアンフィルタの為のデータファイルがある。
一口に「メールサーバ」といっても複数のソフトウェアモジュールが組み合わさって初めて実現していることが何となく理解できれば幸いである。
図中、アカウントDBとあるが、筆者はこの部分に OpenLDAP を使用している。現在では、電子メールのユーザ管理は、このようにある種のデータベースを用いるのが主流になっている。
