|
コンピュータウイルスは、ウイルスという名称がついていますが、その実体はプログラムです。
そして、パソコンがコンピュータウイルスに感染するという動作は、通常のプログラムでいうところのインストールにあたります。
つまり、パソコンがコンピュータウイルスに感染するということは、パソコンに対しプログラムが勝手にインストールされてしまうということなのです。
通常、Windows用の(アプリケーション)プログラムがインストールされれば、「コントロールパネル」の「プログラムの追加と削除」または「アプリケーションの追加と削除」に、「プログラム名」または「アプリケーション名」が表示されます。
そのため、プログラムの削除(アンインストール)は、【削除】または【変更と削除】をクリックすれば簡単に行うことができるようになっています(削除不可能なプログラムも一部あります)。
たとえば、WindowsXPの場合は、次のように【削除】をクリックすれば、プログラムの削除を行うことができます(【削除】は【変更と削除】になっている場合もあります)。

Windows2000の場合も次のように【削除】をクリックすれば、アプリケーション(プログラ
ム)の削除を行うことができます(【削除】は【変更と削除】になっている場合もありま
す)。

このように、「コントロールパネル」の「プログラムの追加と削除」または「アプリケーションの追加と削除」に、「プログラム名」または「アプリケーション名」が表示されていれば、該当するプログラムを感単に削除することができます。
しかし、コンピュータウイルスは、人知れずパソコンに感染させ、個人情報の盗取や自己拡散を目的として(悪意をもった人物によって)作られたものなので、そんなお行儀のよいものは、まず存在しません。
そこで、コンピュータウイルスの削除には、Windowsの動作原理をある程度理解しておかなくてはならないのです。
とはいっても、コンピュータウイルスを削除するために、Windowsの動作原理をすべて理解する必要はありません。
ほんのちょっと、プログラムが自動起動するしくみを理解しておけばよいのです。
感染方法が巧妙になったとはいえ、パソコンに感染したコンピュータウイルスのほとんどはWindowsの起動時に自動起動するように設定されます。
つまり、Windowsの起動時に自動起動されるプログラムのしくみさえ理解しておけば、この方法を利用したコンピュータウイルス(プログラム)の駆除(削除)は自分で行うことができます(コンピュータウイルスの中には、この方法では対処できないものも存在します)。
Windowsの起動時に、プログラムを自動起動させる一番簡単な方法は、「スタートアップ」フォルダにプログラムのショートカットを登録する方法です。
しかし、この方法は発見されやすく、「スタートアップ」フォルダに登録されているプログラムのショートカットを削除されてしまうとプログラムが起動しなくなるため、コンピュータウイルスで用いられることはまずありません。
では、コンピュータウイルスは、どのようにしてWindowsの起動時にプログラムを自動起動させているのでしょうか?
実は、そこにはWindowsのシステム情報が登録されているシステムデータベースであるレジストリが深く関係しているのです。
コンピュータウイルスの駆除には、レジストリに関する知識も欠かせませんが、そのすべてを理解する必要はありません。
これから、レジストリとはどのようなものなのかを見ていきますが、その前に必ずやらなければならない重要なことがあります。
レジストリを操作するにあたって、必ずやらなければならない重要なことは、レジストリをバックアップすることです。
レジストリには、Windowsの重要な設定情報が保管されています。
そのため、不測の事態が発生して万が一レジストリの登録情報がおかしくなれば、Windowsの動作事態に支障をきたす恐れがあります。
そのため、レジストリを操作する前には、必ず次のような方法でレジストリのバックアップを行う必要があります。
レジストリのバックアップを行う方法は何通りかがありますが、ここではレジストリエディタを使用した方法を紹介します。
まず、Windowsの【スタート】メニューの「ファイル名を指定して実行」を選択して「regedit」と入力すると、次のように「レジストリエディタ」画面が表示されます(次の画面は、WindowsXPにおける「レジストリエディタ」画面です)。

レジストリエディタを起動すると、このように「マイ
コンピュータ」下に「HKEY_CLASSES_ROOT」「HKEY_CURRENT_USER」「HKEY_LOCAL_MACHINE」「HKEY_USERS」「HKEY_CURRENT_CONFIG」といった項目(フォルダ)が並んでいる画面が表示されます。
これらの「HKEY_」ではじまる5つの項目は、レジストリのルートキーと呼ばれています。つまり、この5つのルートキーでレジストリが構成されていることになります。
なお、Windows95/98/Meの場合のみ、もうひとつ「HKEY_DYN_DATA」というルートキーが存在しています。
したがって、Windows95/98/Meの場合のみ、レジストリは6つのルートキーで構成されています。
レジストリエディタから見るレジストリは、階層(ツリー)構造になっていて、先頭に表示されている「マイ
コンピュータ」がレジストリ全体を表しています。
そのため、「マイ コンピュータ」下のすべてをバックアップすれば、レジストリ全体をバックアップしたことになります。
レジストリエディタで表示されている「マイ
コンピュータ」下のバックアップは、次のようにプルダウンメニューから【ファイル】→【エクスポート】を選択します。

続いて表示される「レジストリ ファイルのエクスポート」画面では、次の@〜Cのように操作します。

