速習「MS-DOS」スパイウエア編
「Trojan.Desktophijack」の駆除
001 002 003 004 005 006 007 008 009 010

バッチファイルの作成と実行手順 ▼end
  1. 適当なフォルダを作成、または、選択。(例えば「デスクトップ」)
  2. フォルダまたは、デスクトップの空白部を右クリック。
  3. メニューの「新規作成」「テキストドキュメント」を選択。
  4. 選択したフォルダに「新規テキスト ドキュメント.txt」というファイルが作成されます。
  5. 「新規テキスト ドキュメント.txt」を開き実行するコマンドを記入します。
  6. 「新規テキスト ドキュメント.txt」を拡張子「Bat」で適当な名前で保存します。
  7. 拡張子「Bat」のファイルをバッチファイルと呼びます。
  8. バッチファイルをダブルクリックするとバッチファイルに記入されたコマンドが実行されます。

001 作成例:「Test0201.bat」 ▼end

スパイウエア等によって追加された有害なファイルを削除する例です。

ただし、必要なファイルを誤って削除しないよう注意してください。

実例として「Trojan.Desktophijack」というアドウエアを取り上げてみました。

詳細については下記サイト参照ください。

http://www.symantec.co.jp/region/jp/avcenter/venc/data/jp-trojan.desktophijack.html

バッチファイルの作成と実行手順の(5)で「新規テキスト ドキュメント.txt」に下記の行をコピーアンドペーストしてください。

バッチファイルの作成と実行手順の(6)で「新規テキスト ドキュメント.txt」を「Test0201.bat」という名前で保存します。

:〜〜〜〜〜〜〜〜〜〜「Test0201.bat」始まり〜〜〜〜〜〜〜〜〜〜
:>>>>>>>>>1.システムディレクトリーの判定

VER|find "Windows 95"
IF NOT ERRORLEVEL 1 set sysdir=%SystemDrive%\windows\system
VER|find "Windows 98"
IF NOT ERRORLEVEL 1 set sysdir=%SystemDrive%\windows\system
VER|find "Windows Millennium"
IF NOT ERRORLEVEL 1 set sysdir=%SystemDrive%\windows\system
VER|find "Windows NT"
IF NOT ERRORLEVEL 1 set sysdir=%SystemDrive%\winnt\system32
VER|find "Windows 2000"
IF NOT ERRORLEVEL 1 set sysdir=%SystemDrive%:\winnt\system32
VER|find "Windows XP"
IF NOT ERRORLEVEL 1 set sysdir=%SystemDrive%\windows\system32

:>>>>>>>>>2.起動ドライブを選択

%SystemDrive%\

:>>>>>>>>>3.ファイルの削除

 del "wp.exe"
 del "wp.bmp"

:>>>>>>>>>4.フォルダの選択

cd %Sysdir%

:>>>>>>>>>ファイルの削除

 del "gunist.exe"
 del "param32.dll"
 del "pop_up.dll"
 del "searchdll.dll"
 del "wldr.dll"
 del "Air Tickets.ico"
 del "Big Tits.ico"
 del "Blackjack.ico"
 del "Britney Spears.ico"
 del "Car Insurance.ico"
 del "Cheap Cigarettes.ico"
 del "Credit Card.ico"
 del "Cruises.ico"
 del "Currency Trading.ico"
 del "Lesbian Sex.ico"
 del "MP3.ico"
 del "Online Betting.ico"
 del "Online Gambling.ico"
 del "Oral Sex.ico"
 del "Party Poker.ico"
 del "Pharmacy.ico"
 del "Phentermine.ico"
 del "Pornstars.ico"
 del "Remove Spyware.ico"
 del "viagra.ico"

:>>>>>>>>>フォルダの選択

cd %UserProfile%\デスクトップ

:>>>>>>>>>ファイルの削除

 del "Air Tickets.url"
 del "Big Tits.url"
 del "Blackjack.url"
 del "Britney Spears.url"
 del "Car Insurance.url"
 del "Cheap Cigarettes.url"
 del "Credit Card.url"
 del "Cruises.url"
 del "Currency Trading.url"
 del "Lesbian Sex.url"
 del "MP3.url"
 del "Online Betting.url"
 del "Online Gambling.url"
 del "Oral Sex.url"
 del "Party Poker.url"
 del "Pharmacy.url"
 del "Phentermine.url"
 del "Pornstars.url"
 del "Remove Spyware.url"
 del "viagra.url"

pause

:〜〜〜〜〜〜〜〜〜〜〜〜〜終わり〜〜〜〜〜〜〜〜〜〜〜〜〜〜

◎スクリプトの説明

1.:システムディレクトリーの判定

