§1.概要
スパイウェアやトロイ等のマルウェアに感染すると、「HijackThisでログの検証」と言うことが叫ばれます。でも、HijackThisのログはと
ても厄介な感じを受けます。a-squared
HijackFreeはHijackThisをさらにパワフルにしたようなツールです。そして、様々な詳細データを表示してくれます。しかし、それでも大
変な操作を伴いますが、自分の(もしくは自分とその家族の)インターネットにおける行動の結果ですから、a-squared
HijackFreeを使用して、自分のデータだけでも解析することにトライしてみてください。以下は、a-squared
HijackFreeを用いたデータ解析方法です。(emsisoft 提供の Removing Malware with a-squared
HijackFree の和訳が中心です)
最初にお断りしておきますが、外国サイトのデータベースは、日本等の2バイトコードの情報に弱い点が見受けられます。この点は最初に認識しておいてくださ
い。
なお、a-squared Free と a-squared HijackFree は別物です。
§2.ダウンロードとインストール
・ ダウンロード
・ インストール
特に何もありません。使用許諾書に同意して、次へをクリックしていくだけです。
§3.ガイド
3-1.概要
トロイやスパイウェアのような最も現代的なマルウェアは、通常独立したプロセスで稼動します。古典的ウィルスに自分を他のファイルに寄生させるものがあり
ますが、ここでの説明は、それ自身が独立しているマルウェアに限定しています。重要なことは、現在稼動中のプロセスを認識しマルウェアに関連するプロセス
を発見することです。その後、マルウェアと同定したものを無効化したり削除したりすることになります。
しかし、無闇に削除したり無効化したりする前に、それが現在のシステムにとって本当に無用なプロセスであることを確実にする必要があります。このためには
各プロセスの詳細な情報と解析が必要になります。必ず、以下のことを確認します。
- # プログラムの出所はどこか?
- # プログラムの著作権者(製作者)は誰か?
- # そのプログラムは外部のコンピュータからの命令を受け取るためにTCPまたはUDPポートを開くか?
- # そのプログラムは自動起動エントリから起動されているか?
- # そのプログラムはWindowsのサービスとして起動されているか?
平均的PCで起動しているプロセスは50位と言われています。Windowsの標準的ツールでチェックするとなると大変な仕事です。a-squared
HijackFree の優れているところは、これらの情報を沢山用意してくれているところにあります。
では、a-squared HijackFree を起動してみます。
3-2.プロセスリストと識別表示について
a-squared HijackFree
を起動するとプロセスが表示されているはずです。他のカテゴリが表示されている場合は、左のメニューで「プロセス」(赤の囲み)をクリックします。右側の
プロセスがリストされている画面が上図のように色づけられて無い場合は、右上のツールバーの最初の"Refresh Online
Data"アイコン(赤の囲み)をクリックします。emsisoftのデータベースとの通信が行われ、赤、黄、緑、白に色分けされます。
Green Entry(緑色表示のエントリ)
緑色表示のエントリは、このプロセス名がemsisoftのデータベースでは無害とされるソフトウェアしか登録されていないことを意味しています。
一般的には、無害として差し支えないのですが、有害な同名のプロセスがデータベースに登録されていないだけかもしれません。盲信しないようにしてくださ
い。
Yellow Entry(黄色表示のエントリ)
黄色表示のエントリは、このプロセス名がemsisoftのデータベースで無害とされるソフトウェアと有害とされるソフトウェアの両方が登録されているこ
とを意味しています。
この場合は、
- # そのエントリをクリックし反転表示させます。
- # 右下の詳細情報の画面を下までスクロールすると、プロセスデータベース中の情報があります。
- # このプロセスデータベースのパスと、強調表示させているパスとの比較を行います。
- # この比較にはチョッとした嗅覚が必要な場合があります。
現在、強調表示しているエントリのパスを、以下と仮定します。
c:\programs\knownmanufacturer\program.exe
このプロセスデータベースに二つのエントリがあったとして、一方は悪意あるプロセスとされ以下のパスであったとします。
もう一つは無害のプロセスのパスとして記述されていて、以下のパスであったとします。
c:\programs\knownmanufacturer\version 2\program.exe
どちらも、まったく同じパスではありませんが、現在選択しているプロセスは無害なプロセスであると推定できます。これは無害であるとされるパスと僅かな相
違しかないためです(この場合はパスのうちバージョンだけが version 2
として追加されているに過ぎないから)。また、あなたが意識的に無害のプログラムをインストールした場合のように、製造者からプロセスの安全性が確認でき
るのであれば、確信してこのプロセスを無害と判断できます。そこで、次のプロセスに進むことになります。
Red Entry(赤色表示のエントリ)
赤色表示のエントリは、このプロセス名がemsisoftのデータベースでは有害とされるソフトウェアしか登録されていないことを意味しています。
この場合は、本当にマルウェアである場合と無害な同名のプロセスがデータベース中に登録されていない場合の二通りがあります。一般的に有害なプロセスです
が、削除に関しては、詳細情報やGoogle等で検索し様々な情報を慎重に検証した後に行うようにします。
まず、HijackFreeの「詳細ウィンドウ」(右下)の”プロパティ”セクションを閲覧します。ここでは、
プログラムファイルに関連する情報(製造会社や著作権者等)が確認できます。
次に、”プロセス詳細”セクションを閲覧します。
- ・ このプロセスが、”サービスとして実行:はい”の場合は、あまり疑わしく
ありません。
- ・ このプロセスが、”自動実行で開始:はい”の場合は、かなり疑わしいプロ
セスです。
- ・ このプロセスが、TCPポートやUDPポートを開いている場合は、非常に疑わしいプロセスです。
このことを念頭に入れて、オンライン情報を検索し有害・無害を決定するようにします。
White Entry(白色表示のエントリ)
白色表示のエントリは、このプロセス名がemsisoftのデータベース中には存在しないプロセスであることを意味しています。このプロセスに関してはオ
ンライン情報を検索して決定することになります。上のスクリーンショットで、TERAPAD.EXEが白色表示になっています。このソフトは日本では有名
なテキストエディタですが、emsisoftのデータベースには登録されていないようです。このように、2バイトコード圏はデータベースが充実していると
は言えない傾向にありますので注意してください。
3-3.プロセスの削除方法
あるプロセスを明らかに有害と同定した場合に、対処する方法です。
通常、アクティブなマルウェアのプロセスを発見した場合は終了させるか、このプロセスを停止させるかです。a-squared HijackFree
の左側フレームにある「停止」ボタンを単純にクリックしたところで、次回起動させたときには、ほぼ間違いなく復活しています。
この復活を阻止するためにはプログラムファイルを削除しないといけません。左側フレームの”プロセスの停止”の
下にある”ファイルを削除”にチェックを入れます。
しかし、いきなり削除するのは賢明な方法とは言えません。たとえ明らかに有害と同定した場合でさえ、もしかすると必要なプログラムである可能性が未だ残っ
ています。このような場合に備え、後で修復することができるように”バックアップを保存”にチェックを入れま
す。この方法は、アンチウィルスソフト等での「隔離」に相当します。
マルウェアはしばしば自動起動エントリを経由してシステムの開始時にロードされます。このようなマルウェアに関連する全てのエントリは削除しておくことが
必要です。この参照を残しておくと、自動起動のエントリが既に失われたファイルを参照しようとします。これによりシステムが不安定になることがあります。
必ず、”参照を削除”にチェックを入れるようにします。
以上の操作を行った後に、「停止」ボタンをクリックします。
3-4.TCP/UDPポート
左のメニューで、「ポート」をクリックするとポートの情報が表示されます。
TCPやUDPポートはインターネット越しに様々なコマンドを受け取るためにプラグラムによって使用されるデータチャンネルです。
ポートの使用の典型的な例としては、以下があります。
Webサーバー = Port : 80
FTP = Port : 21
SMTP = Port : 25
POP3 = Port : 110
しかし、バックドア型のトロイの木馬に侵入されると、バックドア型のトロイの木馬はインターネット越しに(リモートから)PCの制御を行わせるために、
こっそりポートを開きます。プログラムはポートを開くに当たりあらゆるポート番号を選択することができますが、PCの1起動で1つのプログラムに割り当て
られるポートは一つだけです。
HijackFreeのポートセクションは、利用者のPC上で開かれているポートと、そのポートを開いているプロセスのリストを表示しています。リストが
表示されたら、カラー表示の有無に拘らず右上のツールバーの最初の"Refresh Online Data"アイコン(赤の囲み)をクリックします。
ポートチェックの方法は、上述のプロセスの検証方法と同様です。3-2、3-3を参照してください。
悪意あるプロセスは、ある状況でいかにも正当であるかのような、プロセスリスト中で即座に識別されにくい名前でカモフラージュされている場合があります。
このようなプロセスもポートリストから自身を隠蔽することはできません。
オープンポートは基本的に有害な存在ではないのですが、プログラムがポートを開放する正当な理由を持たなければなりません。たとえば、ワードプロセッサは
基本的にポートを開く必要はありません。
また、そのポートで待機しているプロセスも表示しているので、どのプロセスをシャットダウンすれば特定のポートを閉鎖できるのかを迅速に知ることができま
す。
3-5.自動実行
自動実行の情報を参照するには、左のメニューから自動実行をクリックします。リストが表示されたら、カラー表示の有無に拘らず右上のツールバーの最初の
"Refresh Online Data"アイコン(最初の図の赤の囲み)をクリックします。色付けによる識別は上述の通りです。
HijackFreeのこのセクションはシステム中の全ての自動実行エントリを示しています。このセクションのプログラムはシステムが起動した時、有害・
無害を問わず自動的に開始される様々なプログラムのリストです。レジストリには標準的自動実行のプログラムが登録される場所以外にも自動実行を許可する、
あまり明示的でない場所があります。
HijackFreeは標準的自動実行エントリ以外に自動実行を許可する30の場所からのデータも表示します。
利用者が一番気をつけなければならないセクションは、”トリッキースタートアップ”(上図赤枠)です。ただ、十
分な検証なしで削除してはいけません。スペシャリストに判断を仰ぐか、Web上で十分な情報を収集し検証してからにしてください。迂闊な削除を行えばシス
テムは起動しなくなるかもしれません。
多くの重要な自動実行エントリはレジストリ中に存在します。自動実行のレジストリセクションは二つのカテゴリに分類されます。
- ・ 全てのユーザに対しシステムワイドに適用される自動実行
- ・ 現在のログオンユーザに対してのみ適用される自動実行
このセクションでは完全な削除を必要としません。自動実行エントリの左にあるチェックを外して非アクティブ化しさえすれば、そのエントリがどのような役目
を果たしているのか理解できます。こうしておけば、必要なときチェックを入れ直すことでアクティブかできます。
疑わしいエントリの識別方法は上述のプロセスの場合に準じてください。
リストされているプログラムの全てが自動実行される必要があるのか? 検証する必要があります。バックグラウンドで不断に稼動している全てのプログラムは
システムリソースを消費し、コンピュータをスローダウンしていることに注意してください。
また、自分自身が利用しているセキュリティソフトの自動実行エントリは絶対に削除してはなりません。このエントリを削除すると再起動後PCが保護されなく
なります。
【NOTE】自動実行では、エントリをダブルクリックするとレジストリエディタが起動します。
3-6.サービス
サービスの情報を参照するには、左のメニューからサービスをクリックします。リストが表示されたら、カラー表示の有無に拘らず右上のツールバーの最初の
"Refresh Online
Data"アイコン(最初の図の赤の囲み)をクリックします。データベースと通信するので少し時間がかかります。左下に進行状況が表示されています。色付
けによる識別は上述の通りです。
サービスは、いわゆるWindows Serviceです。このセクションは、コントロールパネル>管理ツール>サービス で起動する Windows
Service Manager
と類似です。主な相違は、各サービスのフルパスが表示されていることと、そのサービスに関する詳細情報が表示されることです。
一般的にサービスのリストはプロセスのリストと大差ありません。サービスはプロセスのうち、サービスで起動しているものをフィルターして表示しています。
この他、現在停止されているサービスや隠し属性のドライバ(*.SYS)も表示しています。サービスはシステムが起動したときにWindowsによって
ロードされます。いかなるユーザもログオンする前に起動されます。サービスとして登録されているマルウェアは、ユーザがログオンし何か実行する前に既にア
クティブであるということを認識しておいてください。
3-7.その他
サービスの情報を参照するには、左のメニューからサービスをクリックします。リストが表示されたら、カラー表示の有無に拘らず右上のツールバーの最初の
"Refresh Online
Data"アイコン(最初の図の赤の囲み)をクリックします。データベースと通信するので少し時間がかかります。左下に進行状況が表示されています。色付
けによる識別は上述の通りです。
このセクションには色々な物が含まれています。
3-7-1.エクスプローラアドオン
# IEツールバー
スパイウェアの中には、IE利用者を悩ますツールバーをインストールするものがあります。個々のツールバーモジュールはココで削除できます。
削除するには、右上のリストで削除したいIEツールバーを選択し、左側の「エクスプローラアイテムの削除」をクリックします。
# シェル拡張
多くの方がアンチウィルスソフトを利用しておられると思います。多くのアンチウィルスソフトは、Explorer(IEではない)上でファイルを右クリッ
クした時に表示されるコンテキストメニュー中に、「[使用しているアンチウィルス名]でスキャン」という項目があると思います。これがシェル拡張機能で
す。
このリストは、そのようなシェル拡張の一覧ですが、シェル起動時にシェル拡張としてアクティブになるマルウェアも表示しています。
# シェルフック
Explorerに機能を提供するため付け加えられるモジュールですが、有害なものもあれば無害なものもあります。
# ブラウザへルーパーオブジェクト(BHOs)
先述した「IEツールバー」に類似したIEのブラウザ拡張です。利用の仕方によってWebサイトの表示を改竄できます。また、スパイウェアは、BHOsを
使用して訪問されたWebサイトのために広告やポップアップを加えることもできます。
# ActiveX
ここでリストされるActiveXはIE(インターネットエクスプローラ)に関連するもののみです。この種のActiveXには、Flash
Playerやアンチウィルスソフトのオンラインスキャン等でのActiveXがあります。当然、悪意あるActiveXをインストールするとIEやシス
テムに障害が発生することになります。
いずれも削除方法に関しては、左側の「エクスプローラアイテムの削除」をクリックします。
3-7-2.LSPプロトコル
Layer Service Providors
に関するリストです。これは、プログラムとネットワークカードを切り替えることのできるタイプのネットワークドライバを記述しています。アドウェアはブラ
ウザの入力ストリーム中に広告を挿入するためLSPsモジュールを使用します。また、インターネットからのデータストリームでスパムを直接フィルターアウ
トするアンチスパムプログラムのような無害なプログラムもこのセクションに表示されます。
LSPsに関連付けられているエントリを削除すること無しにLSPのDLLを削除するとインターネットアクセスは機能しなくなります。このためLSPを完
全に削除することが必要なのですが、a-squared HijackFree
は、この機能をサポートしていますので、明確にマルウェアのLSPであることが同定できた場合は、左の「LSPのアンインストール」で削除してください。
3-7-3.ホスト
ホストファイルは有害な目的にも無害な目的にも使用されます。ホストファイルに関する概要は、以下を参照してください。
HOST
ファイルについて
ホストファイルはIPアドレスとホスト名の解決のための情報を含んでいます。このファイルはスタートアップ時にメモリへロードされるため、DNSサーバに
問い合わせる前に Windows がホスト(Hosts)ファイルをチェックして DNS が管理するアドレスを上書きすることができます。
ワームはこのホストファイルを利用してアンチウィルスメーカーのウェブサイトへのアクセスをすべてローカルホスト(127.0.0.1)へ向け直し、自分
自身が除去されないようにします。明らかにマルウェアと同定されたホストは左の「ホストアイテムの削除」から削除します。
3-7-4.ActiveX
このセクションは、エクスプローラアドオンのサブカテゴリのActiveXとは異なり、システムワイドに登録されている全てのActiveX
DLLを表示します。このようなDLLはシステム中に存在する全てのプログラムが使用することのできるプログラムモジュールです。
HijackFreeは、アクティブでないActiveXエントリを「赤」で表示しません。右上のリストの「場所」の欄が空白のものは、そのDLLが存在
しないことを意味していますので問題なく「削除」可能です。削除は左の「ActiveXのアンインストール」です。
§4.プロセスおよびファイルの同定の補完