サイトマップ

マルウェア関連のトピックス

レジストリ修正用パッチの作成方法 (回答者向け)

スパイウェアやウイルスなどのマルウェアに感染して、何とかそれを除去した後にも改変されたレジストリ値が残っていることがあります。
これはレジストリエディタを使って手動で修正すれば良いのですが、初心者の場合可能性は低いとはいえ致命的な結果を招くことがあるのが怖いです。

その場合に「遠隔操作」の手段としてレジストリパッチを使うことができます。ここではその作成方法を簡単に解説します。
レジストリ修正の情報をregファイルとして提供すれば、初心者でもそれをダウンロードしてダブルクリックするだけで簡単にレジストリの修正が可能です。

レジストリ全体のバックアップ

作業を行う前に、まずレジストリ全体をバックアップするように指示して下さい。OSごとのレジストリのバックアップ方法については、こちらを参考にして下さい。

上のリンクで解説されていないWindows 2000の場合は、ERUNT等のフリーソフトを使います


レジストリパッチの内容

レジストリパッチに組み込む修正は、通常4種類です

それぞれのケースについて解説します。テキストエディタなどで作成したレジストリパッチは、拡張子「.reg」を付けて保存します(例えば「gunjyou.reg」)。

まずレジストリ値を取得します

あるレジストリキーに対して修正を行う場合は、まずそのキーを書き出してもらいます。これによって修正ポイントもはっきりしますし、これを元にすることで簡単にパッチを作成することができます。また、何か問題が起こった場合のバックアップファイルとしても使えます。

書き出しは、レジストリエディタから当該キーを選択して、右クリックから「エクスポート」でも構わないのですが、「遠隔操作」ではバッチファイルを使います。例えば、

HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Main

のキーを書き出す場合には、メモ帳などのテキストエディタなどを用いて、

regedit /e/a kakidashi.txt "HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Main"

という内容のファイルを作成し、拡張子を「.bat」として保存します(例えば「kakidashi.bat」として)。これをダブルクリックして実行してもらうと、黒いDOS画面が出た後、バッチファイルと同じ場所に「kakidashi.txt」というファイルが作成されます。この内容が、キーの中身になります。

何か問題が起こった場合は、このファイルの拡張子を「.reg」に変更してダブルクリックで実行すれば、キーを元の状態に戻すことができます。

レジストリ値の削除

レジストリ値削除の書式は、

REGEDIT4

[削除するキーまでのパス]
"削除したい値の名前"=-

です。ただし、ログ上に「@」として現れるものは各キーの標準の値を表し、この場合はダブルクオーテーション("")で囲まれないことに注意して下さい。

レジストリ値の削除の例

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Mainの内容が下記のもので、悩まされているURLが「http://awebfind.biz/」の場合、

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main]
"Default_Page_URL"="http://www.fmworld.net/"
"Default_Search_URL"="http://www.microsoft.com/isapi/redir.dll?prd=ie&ar=iesearch"
"Search Page"="http://www.microsoft.com/isapi/redir.dll?prd=ie&ar=iesearch"
"Enable_Disk_Cache"="yes"
"Cache_Percent_of_Disk"=hex:0a,00,00,00
"Delete_Temp_Files_On_Exit"="yes"
"Local Page"="C:\\WINDOWS\\SYSTEM\\blank.htm"
"Anchor_Visitation_Horizon"=hex:01,00,00,00
"Use_Async_DNS"="yes"
"Placeholder_Width"=hex:1a,00,00,00
"Placeholder_Height"=hex:1a,00,00,00
"Start Page"="http://awebfind.biz/"
"CompanyName"="Microsoft Corporation"
"Custom_Key"="MICROSO"
"Wizard_Version"="6.00.2800.1106"
"Check_Associations"="no"
"FullScreen"="no"
"Search Bar"="http://awebfind.biz/sp.htm"
"HomeSet"="yes"

の二ヶ所に現れている

"Start Page"="http://awebfind.biz/"
"Search Bar"="http://awebfind.biz/sp.htm"

を消したいところです。この場合には

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main]
"Start Page"=-
"Search Bar"=-

というテキストファイルを、拡張子を「.reg」として(ファイル名は何でも良い)作成して実行すればこれらの値を削除できます。

レジストリ値の修正

ほとんどレジストリ値の削除の場合と同様です。既に存在するレジストリ値へ値を入力する式を書けば上書きされます。書式は、

REGEDIT4

[修正するキーまでのパス]
"修正したい値の名前"="修正値"

です。この場合も「@」で表される各キーの標準の値だけは単なる「@」であって「"@"」では無いことに注意して下さい。

レジストリ値の修正の例

実際の例では、

REGEDIT4

[HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Search]
"SearchAssistant"="http://ie.search.msn.com/{SUB_RFC1766}/srchasst/srchasst.htm"
"CustomizeSearch"="http://ie.search.msn.com/{SUB_RFC1766}/srchasst/srchcust.htm"
"Default_Search_URL"="http://www.microsoft.com/isapi/redir.dll?prd=ie&ar=iesearch"

というのがパッチファイルの内容になります。この場合、

[HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Search]

にある三つのキー(「=」の左側)に右側の値が入力されます。

レジストリキーの削除、追加の書式

レジストリキーの削除には次の書式を使います。

REGEDIT4

[-削除したいキーのフルパス]

となります。これを使って値を削除することもできますが、かえって混乱を招きそうなのでここでは「キーの削除用」ということにしておきます。これはかなり危険な書式で、例えば

REGEDIT4

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main]

と記述すると、Main自身も含めてその下にあるサブキーがすべて削除されてしまいます。従って、取り扱いは特に慎重を期す必要があります。

逆に追加する場合は、最初の「 [ 」の後の「 - 」無しで記述すれば良いです。つまり、

REGEDIT4

[追加したいキーのフルパス]

となります。

パッチファイルの実行方法

作成したパッチファイルをダブルクリックすると、下記の様なダイアログが出るので「はい」をクリックします
image

無事に成功すると、下記のメッセージが出るので「OK」をクリック
image

以上でパッチファイルによる処理は終了し、レジストリが書き換えられました。後はPCを再起動するだけです。

なお、レジストリエディタが無効化されている場合はエラーが出ます
image

この場合は、先にHijackThisからO7をFixするか、原因を取り除いて下さい。管理者が別にいる場合は、管理者に相談して下さい。

Microsoftの公式文書

こちらがレジストリパッチに関するMSKBの公式文書です


注意事項

このページの主目的は、回答者の方が質問者への指示に使うためのものですから、回答者ないし回答者を目指す方向けの内容となります。
理解不足のまま不用意にパッチファイルを作成して実行してしまうと、PCが起動しないなど破滅的な状況を招く可能性もありますので十分慎重に作業を行って下さい。

謝辞

このページは、adultさんのサイトを参考にさせていただいて作成したものです。このページによって、回答者の皆様がレジストリパッチを作成する手助けができたと思います。

adultさんに深く感謝致します。

更新履歴

2005.11.2 adultさんのサイトへのリンクを、ご希望に沿って削除。MSKBへのリンクを追加。
2005.10.18 改訂
2004.2.20 ページ作成


【文頭に戻る】