セキュリティ対策のために無償の脆弱性緩和ツールEMETをインストールするTech TIPS

Windowsプラットフォームはしばしば、セキュリティパッチ提供前の脆弱性を狙う「ゼロデイ攻撃」に晒される。この脅威に対抗する無償の脆弱性緩和ツール「Enhanced Mitigation Experience Toolkit(EMET)」のインストール方法を解説する。

» 2014年06月25日 14時18分 公開
[島田広道デジタルアドバンテージ]
「Windows TIPS」のインデックス

連載目次

対象ソフトウェア:Windows 7/Windows 8/Windows 8.1/Windows Server 2008 R2/Windows Server 2012/Windows Server 2012 R2


解説

 Windows OSおよびそのアプリケーションに対してはゼロデイ攻撃、すなわちセキュリティパッチがリリースされる前に脆弱性を攻撃するという事件がしばしば発生している。またセキュリティパッチの適用が遅れた結果、既知の脆弱性を攻撃されて被害に遭ったという例も報道されている。このようにセキュリティパッチの適用前の攻撃をいかにして防ぐか、ということはセキュリティ対策上の重要な課題の1つといえる。

 こうした脅威に対抗すべく、マイクロソフトが無償で提供しているソフトウェアツールの1つが「Enhanced Mitigation Experience Toolkit(EMET)」だ。「Mitigation」とは「緩和」「軽減」といった意味で、EMETはWindows上で実行されるソフトウェアの脆弱性に対する攻撃を「緩和・軽減」することで攻撃成功を防ぐ役割を果たす。セキュリティパッチが脆弱性そのものを修正・解消することで攻撃を無効化するのに対し、EMETは脆弱性が存在することを前提として悪用コード(エクスプロイトコード)の実行を「妨害」するという違いがある。

Enhanced Mitigation Experience Toolkit(EMET) Enhanced Mitigation Experience Toolkit(EMET)
これはEMETの設定画面。残念ながら表記は英語で日本語化されていないが、日本語環境での利用はサポートされていて、プロセス名などに含まれる日本語は正しく表示される。

 「緩和」という言葉から連想できるように、EMETはあらゆる攻撃を完全に阻止できる万能ツールではない。攻撃が成功する確率、すなわち攻撃によって実害を被る可能性を下げるためのツールだ。とはいえ実際に効果はある。例えば、2014年4月末に発覚したInternet Explorerのゼロデイ攻撃の際、マイクロソフトはセキュリティパッチのリリースまでの回避策の1つとしてEMETを推奨していた。特にWindows Vista/Windows Server 2003/Windows Server 2008では「最も効果が高い対策」と記されている。

 執筆時点で正式にリリースされているEMETの最新版は4.1 Update 1で、プレビュー版として5.0が提供されている(いずれも無償で利用できる)。EMET 4.1 Update 1はWindows XP〜Windows 8.1とWindows Server 2003〜Windows Server 2012 R2にインストールできる(OS用Service Pack最新版の適用が必要)。スタンドアロンのPCでも利用できる他、企業内システム向けにグループポリシーで一括設定できるようにも設計されている。

 ゼロデイ攻撃が発覚してから管理下のPCにEMETをインストールして回るのでは、対策として間に合わない可能性がある。あらかじめインストールしておき、攻撃が発覚したら速やかに適切な設定をEMETに施すのがよいだろう。そこで本稿では、EMET 4.1 Update 1をインストールする手順と最小限の設定の確認について説明する。これによりIEやMicrosoft Office、Adobe Acrobat/Reader、Oracle Java、ワードパッドといった攻撃対象になりがちなソフトウェアについては、EMETで保護されるようになる。その他のソフトウェアを保護する方法など、設定方法の詳細は別途解説したい。

 EMETの動作原理や緩和策の種類などについては、次のPDFを参照していただきたい。

操作方法

●事前に.NET Framework 4.xやパッチのインストールが必要

 EMETを実行するには.NET Framework 4.xが必要なので、あらかじめインストールしておく。すでに.NET Framework 4.xがインストール済みかどうか確認するには、次のTIPSを参照していただきたい。

 Windows 8/Windows Server 2012以降であれば、.NET Framework 4.5.xが標準でインストール済みなので、あらためてインストールする必要はない。Windows 7/Windows Server 2008 R2以前の場合、もし.NET Framework 4.0をインストールするなら、必ずFull版をインストールすること。Client Profile版ではEMETのインストールに失敗するためだ。

 .NET Framework 4.xはWindows Updateからインストールできる他、次のページからオフラインのインストーラーを入手できる。

 Windows 8の場合は、KB2790907のパッチを適用しておく必要がある。これは「互換性に関する更新プログラム」の2013年3月版で、それ以降にリリースされた2013年9月版のKB2869628にも含まれている。Windows Updateですでに適用しているかもしれないので、確認しておこう。

