こんにちは、阿久津です。以前本誌にレポートを寄稿したように、Microsoft Security Essentialsはフリーなウイルス対策ソフトとして、Windows 7で使用可能です。そのため多くの方が同ツールを導入し、メインもしくはサブのウイルス対策ソフトとして活用されていることでしょう。筆者もAvira AntiVirとMicrosoft Security Essentialsを併用し、ウイルスやマルウェアの侵入を防いでいます。

しかし、気になるのがMicrosoft Security Essentialsが使用する定義ファイルの更新タイミング。既にお使いの方ならお気付きのとおり、更新タイミングはほぼ毎日。Windows Update経由で定義ファイルの更新をうながされます(図01~02)。

図01: Microsoft Security Essentialsを導入した環境では、Windows Update経由で定義ファイルの更新を行ないます

図02: こちらは更新履歴。ご覧のようにほぼ毎日、Microsoft Security Essentialsの定義ファイルが更新されています

もちろんウイルス対策ソフトの肝は、ウイルスやマルウェアを検出するためのパターンファイルにあり、どの程度素早く更新されるかが、その製品のクオリティを左右します。その点でMicrosoft Security Essentialsは、優れた製品と言えるでしょう。

しかし、そのたびにWindows Updateの実行をうながされるのは少々煩雑であり、面倒に感じるのは筆者だけではないはず。そこで今回は、Microsoft Security Essentialsの更新タイミングを変更し、煩雑なWindows Updateの更新リクエストを抑制するチューニングをお送りしましょう。

1.[Win]+[R]キーを押して「ファイル名を指定して実行」を起動し、テキストボックスに「regedit」と入力してから<OK>ボタンをクリックします。
2.レジストリエディターが起動したら、HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft Antimalwareキーまでたどって開きます。
3.Signature Updatesキーを右クリックし、メニューから<アクセス許可>を選択します。
4.「Signature Updatesのアクセス許可」ダイアログの<詳細設定>ボタンをクリックします。
5.「Signature Updatesのセキュリティの詳細設定」ダイアログの<所有者>タブを開き、「Administrators」グループを選択してから<適用>ボタンをクリックします。
6.<アクセス許可>タブを開き、「Administrators」グループを選択してから<編集>ボタンをクリックします。
7.「Signature Updatesのアクセス許可エントリ」ダイアログが起動したら、「フルコントロール」の「許可」をクリックしてチェックを入れ、<OK>ボタンをクリックします。
8.Signature UpdatesキーにあるDWORD値「SignatureUpdateInterval」をダブルクリックします。
9.値のデータを「0」に書き換え、<OK>ボタンをクリックします。
10.<×>ボタンをクリックして、レジストリエディターを終了させます。
11.「サービス」を起動し、「Microsoft Antimalware Service」を再起動します。

これでチューニング終了です(図03~15)。

図03: [Win]+[R]キーを押して「ファイル名を指定して実行」を起動し、テキストボックスに「regedit」と入力して<OK>ボタンをクリックします

図04: レジストリエディターが起動したら、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Antimalwareキーまでたどって開き、Signature Updatesを右クリック。メニューから<アクセス許可>をクリックします

図05: 「Signature Updatesのアクセス許可」ダイアログが起動したら、<詳細設定>ボタンをクリックします

図06: 「Signature Updatesのセキュリティの詳細設定」ダイアログが起動したら、<所有者>タブで「Administrators」グループを選択し、<適用>ボタンをクリックします

図07: 次に<アクセス許可>タブをクリックして開き、「Administrators」グループを選択して<編集>ボタンをクリックします

図08: 「Signature Updatesのアクセス許可エントリ」ダイアログが起動したら、「フルコントロール」の「許可」をクリックしてチェックを入れてから<OK>ボタンをクリック。あとは起動しているダイアログの各<OK>ボタンをクリックします

図09: アクセス権限の変更を終えたら、右ペインにあるDWORD値「SignatureUpdateInterval」をダブルクリックします

図10: 値のデータを「0」に変更してから<OK>ボタンをクリックします

図11: DWORD値「SignatureUpdateInterval」に対する操作を終えたら、<×>ボタンをクリックしてレジストリエディターを終了します

図12: [Win]+[R]キーを押して「ファイル名を指定して実行」を起動し、テキストボックスに「services.msc」と入力して<OK>ボタンをクリックします

図13: 「サービス」が起動したら、「Microsoft Antimalware Service」をダブルクリックします

図14: プロパティダイアログが起動したら、<全般>タブにある<停止>ボタンをクリックします

図15: サービスが停止したら、続いて<開始>ボタンをクリックします。あとは<OK>ボタンなどをクリックして各ダイアログを閉じてください

今回は目に見える変化がありませんので、簡単なロジックを説明しましょう。ステップ08~09で操作したDWORD値「SignatureUpdateInterval」は、定義ファイルを更新するタイミングを時間単位で指定するもので、初期状態である「24」は文字どおり更新間隔を一日変更するという意味です。

このデータ値を「0」に変更すると、定義ファイルの更新が無効になるため、煩雑は解消されるものの、大きなセキュリティリスクが発生するのは言うまでもありません。そのため、定義ファイルの更新をコマンドラインから行なうように変更しましょう。コマンドプロンプトから「"C:\Program Files\Microsoft Security Essentials\MpCmdRun.exe" -SignatureUpdate」と実行すれば、定義ファイルが更新されますので、同コマンドラインをタスクなどから定期的に実行してください(図16)。

図16: コマンドプロンプトを起動し、「"C:\Program Files\Microsoft Security Essentials\MpCmdRun.exe" -SignatureUpdate」と入力して[Enter]キーを押せば、定義ファイルの更新が行なわれます

また、筆者が確認した限りでは、定義ファイルの更新は一日2から3回ほど行なわれているようですので、データ値を「8」に変更することで、常に最新の定義ファイルを取得可能になります。

ちなみに、ステップ11の操作はコマンドラインから「net stop MsMpSvc && net start MsMpSvc」と実行すれば、「Microsoft Antimalware Service」をワンコマンドで再起動できます。本来はsc.exeを使うべきですが、同コマンドが返すリターンコードのタイミングが異なるため、net.exeを使用することにしました(図17)。

図17: コマンドプロンプトを起動し、「net stop MsMpSvc && net start MsMpSvc」と入力して[Enter]キーを押せば、Microsoft Security Essentialsの核である「Microsoft Antimalware Service」が再起動します

それでは、また次号でお会いしましょう。

阿久津良和(Cactus)