Enhanced Mitigation Experience Toolkit

Enhanced Mitigation Experience Toolkit（EMET）とはマイクロソフトが提供する脆弱性緩和ツールである。OSに実装されている緩和策の設定のほか、OSやコンパイラでは提供されていない緩和策をアプリケーション単位で設定することができる。
使用に当たってはアプリケーションが意図的にEMETが防御する手法を使用している可能性があるリスクや、EMETを使用するだけで全ての攻撃を防げるわけではない事に留意する必要がある。
概要.
EMETが提供するのは主にメモリ関係の保護機能である。それ以外にもSSL/TLSの正当性確認などの補助機能が追加されている。一部の機能は確率（運）に影響される防御システムのためマイクロソフトは「緩和」と表現している。各機能はアプリケーションごとにオンオフが可能である。
EMETは主にメモリの防御機能のみであるためパターン解析型または動作監視型であるアンチウイルスソフトとは異なる防御システムであり、EMETとアンチウイルスを組み合わせることでより強力なセキュリティを発揮できる。特にゼロデイ攻撃を防ぐ手段の一つとして有効である。アンチウイルスソフトの中にはEMETのような保護機能を持つものがいくつか存在するものの、EMETほど多機能で詳細な動作設定が出来る物はない。
ほとんどのアプリケーションでは、プログラマの設計ミスによりメモリ処理のバグ（セキュリティホール）が日常的に発生する。このようなメモリバグを突き、システムに侵入しようとするマルウェアからシステムを保護する機能を提供する。例えば、セキュリティホールのある画像閲覧ソフトが悪意のある画像を読み込むとマルウェアに侵入されてしまう。メモリに不正なアクセスが行われると、EMETは対象のプログラムを停止させてアラートを表示しイベントログに記録する。
悪意のないプログラムであってもセキュリティホールが存在する事があり、EMETがプログラムの動作を中断してしまう事がある。EMETが提供する機能のうち、どれがプログラムに悪影響を及ぼすかはユーザ側が判断する必要がある。特にシステムファイルを保護する場合、システムごとフリーズしてしまう可能性がある。また、EMETより先に起動するようなプログラムは保護できない。Google Chromeなど自前でメモリ保護機能を持っているソフトウェアは、EMETで保護指定すると競合し、不具合を起こす恐れがある。
インストール時に「推奨設定」にすると、Internet Explorerなど一部のマイクロソフト製品やJava、Adobe Readerなどのいくつかのアプリケーションが保護設定に追加される。
パス（フォルダ名）の一部にワイルドカードを指定する事が出来る。ただし、ファイル名の一部には指定できない。
EMETは、2018年7月31日でサポートを終了した。Windows 10 ver.1703の場合には一部の機能はOSに取り込まれているため、これらの設定についてはPower Shellで実行するProcessMitigations Moduleを導入すれば継続して設定可能である。Windows 10 ver.1709以降では、Windows Defender Exploit Guard(およびそのサブセットであるWindows Defender Exploit protection)として後継機能が提供されている。
EMETにより提供される機能.
以下の脆弱性緩和策を設定することができる。この内システム全体に設定出来るのはDEP、SEHOP、ASLRのみである。また一部のシステム設定は互換性の問題から規定では選択できないようになっている。
以下はEMETを適用したアプリケーションすべてに適用される。