素歩人徒然 ウイルスメール ウイルスプログラムの虫
素歩人徒然
(46)

ウイルスメール


── ウイルスプログラムの虫

 最近、頻繁にウイルスメールによる攻撃を受けている。
 常時接続の環境に移行すると同時にウイルスに対する備えも整えたので、直接の被害はない。しかし心理的には実にいやなものである。

 ウイルス対策をして以降の全ウイルスログを調べてみると、最初は数ヶ月に1回程度の攻撃頻度だった。それがここへきて月数回となり、7月8日の日などは1日に16件のウイルスメールが届く事態となってしまった(表参照)。

受信日付
ウイルスの種類
2001/12/29
2002/1/5
2002/1/20
2002/1/30
2002/2/12
2002/2/18
2002/7/6
2002/7/7
2002/7/8
2002/7/9
2
3
1
1
1
1
3
3
16
4
WORM_BADTRANS.B
WORM_BADTRANS.B
WORM_BADTRANS.B
WORM_BADTRANS.B
WORM_BADTRANS.B
WORM_BADTRANS.B
WORM_KLEZ.H
WORM_KLEZ.H
WORM_KLEZ.H
WORM_KLEZ.H

 特に、クレズ(*1)という名のウイルスはたちが悪い。感染した人の使っているメーラーのアドレス帳を利用して感染を拡大させていく。その点はウイルスプログラムが普通にやっていることだが、このウイルスの特長的なところはウイルス発信者のアドレスもその中から選ぶようになっている点である。

【注】(*1) WORM_KLEZ.Hという名で検出されるが、これはWORM_KLEZ.Aウイルスの亜種で、自身のコピーを添付したメールを送信し頒布するワーム活動を行う。エクスプローラのセキュリティホールを利用してメールが表示されただけで添付ファイルが実行されるダイレクトアクション機能を有するという。

 私はウイルスメールが届くと直ぐさま削除してしまうが、一応削除する前にメールの受信ログを調べることにしている。どんなメールアドレスの人がどのようなルートを経由して送ってきたのかを確認するためである(発信された地域とか利用しているプロバイダ名やサーバー名等がある程度分かる)。普通は発信者の名前は偽名か意味不明のつづりになっていることが多いが、このクレズというウイルスの場合は普通の個人名(らしい、と私は思う)がそのまま記録されているのである(幸いなことに私の知人の名前はなかったが‥‥)。

 いろいろ調べてみると、このメール発信者は必ずしもウイルスには感染してない(つまりウイルス騒ぎとは一切無縁の)第三者であることが分かってきた。ウイルスメールを受け取った人は、普通そのメールの発信者に対して疑いを抱きがちであるが、クレズの場合はこれが全くの見当違いなのである。発信者とされた人はこの件に全く関与していない可能性の方が高いのである。

 そう考えてきて私は恐ろしい事実に思い至った。もしかすると私の名前でウイルスメールが発信されているかもしれない! 事実、あるプロバイダのpostmaster名で私宛にウイルスメールが届いたのだが、それは私の発信した(と称する)メールが受信拒否されて返送されてきた形をとっていた。そのとき私は不思議に思いながらも取りあえずそのメールを削除したのだが、後からつらつらと思い返してみて、私の名前でウイルスメールが発信されているに違いないと確信を持つに至ったのである。実に恐ろしいことではないか。これは断じて許せない。私はこのウイルスメールの作者に対してふつふつと怒りがわいてきたのである。

 このクレズという名のウイルスプログラムには、次のような記述が含まれているという。

 Win32 Klez V2.01 & Win32 Foroux V1.0
 Copyright 2002,made in Asia
 About Klez V2.01:
 1,Main mission is to release the new baby PE virus,Win32 Foroux
 2,No significant change.No bug fixed.No any payload.
 About Win32 Foroux (plz keep the name,thanx)
 1,Full compatible Win32 PE virus on Win9X/2K/NT/XP'
 2,With very interesting feature.Check it!
 3,No any payload.No any optimization'
 4,Not bug free,because of a hurry work.No more than three weeks
 from having such idea to accomplishing coding and testing'

 あろうことか著作権表示やバージョン番号まで付いている。作者はどういう積もりなのだろう。いっぱしのプログラマ気取りではないか。「Not bug free」とあるから、作者はこのプログラムには虫があるかもしれないと言っている。しかしその実、コードには自信があるからこのように書くのであろう。

 ところで“虫”というのは、プログラムを実行する際に生ずる何らかの“不具合”(またはその原因)のことである。ウイルスプログラムのように最初からシステムに不具合を起こすことを目的とするプログラムの“不具合”とは一体何を指すのであろうか。作者はその点をどう理解して“bug”という言葉を用いたのであろうか。

 本当のプログラマなら、自分の作ったプログラムに責任を持たねばならない。もし不具合があれば、直ちに、万難を排してでも修正すべきなのである。自分の作ったプログラムに虫があるかどうかを自ら判断できない者、あるいは不具合が発見されたときそれを修正する意志のない者は、そもそもそのプログラムをリリースしてはならないのだ。いや、リリースする権利はないと思い知るべきであろう。

 そういったプログラマとしての基本的な常識が欠けている者は、エセプログラマとしか呼べない輩(やから)であるに違いない。ろくでもないコードしか作れないからこそ他人のウイルスプログラムを真似て、それを自分が作ったかのように錯覚し著作権表示などを入れてしまうのであろう。哀れなことである。

 世の“本物のプログラマ”諸氏は、このインチキプログラムの欠陥(データ破壊、メール誤配信、アドレス取り違え‥‥等)を指摘し、そのコードのお粗末さを糾弾すべきである。そしてこのエセプログラマに修正(?)を迫るべきではなかろうか。決して見過ごしにすべきではない、と昔プログラマの私めは思うのである。何しろ作者はこれを“虫”とは認識していないのだから。■