スクリプトウイルスの代表格として挙げられるのが、2000年5月に出現した「love letter」ウイルスです。
スクリプトとは、複数のコマンド(命令)を並べて書き、スクリプトと呼ばれるテキストファイルとして保存することで処理を自動化するテクニックのことです。
love letterはVBScriptで書かれています。
スクリプトウイルスはプログラムウイルスとは異なり、コンパイルする必要がありません。
コンパイルとは、プログラミング言語で書かれたコンピュータプログラム(ソースコード)を解析し、コンピュータが直接実行可能な形式のプログラム(オブジェクトコード)に変換することです。
実行プログラム形式がウイルスを作成する場合には、C言語などのプログラム言語でソースファイルを作成し、それをコンパイルしてからばらまく必要があります。
しかし、スクリプトウイルスが場合にはコンパイルをする必要はありません。
スクリプトを解釈するのはウイルスを実行するユーザのパソコンにインストールされているスクリプトの実行環境「WSH(Windows Scripting Host)」やWebブラウザなどだからです。
Windows98以降にWSHが標準装備されたことで、2000年には多数がスクリプトウイルスが出現しました。
WSHのおかげでWindows上でスクリプトファイルを開けばWSHがその内容を解釈して書かれている通りの処理を行ってくれるようになったのです。
スクリプトとWSHの関係は、マクロとワードやExcelの関係と同じです。
スクリプトを解釈するのはWSHばかりではありません。
インターネットを利用する上で、今や不可欠なブラウザやメールソフトもスクリプトを解釈します。
スクリプトはHTMLファイルに仕込むことが可能です。
このため、スクリプトウイルスをウェブページやHTMLメールに仕込めばブラウザでWebページを見ただけで、
あるいはメールソフトでHTMLメールを開いただけでウイルスに感染します。
その代表例が2003年2月以降被害をもたらしている「Redlof(レッドロフ)」ウイルスです。
Redlofのメカニズムについては別の記事で解説します。
さらにスクリプトウイルスには大きな特徴があります。
ウイルスがテキスト(スクリプト)で記述されているため、テキストエディタで容易に改変できるのです。
つまりスクリプトウイルスに感染したユーザがそれをテキストエディタで開いて、中身を少し書き換えるだけで変種が作れてしまうのです。
実際、流行したスクリプトウイルスには多数の変種が存在します。
このように、現在ではプログラムファイルを実行しなくてもウイルスに感染する恐れがあるのです。
ファイルを開くだけで感染するのですから怖いですよね。
ですから、ウイルス対策の1つとして怪しい「プログラムを実行しない」というのは不十分です。
ファイルの種類や拡張子にかかわらず、「怪しいファイルを開かない」と考えるべきなのです。