VBEの恐怖

VBS.LoveLetter以降、VBSを使ったウイルスやワームが世間を騒がせている。 しかし、本当に恐ろしいのはVisual Basic暗号化スクリプト、VBEであろう。 VBEはVBSを暗号化したもので、VBEファイルはVBSファイルと同様、プログラムとして実行可能である。

 

VBEスクリプトは暗号化されているため、VBSスクリプトと違ってその機能が一見してわからない。 これがウイルスやワームに悪用されれば、ウイルス対策がより困難になるに違いない。

実は、VBEのコード暗号化単位はファイルではなく、プロシージャでもなく、なんと1文字単位に可能なのである。 さらに、改行コード自体も暗号化できる。これが何を意味するかおわかりだろうか。

 

VBEの危険な点は、ぱっと思いつくだけでも下記の3つがある。

(1) ファイルの拡張子がVBEであれば、ファイル中のどこにどれだけ暗号化コードがあっても実行可能である。 すなわち、ウイルスは、ウイルス本体が暗号化されたままで感染可能である。

(2) ウイルスコードが、その直前の改行コードを含めて暗号化されていれば、 見かけ上、文字列定数やコメント行の一部として見えるように仕組むことが可能である。 すなわち、「""で囲まれた部分は文字列定数であり、実行されない」 とか「rem および ' 以降は行末までコメントとみなされ、実行されない」 という常識が覆されるのである。
例) 下記の3行を"TEST.VBE"というファイルにコピー&ペーストし、保存し、実行(ダブルクリック)してみよ (もちろんこれはウイルスやワーム等の不正プログラムではない)。

rem 下記は重要な識別情報です。削除しないでください!
rem #@‾^FwAAAA==@#@&:dT4K6PrKAjKe"E@#@&pAQAAA==^#‾@ 
msgbox "MAIN"
1〜2行目はコメント(rem文)であり、3行目のみが実行文であるように見えるが、 はたして、"MAIN"というメッセージボックスだけが出ただろうか?
※ 実行には「Windows スクリプティング ホスト」がインストールされている必要がある。

(3) 現時点(2000年8月1日)で販売されている一般的なウイルス対策ソフトウェアのほとんど (McAfee VirusScan 4.0.3, トレンドマイクロ ウイルスバスター 2000, Norton AntiVirus 2000)が、VBEの暗号化ファイルに対応していない。

 

Microsoftは、電子メールにVBSやVBEファイルが添付されていても開けなくするOutlook用セキュリティパッチを出した。 しかし一体どれだけのユーザがこのパッチを当てただろう。 そもそも、これは一時的な処置で、根本的な対策にはなっていない。 はたして、何の心配もなく安全にスクリプトを利用できる日は来るのだろうか。

なお、一般ユーザの一番簡単な対策は、「Windows スクリプティング ホスト」をアンインストールすることだ。 これは「コントロールパネル」-「アプリケーションの追加と削除」-「Windowsファイル」-「アクセサリ」 から可能である。

戻る


Copyright (c) 2000 YU