レジストリエディタを使用すれば、このような手順でレジストリをバックアップすることができます。
レジストリエディタでバックアップしたレジストリは、プルダウンメニューから【ファイル】→【インポート】を選択し、バックアップしたファイルを選択することによりバックアップ直前の状態にレジストリを戻すことができます。
レジストリは、Windowsが管理するとても重要な情報が保存されています。
そのため、レジストリを操作する場合は不測の事態に備えて必ずバックアップをする必要があります。
また、レジストリの操作は、メーカーの保証範囲外となるため、自己責任において実施しなければなりません。
それでは、ここで簡単にレジストリのルートキーには、どのような情報が登録されているのかを見てみましょう。
・HKEY_CLASSES_ROOT(エイチキー
クラス ルート)…省略形:HKCR
ファイルの拡張子とそのファイルの関連づけ情報、ファイルタイプとアプリケーションの関連づけ情報などが登録されています。
・HKEY_CURRENT_USER(エイチキー
カレント ユーザー)…省略形:HKCU
ユーザーごとに設定可能なWindowsの配色やコントロールパネルなどの構成情報が登録され
ています。現在ログオンしているユーザーの構成情報は「HKEY_USERS」とリンクしています。
・HKEY_LOCAL_MACHINE(エイチキー
ローカル マシン)…省略形:HKLM
ユーザーごとに設定可能なWindowsの情報ではなく、Windowsが共通で使用するハードウェアの設定、接続されている周辺機器、デバイスドライバ、インストールされているアプリケーションなどの情報が登録されています。複数の情報を登録することができるため、現在の情報は「HKEY_CURRENT_CONFIG」とリンクしています。
・HKEY_USERS(エイチキー
ユーザーズ)…省略形:HKU
「HKEY_CURRENT_USER」に登録された情報のうち、現在ログオンしているユーザーの構成情報が登録されています。
・HKEY_CURRENT_CONFIG(エイチキー
カレント コンフィグ)…省略形:HKCC
「HKEY_LOCAL_MACHINE」に登録された情報のうち、現在使用している情報が登録されています。
・HKEY_DYN_DATA(エイチキー
ダイナ データ)…省略形:HKDD(Windows9xのみ)
Windowsが頻繁にアクセスするPnP(Plug and Play:プラグアンドプレイ)などのデバイスマネージャ情報が登録されています。
このように、レジストリのルートキーには、Windows上の重要な情報が登録されています。
このうち、多くのコンピュータウイルスは「HKEY_LOCAL_MACHINE」の設定情報を勝手に書き換えてしまいます。
つまり、ユーザーごとに設定可能なWindowsの情報ではなく、Windowsが共通で使用する情報を書き換えてしまうのです。
「HKEY_LOCAL_MACHINE」にはWindowsが共通で使用する情報が登録されていますが、コンピュータウイルスが狙うのはそのうち自動起動するプログラムが登録される次の場所です。
場所:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
キー:[キー名称](このキーに自動起動するプログラムが登録される)
この部分をレジストリエディタで確認すると、通常は次のような「名前(キー)」「種類」「データ」が設定されています(設定されている「名前」と「データ」は、メーカーや機種毎に違っています)。

このように、「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run」には、コンピュータウイルスに感染していなくとも、すでに複数の「名前」が登録されています。
そのため、コンピュータウイルス以外の「名前」を誤って削除してしまうと、パソコンが正常に動作しなくなる可能性があります。
自分の使用しているパソコンに精通していれば、レジストリエディタからコンピュータウイルスが登録されている「名前」を削除すればよいのですが、コンピュータウイルスとそうでないものとを見分けるのは慣れと経験が必要です。
そこで、通常はレジストリエディタ上で「名前」を直接削除することはせず、他のユーティリティを使用して一時的にその「名前」を無効にして自動起動しないようにする方法をとります。
Windowsには、この手の作業に適したMsconfig.exeというシステム構成ユーティリティが用意されています。
システム構成ユーティリティ(Msconfig)は、Windowsの【スタート】メニューから「ファイル名を指定して実行」を選択し「msconfig」と入力すると起動することができます。
システム構成ユーティリティが起動したら、「スタートアップ」タブをクリックして画面を表示させ、次のようにコンピュータウイルスの疑いのある「スタートアップ項目」のチェックを外し、一時的に自動起動の設定を解除します(次の画面は、WindowsXPにおける「システム構成ユーティリティ」画面です)。

このように、システム構成ユーティリティを使用して、コンピュータウイルスの疑いのあるプログラムを一時的に自動起動しないようにすれば、コンピュータウイルスを特定することができます。
ただし、コンピュータウイルスは悪意をもったパソコンの精通者が作成しているため、手動で駆除するにはコンピュータウイルスに対する知識が必要になります。
また、新しいコンピュータウイルスが日々生まれているため、ここで紹介した駆除手順は、その中のほんの一例にすぎません。
手動でコンピュータウイルスの駆除を行うためには、レジストリに関する知識も必要不可欠です。
しかし、レジストリには、Windowsの重要な設定情報が登録されているため、誤った情報を削除すると、最悪の場合はWindowsが起動しなくなることさえあります。
そのため、コンピュータウイルスの駆除は、感染したコンピュータウイルス用のワクチンソフトを入手して実行するのが一番安全で確実です(ほとんどのコンピュータウイルスは、発生と同時にワクチンソフトが用意され、ウイルスチェックソフトを提供しているメーカーから入手することが可能になっています)。
現在、マイクロソフトは、蔓延するコンピュータウイルスに業を煮やし、特定のコンピュータウイルス(「ブラスター」と「ソービック」)を作成した犯人の逮捕につながる情報を提供した者に各25万ドルの懸賞金を掛けています。さらに、将来の懸賞金のため、今回の懸賞金とは別に450万ドルを用意するとしています。
何とも皮肉なことですが、今後はコンピュータウイルスの作成者を追い求め、懸賞金を得ることを職業とするウイルスハンターという名称が生まれてくるかもしれません。
|