コンパイルを必要とする言語で考えると,
コンパイルしないとダメなので大変なのです。
最初からコンパイルしないプログラムだと,簡単にできますよ。
---kakikae.vbs------------------------------
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.CreateTextFile("A:\kakikae.vbs",True)
f.Write "msgbox " & Chr(34) & "私はすでに死んでいます。" & Chr(34)
------------------------------------------
たったこれだけ。
上の点線内の4行をメモ帳などテキストエディタにコピペして,
フロッピーディスクに,「kakikae.vbs」というファイル名で保存し,
そのVBSを「ダブルクリック」して開いてみてください。
「kakikae.vbs」自体が「kakikae.vbs」によって書き替わります。
書き替わることによって,元のプログラムは死にます。
(死んだヤツが「死んだ」と言うのだろうか?)
フロッピーディスクがAドライブでない場合は,
3行目の A:\ を B:\ などに書き替えてください。
また,ドライブは,Aドライブである必要はありません。任意のフォルダでも動作します。
勝手に,HD内でプログラムを動作させるのは悪いかなと思ったのと,
フォルダ構造はPCによって違うので無難なAドライブにしただけです。
JavaScriptをされているということですが,
工夫すればJavaScriptでも同様なことはできると思います。
サーバー上にあるHTMLに貼り付いたJavaScriptや .jsファイル では大したことはできません。
ローカルに保存した .jsファイル やJavaScriptを組み込んだHTAファイルだとかなり強烈なことができます。
JSはVBSに比べて,若干制約が多いのと,動作が不安定になります。
上記のものを改良すると,自己増殖も可能ですし,ウイルスも作れます。
今回は自分自身をターゲットにしていますが,自分自身以外のファイルを削除したり,別の場所にコピーすることもできます。
また他のファイルも生成可能で,レジストリの書き替えなどもバキバキにこなすことができます。
つまりPC内をぐちゃぐちゃにしてしまうのは簡単。
また,「kakikae.vbs」 みたいなVBSを自動作動させるVBSを作れば,「kakikae.vbs」 をダブルクリックする必要さえなくなります。
つまり,いわゆる時限爆弾的な物もできます。
改良すると危険な物にもなります,扱いには注意してください。
また,くれぐれも犯罪行為には使用しないでください。
お礼
VBScriptですか! 大変参考になりました。 ウイルスを作成する気はまったくないので、誤解しないでください。 回答ありがとうございました。