他社製品の買収から10年以上が経過し、すっかりMicrosoft自社製品の体を見せているセキュリティソフトの「Windows Defender」。Windows Vista時代はスパイウェア以外にも、ウイルスなどのマルウェア対策が可能になった「Microsoft Security Essentials」がリリースされた。現在のWindows 8.1は、マルウェア対策を統合したWindows Defenderを標準搭載している。前回に引き続き、Windows Defender用定義ファイルの更新に関するTipsを紹介しよう。

「Windows 8.1ミニTips 第17回」より、2014年4月9日にリリースされたWindows 8.1 Updateを適用した環境を対象としています。

Windows Update経由の定義ファイルは遅い?

前回は、コマンドラインからWindows Defenderの定義ファイルを更新する方法を紹介した。「-SignatureUpdate」オプションを確認すると、さらに「-MMPC」というサブオプションがあることを確認できる。こちらは「MMPC(Microsoft Malware Protection Center)から直接アップデートを実行する」というものだ。

MMPCは、Microsoftが運営するマルウェアに関する情報や技術のポータルサイトである。通常はMMPCがリリースした更新プログラムをWindows Updateに提供し、我々がダウンロードする流れだ。定義ファイルの更新頻度はChangelogから確認できるが、本稿執筆日だけでも10回程度更新しており、短いスパンでは2時間で更新するケースもある。

MMPCが提供する更新プログラムのChangelog。新規マルウェアへの対応や既存マルウェアの更新などを確認できる

お手元のPCでWindows Updateから定義プログラムの更新頻度を確認してみると、1日数回程度にとどまることが分かるはずだ。つまり、常に新しい定義ファイルを得るには「-MMPC」サブオプションを併用した操作がベストなのである。

「-MMPC」サブオプションを使う

MMPCを利用した定義ファイルの更新方法は簡単だ。「MpCmdRun -SignatureUpdate -MMPC」とサブオプションを加えて、管理者権限を持つコマンドプロンプトなどから実行すればよい。

管理者権限でコマンドプロンプトを起動したら、「MpCmdRun -SignatureUpdate -MMPC」と入力して「Enter」キーを押す。前回同様、メッセージは気にしなくてよい

上図を見ると定義ファイルが更新されていないように見えるが、ログを見ると定義ファイルがダウンロード&インストールされていることが確認できる。さらにWindows Defenderの「更新」タブを開くと、「-SignatureUpdate」オプション単独実行(バージョン「1.191.1559.0」)よりも新しいバージョン「1.191.1582.0」が適用されたことが分かるはずだ。

「Win」+「R」キーを押して「ファイル名を指定して実行」を起動し、テキストボックスに「%LOCALAPPDATA%\Temp\MpCmdRun.log」と入力して「OK」ボタンをクリック/タップする

これでログファイルが「メモ帳」などで開く。スクロールさせると「-MMPC」サブオプションを使った実行結果を確認できる

こちらは「Windows Defender」の「更新」タブ。さらに新しいバージョンの定義ファイル「1.191.1582.0」が適用された

タスクスケジューラで定期的に更新する

コマンドラインから定義ファイルを更新可能にしても、可能であれば自動的に処理した方が簡単だ。そこで最後にタスクを作成して、定義ファイルの更新を自動実行する。手順は冗長になるので、下図の内容に従って進めてほしい。

「Win」+「R」キーを押して「ファイル名を指定して実行」を起動し、テキストボックスに「taskschd.msc」と入力して「OK」ボタンをクリック/タップするM@

「タスクスケジューラ」が起動したら、操作ウィンドウの「タスクの作成」をクリック/タップする

ダイアログが現れたら「名前」に任意の名称を入力し、「ユーザーがログオンしているかどうかに関わらず~」「最上位の特権で実行する」をクリック/タップしてチェックを入れる

なお、タスクを作成したユーザーが一般ユーザーの場合、正しく動作しない可能性がある。今回は管理者権限を持つユーザーで特に問題なかったが、お使いのPCで正しく動作しない場合は、「ユーザーまたはグループの変更」ボタンから実行するユーザーアカウントを「SYSTEM」に変更するとよい。

「トリガー」タブ→「新規」ボタン→「毎日」→「繰り返し間隔」を順にクリック/タップし、ドロップダウンリストの内容を「2 時間」に変更する。続いて「継続時間」のリストから「無期限」を選択し、「停止するまでの時間」をクリック/タップしてリストから「1時間」を選択。最後に「OK」ボタンをクリック/タップする

「操作」タブ→「新規」ボタンと順にクリック/タップし、「参照」ボタンを使って「MpCmdRun.exe」を選択。「引数の追加」に「-SignatureUpdate -MMPC」と入力して、「OK」ボタンをクリック/タップする

最後に「OK」ボタンをクリック/タップし、タスクを実行するユーザーのパスワードを入力したら、「OK」ボタンをクリック/タップする

トリガー作成時に困るのが「繰り返し間隔」の部分だろう。ドロップダウンリストには最大1時間までしか列挙されないが、ここに直接数字を入力することで、実行間隔を調整できる。今回のように2時間間隔の場合は「2 時間」と入力すればよい。

タスク作成完了後に2時間も待つのは面倒なので、メニューからタスクを実行してみよう。数十秒ほど待ってから「F5」キーを押して表示内容を更新すれば「この操作を正しく終了しました」という実行結果が示される。また、ログファイルを確認してもよい。

これでタスクの作成は完了した。直後に動作を確認するには、タスクを右クリック/長押しし、メニューの「実行する」をクリック/タップする

先の手順を参考にログファイルを確認すると、タスクから「MpCmdRun.exe」が実行されたことを確認できる

阿久津良和(Cactus)