【戯言】ウィルス開発

 

昨日になるがメインで使っていないアカウントに面白いメールが届いた。

ウィルスを作る事ができるか?

いろいろ書かれていたが要約するとそんな感じだ。今世間を騒がせている新型コロナウィルスではなく所謂コンピュータウィルスだ。

確かに持っている事は持っているしウィルス自体を作成する事は難しい事ではない。マクロが組める程度でも簡単に作る事ができる。

ウィルスに何をさせるのかとウィルスをどうやって感染させるのかが難しいのだ。

作り方はもちろん面倒な事になりそうだったので”やらない”とだけ書いた返事を出した。SPAMメールも増えない事から純粋にウィルスを作りたかったのだろうと判断した。

ウィルスを作ろうと思ったらプログラム言語が何かしら必要になってくると思うのだろう。事実正しいだろう。しかし、言語なら何でもよいというわけではない。

作るにあたっては定義が必要になる。

ウィルスは、自己増殖を兼ね備えたプログラムの一種だと思っている。自己増殖機能を持っていればウィルスと考えても問題ないだろう。

悪さをしなければ、ウィルスは有効な手段となってくる。

特に、自己増殖は最新版に入れ替える場合などに使えるからだ。自作のプログラムには必ず入れ込んでいる機能だ。

私はDLLを一つ作って自己増殖と自己入れ替えを実現している。

プログラムからDLLを呼び出すと、別の小さなプロセスが起動する。そのプロセスから親となるプログラムを殺す。自分自身ではなく親を先に入れ替えるのだ。入れ替えた親からDLLやほかのバージョンアップが必要なプログラムを入れ替えるようにしている。

自己増殖は自分自身をほかの場所にコピーするだけの機能なのでそれほど難しくない。

なので、私の作っているプログラムがウィルスかどうかを判断した時にウィルスとなってしまう。最近はひかからなくなったがこの機能を作った時には無料のウィルス対策ソフトにウィルス認定されたことがあった。自己増殖や自己入れ替えは問題ではなかったのでしばらくしたらウィルス認定されなくなった。