他社製品の買収から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 Defender」

Windows Defenderとは、ウイルスやスパイウェア、ルートキット(侵入経路などを管理者から隠匿するツール)、トロイの木馬(自己増殖機能のない侵入型攻撃ツール)などに代表されるマルウェアから、PCを保護する無償のセキュリティ対策ソフトウェアである。Windows 8以降はOSと完全統合し、ブートプロセス時のセキュリティ対策やPC負荷の軽減などいくつかの改良が加わった。

Windows 8.1の「Windows Defender」

なお、Windows 7などで動作する「Microsoft Security Essentials」とは異なり、コンテキストメニューからファイル/フォルダーのスキャン実行、スケジューリングの詳細設定が省かれている。ただし、パターンファイルとなるウイルス/スパイウェアの定義ファイルは同一だ。

画面左はWindows Defender、画面右はMicrosoft Security Essentialsの定義ファイル更新状態。共に同じバージョンを使用している

定義ファイルの更新タイミングとは

Windows Defenderの定義ファイルはWindows Update経由による自動更新、もしくは「更新」タブの「更新」ボタンから手動更新、という2つの方法が用意されている。昨今のセキュリティ更新プログラム導入時のトラブル発生を踏まえ、手動更新に切り替えた方も少なくないだろう。

定義ファイルはWindows Update経由で自動更新する。ただし、自動更新を無効にしている場合、本機能に期待することはできない

自動更新の場合、「ローカルグループポリシーエディター」を使うことで更新タイミングを変更可能だ。コンソールツリーの「コンピューターの構成\管理用テンプレート\Windowsコンポーネント\Windows Defender\スキャン」に並ぶ「定義の更新をチェックする間隔(時刻、曜日)を指定する」を編集すれば、Windows Updateとは異なるタイミングで更新される。

「グループポリシーエディター」から定義ファイルの更新タイミングを制御できる

ただし、ローカルグループポリシーエディターを使用できるのはWindows 8.1 Proに限られ、無印のWindows 8.1は使用できない。そこでコマンドラインからWindows Defenderを制御するTipsを紹介する。

コマンドラインから定義ファイルを更新する

Windows Defenderは、「MpCmdRun.exe」という実行ファイルでコマンドラインからの操作を可能にしている。しかし、MpCmdRun.exeを格納する「%ProgramFiles%\Windows Defender」フォルダーにはパスが通っていないため、実行のたびにフルパスを入力しなければならない。この操作を手軽にするのが環境変数「Path」の設定だ。

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

「システムのプロパティ」ダイアログが起動したら、「環境変数」ボタンをクリック/タップする

「~ユーザー環境変数」の「新規」ボタンをクリック/タップし、「変数名」に「PATH」、「変数値」に「%ProgramFiles%\Windows Defender」と入力して「OK」→「OK」とボタンをクリック/タップする

「Win」+「X」キー、またはスタートボタンの右クリック/タップでメニューを開き、「コマンドプロンプト(管理者)」を呼び出す

管理者権限でコマンドプロンプトを起動したら、「MpCmdRun --help」と入力して「Enter」キーを押す。コマンドが実行されれば設定完了だ

上記の手順を実行することで、コマンドプロンプトからは「MpCmdRun.exe」を実行するだけで使用可能になる(なお、大文字小文字は区別されず、拡張子も省略可能)。定義ファイルを更新するには、「-SignatureUpdate」オプションを使用すればよい。具体的には「MpCmdRun -SignatureUpdate」と実行する。

管理者権限でコマンドプロンプトを起動したら、「MpCmdRun -SignatureUpdate」と入力して「Enter」キーを押す。エラーコード「0x80070652」に関してはひとまず無視して構わない

この際エラーコード「0x80070652」が示されるが、これはWindows Updateに起因するため、定義ファイルの更新とは直接関係ない。ログファイル「%LOCALAPPDATA%\Temp\MpCmdRun.log」を確認すると、定義ファイルのインストールは正しく終えており、Windows Defenderの「更新」タブでも最新バージョンが適用されたことを確認できる。

画面左は実行までの「更新」タブ、画面右はコマンド実行後の同タブ。執筆時点の最新バージョン「1.191.1559.0」に更新された

この続きは次回紹介しよう。

阿久津良和(Cactus)