OSのバージョンによってシステムディレクトリーが異なるのを識別する構文です。

ちょっと難しいかもしれませんが、頑張って見てください。もし理解が難しければ慣用文として丸覚えしてください。

  A)「Ver」 コマンド

    Windowsのバージョンを表示させるコマンドで、Windows XPでは例えば下記のように表示されます。

Microsoft Windows XP [Version 5.1.2600]

  B)「|」(縦棒)(パイプ処理に使われる記号です。)

MS-DOSには、あるコマンドで生成されたデータをほかのコマンドに引き渡して処理することができますが、そのときに使用される記号です。

実例を使ったほうがわかりやすいでしょう。

DOSプロンプト「C:\」へ移動して「Dir」と入力した場合、ファイル名がアルファベット順で表示されます。

「Dir | Sort」(引数なし。文字列の最初を基準にソート)と入力するとファイルの日付順にソートされて表示されます。

「Dir | Sort /+20」(引数20。最初から20文字目を基準にソート)と入力するとファイルのサイズ順にソートされて表示されます。

  C)VER|find "Windows 95" 〜"Windows XP"

「Ver」 で取得した文字列の中に「Find」以下に書かれた"Windows 95"〜 "Windows XP"の文字列ががあるかどうかを調べます。

WindowsXPの場合、コマンドプロンプトで「Ver」と入力すると、例えば下記表示になります。

Microsoft Windows XP [Version 5.1.2600]

文字列の中に「Windows XP」があるかどうかを調べます。。

  D)IF NOT ERRORLEVEL 1

「Find」コマンドの返り値を調べる構文です。指定した文字列がない場合は「1」が返されます。

「NOT ERRORLEVEL 1」とは文字列が見つかったことを示します。

      E)Windows XPの場合

VER|find "Windows XP"
IF NOT ERRORLEVEL 1 set sysdir=c:\windows\system32

「Ver」で取得したデータに"Windows XP"の文字列が見つかり、変数「sysdir」に「c:\windows\system32」が代入されます

2.:起動ドライブを選択

%SystemDrive%は環境変数で、システムが起動されたドライブ(一般的には「C:」)が代入されています。

したがって、起動ドライブが「C:」の場合、「C」ドライブが選択されます。

%SystemDrive%に「\」を加えることでシステムを起動したドライブのルートフォルダになります。

通常「C:\」へディレクトリーを移動します。

3.del "wp.exe" 〜 (ファイルの削除)

通常クオーテーションマークは必要ありませんが "Air Tickets.ico"のようにスペースを含むファイルやフォルダの場合、クオーテーションマークでくくってやらないと、スペース以降の文字列が無視されて正確にファイルを削除できません。

4.cd %Sysdir% (フォルダの選択)

(3)で取得したディレクトリ、XPの場合は「c:\windows\system32」へ移動します。

5.del "gunist.exe" 〜 (ファイルの削除)

ファイルを削除します。

6.cd %UserProfile%\デスクトップ  (フォルダの選択)

%UserProfile%は、通常「C:\Documents and Settings\ユーザー名」です。

日本語Windowsの場合、「デスクトップ」の部分を「Desktop」にするとエラーになるので注意してください。

7.del "Air Tickets.url" (ファイルの削除)

ファイルの削除です。

8.Pause

結果を確認のため、画面を一時停止させます。


002 レジストリの削除 ▼end

シマンテックの「Trojan.Desktophijack」の駆除方法の説明にレジストリの削除が指示されています。

http://www.symantec.co.jp/region/jp/avcenter/venc/data/jp-trojan.desktophijack.html

これらについては、例えば下記のようなレジストリファイルを作成し、レジストリに結合することで有害な設定を駆除できます。

作成したファイルをダブルクリックすると確認画面が出るので、よろしければ「はい」を選択してください。

REGEDIT4