●EMETのインストール

 まず、次のWebページからEMET 4.1 Update 1のインストーラー(EMET Setup.msi)をダウンロードする。

  • EMET 4.1 Update 1のダウンロードページ[英語](Microsoft Download Center)
    [Download]ボタンを押してダウンロードする。失敗する場合はWebブラウザーによってポップアップがブロックされていないか確認すること。

 次に管理者アカウントの下でインストーラーを実行する。UAC(ユーザーアカウント制御)が表示されたら[はい]ボタンをクリックすると、英語表記のウィザード画面が表示されるのでデフォルトの設定のまま進めていく。「License Agreement」画面では規約を確認して[I Agree]を選択する。また「EMET Configuration Wizard」画面では[Use Recommended Settings](推奨設定を用いる)を選択する。これにより、IEやOffice、Adobe Acrobat/Reader、Oracle Java、ワードパッドを保護する設定が適用される。

「EMET Configuration Wizard」画面では推奨設定を選ぶ 「EMET Configuration Wizard」画面では推奨設定を選ぶ
  (1)こちらが「推奨設定」の選択肢。こちらを選ぶ方が簡単だ。
  (2)インストール後に手動で設定するという選択肢。すでにEMETの古いバージョンがインストール済みの場合、こちらは「既存の設定を継承する」選択肢になる。

 あとはウィザードが完了するまで進めていく。インストール完了時点で、すでにEMETのプログラムが常駐して保護を始めている。

●EMETのサイレントインストール

 EMETはサイレントインストールができるので、配布ツールによる複数PCへの一括展開も可能だ。その際のコマンドラインは次の通りだ。

msiexec /i "EMET Setup.msi" /qn /norestart



 ただし前述の推奨設定は適用されないので、インストール後に設定を変更する必要がある。

●EMETの設定画面を開いて「推奨設定」を確認する

 スタートメニューの[Enhanced Mitigation Experience Toolkit]−[EMET GUI]をクリックするか、またはスタート画面で[EMET GUI]を検索してクリックすると、EMETの設定画面が表示される。タスクバーの通知領域にあるEMETのアイコン(南京錠を模したデザイン)をダブルクリックすることでも設定画面を呼び出せる。

 ここでインストール時に指定した「推奨設定」が正しく反映されているか確認してみよう。まず起動直後のメイン画面で、ツールバーにある「System Settings」−[Quick Profile Name]が[Recommended security settings](推奨セキュリティ設定)になっていることを確認する。次に「System Status」−[Certificate Trust (Pinning)]が[Enabled]になっていることも確認する。これはアプリケーションが暗号化通信に用いる電子証明書の信頼性を検証する機能だ。

EMETの設定画面(EMET GUI) EMETの設定画面(EMET GUI)
これはインストール時に「推奨設定」を指定した後、スタートメニュー/スタート画面から「EMET GUI」を起動したところ。
  (1)[Recommended security settings]が選択されていることを確認する。
  (2)[Enabled]が選択されていることを確認する。
  (3)実行中のプロセスのうち、EMETで保護されているものには、このチェックマークが付く。
  (4)これをクリックすると、各アプリケーションに対して脆弱性緩和機能を細かく設定する画面が表示される。→[A]

 次にツールバーの「Configuration」−[Apps]をクリックして「Application Configuration」画面を開く。そのツールバーの「Mitigation Settings」にあるチェックボックスがいずれもオンであることを確認する。これらは、保護対象として登録された全ソフトウェアに適用される脆弱性緩和機能のオン/オフを設定している。

 さらに「Mitigations」−[All]タブに注目する。「App Name」列にはInternet Explorer(iexplorer.exe)やAdobe Reader(AcroRd32.exe)、Office(EXCEL.EXE/POWERPNT.EXE/WINWORD.EXE)などのアプリケーション実行ファイル名が並んでいるはずだ。各行の右側には個々の脆弱性緩和機能のオン/オフを設定するチェックボックスが並んでいて、java*.exeの「HeapSpray」列を除いて、全てオンになっている。

[A]

EMETの「Application Configuration」画面 EMETの「Application Configuration」画面
アプリケーションごとに脆弱性緩和機能の細かい設定ができる。チェックが入ってオンになっていれば、該当するアプリケーションに対して脆弱性緩和機能が有効になっている。
  (1)(2)に登録されている全アプリケーションに対して適用できる脆弱性緩和機能。全てオンであることを確認する。
  (2)登録されている保護対象アプリケーション。IEとOffice(ビューアーを含む)、Adobe Acrobat/Reader、Oracle Java、ワードパッドの実行ファイル名が表示されている。
  (3)アプリケーションごとにオン/オフできる脆弱性緩和機能。
  (4)EMET 4.1 Update 1の「推奨設定」の場合、これらのチェックボックスのみオフで、その他はオンになっているはずだ。

 もしEMETのインストール後に保護対象のアプリケーションで動作不良が見つかったら、それはEMETの脆弱性緩和機能による副作用の可能性がある。その場合、上記の画面で該当アプリケーションのチェックボックスをオフにしていって、不具合の解消を図ることになる。

 新たにアプリケーションをEMETに登録して保護する、といった詳細な設定方法については、別途解説する予定だ。

■関連リンク


「Windows TIPS」のインデックス

Windows TIPS

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。