[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{081669BA-EFC4-48C2-A8F4-874052D02553}]
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{145E6FB1-1256-44ED-A336-8BBA43373BE6}]
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{1D27320E-2DA2-41E2-A103-B5FD9D6A798B}]
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{B599C57E-113A-4488-A5E9-BC552C4F1152}]
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{D56A1203-1452-EBA1-7294-EE3377770000}]
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{C7EDAB2E-D7F9-11D8-BA48-C79B0C409D70}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Interface\{C7EDAB2E-D7F9-11D8-BA48-C79B0C409D70}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Typelib\{C7EDAB2E-D7F9-11D8-BA48-C79B0C409D70}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Serch_hook.transURL
[-HKEY_LOCAL_MACHINE\Software\Classes\Serch_hook.transURL.1
[-HKEY_LOCAL_MACHINE\Software\Microsoft\Code Store Database\Distribution Units\{11120607-1001-1111-1000-110199901123}]
[-HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Extensions\{081669BA-EFC4-48C2-A8F4-874052D02553}]
[-HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\Uninstall\Internet Connection Update and HomeP KB234087
[-HKEY_USERS\Software\Microsoft\Internet Explorer\Extensions\{081669BA-EFC4-48C2-A8F4-874052D02553}]
[-HKEY_USERS\Software\Microsoft\Windows\CurrentVersion\Ext\Stats\{081669BA-EFC4-48C2-A8F4-874052D02553}]
[-HKEY_USERS\Software\Microsoft\Windows\CurrentVersion\Policies\System

[HKEY_USERS\Software\Microsoft\Windows\Current Version\Run]
"WindowsFY"=-
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\Explorer\SharedTaskScheduler]
"{D56A1203-1452-EBA1-7294-EE3377770000}"=-
[HKEY_USERS\Software\Microsoft\Internet Explorer\URLSearchHooks]
"{C7EDAB2E-D7F9-11D8-BA48-C79B0C409D70}"=-

◎レジストリファイルの説明

1.REGEDIT4

これは決まり文句で、レジストリファイルの始まりを意味しています。

必ず、その後に空行を加える必要があります。

また、下記の行で代替することもできます。

Windows Registry Editor Version 5.00

2.[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{081669BA-EFC4-48C2-A8F4-874052D02553}]

" [- "で始まり、"] "で終わる行は、そのキーの最下位のサブキーを削除する構文です。

上の例では下記のサブキーが削除されます。

{081669BA-EFC4-48C2-A8F4-874052D02553}

3.[HKEY_USERS\Software\Microsoft\Windows\Current Version\Run]
  "WindowsFY"=-

キーではなくキーの値を削除する構文です。

HKEY_USERS\Software\Microsoft\Windows\Current Version\Runキーをレジストリエディターで開くと、画面右側にキーの値が表示されます。

「"WindowsFY"=-」と書き込んでレジストリファイル

に結合すると、"WindowsFY"という項目を削除できます。

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

初心者の方には、ちょっと難しいのでバッチファイルの圧縮ファイルを添付します。 

下記リンクをクリックしてダウンロードしてください。 

Test0201.lzh

解凍すると「Test0201.Reg」と「test0201.bat」の二つのファイルが作成されます。

1.レジストリの結合

まず、「Test0201.Reg」をダブルクリックすると下記だが出ますので「はい」を選択してレジストリに結合してください。

2.ファイルの削除

「test0201.bat」をダブルクリックしてバッチファイルを実行してください。

3.修復の確認

お使いのウィルス対策ソフト等で結果を確認ください。

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜


003 いろいろな課題 ▼end

★操作経過の確認

操作が、DOS画面で作業内容が流れてしまうと処理結果の確認が殆どできなくなります。

このような場合、「>」記号を使って、操作経過をテキストファイルにリダイレクトさせて保存、確認するという方法があります。

★ファイルを削除できない

「Nail」、「Aurola」、「Vundo」等、最近の悪質なスパイウエアは、通常のファイル操作では、有害なファイルを駆除できないケースが多くなっています。

「DLL」ファイル等をWindowsやWinlogonから起動させてあるため、WindowsやWinlogonを終了させないとファイルを削除できないのです。

この手法は、アプリケーションをスマートに実行できるよう、従来からプログラマーに常用されていた方法ですが、いまや、スパイウエア等に悪用されているのです。

Windowsプロセスはまだしも、Winlogonプロセスを終了させてしまうとWindowsがシャットダウンされてしまうので、ファイルの削除どころではありません。

☆特殊なツールをバッチファイルに組み込む

欧米のフォーラムでは、特殊なツール(Process.exe)を使ってWindowsやWinlogonのプロセスを終了させて駆除に成功している例が報告されています。

Winlogonのプロセスを終了させても、バッチファイルが実行されている間はシステムが稼動されているという性質を利用した方法です。

☆Process.exe

下記のサイトでダウンロードできます。

Command Line Process Viewer/Killer/Suspenderfor Windows NT/2000/XP

http://www.beyondlogic.org/solutions/processutil/processutil.htm

ただし、ウィルス対策ソフトによっては、このプログラムをスパイウエア、ウィルスとして検出するケースがあります。

駆除しようとしたが存在しなかったファイルや、駆除できなかったフィル等の処理結果をテキストファイルに書き出すような工夫も必要です。

削除データファイルを別途作成し「For in next」構文を使ってデータファイルを参照して順次処理のがいいと思います。

次項以降では。これらの問題について詳しく説明したいと思います。

≪Prev ▲Top Next≫

end

Ads by TOK2