Windows Defender Device Guard の概要: 仮想化ベースのセキュリティとコードの整合性ポリシー

適用対象

  • Windows 10
  • Windows Server 2016

毎日何千もの悪意のあるファイルが新しく作成されているため、署名ベースの検出によってマルウェアに対抗するウイルス対策ソリューションのような従来の方法では、新しい攻撃を十分に防ぐことはできません。 Windows 10 Enterprise の Windows Defender Device Guard は、ウイルス対策ソリューションやその他のセキュリティ ソリューションでブロックされない限り任意のアプリが信頼されるモードを変更し、企業によって承認されたアプリのみがオペレーティング システムで信頼されるようにします。 これらの信頼できるアプリを指定するには、コードの整合性ポリシーを作成します。

コードの整合性には、オペレーティング システムと同様に、カーネル モードのコード整合性 (KMCI) とユーザー モードのコード整合性 (UMCI) という 2 つの主なコンポーネントが含まれています。 KMCI は以前のバージョンの Windows オペレーティング システムにも搭載されていたもので、未署名のドライバーを実行しないようにカーネル モードを保護します。 Windows 10 と Windows Server 2016 では UMCI も利用でき、ウイルスやマルウェアからの保護に役立ちます。

コードの整合性ポリシーによって提供されるセキュリティ レベルを高めるために、Windows Defender Device Guard では、高度なハードウェア機能がハードウェアでサポートされていれば、それらの機能を利用することができます。 このような機能には、CPU 仮想化拡張機能 ("Intel VT-x" または "AMD-V") や第 2 レベル アドレス変換 (SLAT) があります。 さらに、入出力メモリ管理ユニット (IOMMU) を搭載したハードウェアでは、より強固な保護機能が実現されます。 CPU 仮想化拡張機能と SLAT に関連する機能を有効にすると、コード整合性サービスは、Windows ハイパーバイザーで保護されたコンテナー内でカーネルと共に動作できるようになります。 次の表では、さまざまな脅威からの保護において、Windows Defender Device Guard とこれらのハードウェア機能がどのように役立つかを詳しく説明します。

Windows Defender Device Guard の機能を展開するプロセスの概要については、「Device Guard 展開プロセスの計画と開始方法」をご覧ください。

Windows Defender Device Guard の機能による脅威からの保護

次の表では、セキュリティの脅威の一覧と、それぞれに対応する Windows Defender Device Guard の機能について説明します。

企業内のセキュリティの脅威 Windows Defender Device Guard の機能による脅威からの保護
"定義" がまだ知られていない新しいマルウェアとの接触 コードの整合性ポリシー:  実行を許可するソフトウェアのホワイトリスト (構成可能なコード整合性ポリシー) を定義できます。これは、ブロックする必要のあるソフトウェアについて、絶えず更新される "定義" の一覧を保持して攻撃を未然に防ぐ方法とは異なります。 このアプローチでは、モバイル デバイス オペレーティング システムでよく知られている "何も信頼しない" (trust-nothing) モデルが使われます。
コードの整合性によって確認されたコードだけが実行を許可されます。この確認は、通常、信頼された署名者からの署名としてユーザーが識別したデジタル署名に基づいて行われます。 これにより、カーネル モードとユーザー モードの両方で、許可されるコードを完全に制御できます。

特別なハードウェアの必要性 セキュリティ関連のハードウェア機能は必要ありません。ただし、この表の後半 3 行で説明されているように、コードの整合性ポリシーはこのような機能によって強化されます。
署名されていないコードとの接触 (ほとんどのマルウェアは署名されていません) コードの整合性ポリシー、および必要に応じてカタログ ファイル:  ほとんどのマルウェアは署名されていないため、コードの整合性ポリシー (通常は署名されたコードを要求します) を適用するだけで、すぐに多数の脅威から保護できます。 ただし、未署名の基幹業務 (LOB) アプリケーションを使っている組織も多く、これらに署名することは困難な場合があります。 この状況は Windows 10 で変わりました。Package Inspector というツールを使うと、信頼できるアプリケーションについて、そのアプリケーションから展開されて実行されるすべてのバイナリ ファイルのカタログを作成できます。 カタログに署名して配布すると、これらの信頼されたアプリケーションは、コードの整合性ポリシーで他の署名付きのアプリケーションと同様に扱われるようになります。 この基盤を利用することで、署名されていないすべてのアプリケーションを簡単にブロックして、署名されたアプリケーションにのみ実行を許可できます。

特別なハードウェアの必要性 コードの整合性ポリシーとカタログを作成して使用するには、セキュリティ関連のハードウェア機能は必要ありません。 ただし、この表の後半の行で説明されているように、コードの整合性ポリシーとカタログはハードウェア機能によって強化されます。
カーネルへのアクセスを取得するマルウェアによる、カーネル内からの機密情報の傍受やシステムに損害を与える活動 仮想化ベースのセキュリティ (VBS):  これは、ハイパーバイザーを使ってオペレーティング システムのカーネルとその他の部分を保護する保護機能です。 VBS を有効にすると、既定のカーネル モード コード整合性ポリシー (問題のあるドライバーやシステム ファイルからの保護を提供)、またはユーザーが展開した構成可能なコード整合性ポリシーが強化されます。
VBS では、ハイパーバイザーによってマルウェアのコードの実行を防止できるため、マルウェアがカーネルへのアクセスを取得したとしても、その影響を大幅に制限することができます。 最も特権レベルの高いシステム ソフトウェアであるハイパーバイザーは、システム メモリ全体に R/W/X アクセス許可を適用します。 コードの整合性チェックは、カーネル モード ソフトウェアからの攻撃に抵抗力のある安全な環境で実行されます。カーネル モードに対するページのアクセス許可は、ハイパーバイザーによって設定および管理されます。 メモリの変更を許すバッファー オーバーフローのような脆弱性があったとしても、変更されたメモリを実行することはできません。

特別なハードウェアの必要性 必要。「Windows Defender Device Guard のハードウェア要件、ファームウェア要件、ソフトウェア要件」に記載されているとおり、VBS には少なくとも CPU 仮想化拡張機能と SLAT が必要です。
DMA ベースの攻撃 (たとえば、メモリから秘密情報を読み取る悪意のあるデバイスから起動し、攻撃に対して企業を脆弱化させる攻撃) IOMMU を利用する仮想化ベースのセキュリティ (VBS):  この種類の VBS 保護では、DMA ベースの攻撃からメモリ要求が作成されると、入出力メモリ管理ユニット (IOMMU) が要求を評価し、アクセスを拒否します。

特別なハードウェアの必要性 必要。IOMMU は、ハイパーバイザーをサポートするハードウェア機能です。これらを搭載したハードウェアを選択すると、メモリにアクセスしようとする悪意のある試みからの保護に役立ちます。
ブート キットまたは起動時に物理的に存在する攻撃者との接触 Universal Extensible Firmware Interface (UEFI) セキュア ブート:   セキュア ブートとそれに関連する手法によって、ブート プロセスとファームウェアを改ざんから保護します。 このような改ざんは、物理的に存在する攻撃者によって行われるか、ブート プロセスの初期段階または起動後のカーネルで実行されるマルウェアという形態をとることがあります。 UEFI はロックダウンされているため (ブート順、ブート エントリ、セキュア ブート、仮想化拡張機能、IOMMU、Microsoft UEFI CA)、UEFI 内の設定を変更して Windows Defender Device Guard のセキュリティを侵害することはできません。

特別なハードウェアの必要性 UEFI セキュア ブートでは、ファームウェアの要件を満たす必要があります。 詳しくは、「Windows Defender Device Guard のハードウェア要件、ファームウェア要件、ソフトウェア要件」をご覧ください。

このガイドでは、Windows Defender Device Guard が備えている個々の機能と、それらの機能に関する計画、構成、展開の方法について説明します。 構成可能なコード整合性を使った Windows Defender Device Guard は、脅威を軽減するための他の Windows 機能 (Windows Defender Credential GuardAppLocker など) と共に展開するように設計されています。

新機能と変更された機能

Windows 10 Version 1703 以降では、コード整合性ポリシーを使用してアプリケーションを制御できるだけでなく、特定のプラグイン、アドイン、モジュールを特定のアプリケーション (基幹業務アプリケーションやブラウザーなど) から実行できるかどうかも制御します。 詳しくは、「コード整合性ポリシーを使用して、特定のプラグイン、アドイン、モジュールを制御する」をご覧ください。

Windows Defender Device Guard の機能を管理するためのツール

Windows Defender Device Guard の機能は、IT 担当者が日常的に利用するおなじみのエンタープライズ管理ツールやクライアント管理ツールを使って簡単に管理できます。

  • グループ ポリシー。 Windows 10 には、組織の構成可能なコード整合性ポリシーを構成して展開するための管理用テンプレートが用意されています。 このテンプレートでは、有効にして展開するハードウェア ベースのセキュリティ機能を指定することもできます。 これらの設定は既存のグループ ポリシー オブジェクト (GPO) と一緒に管理でき、Windows Defender Device Guard の機能を簡単に実装できるようになっています。 コードの整合性やハードウェア ベースのセキュリティ機能に加えて、カタログ ファイルを管理するためにグループ ポリシーを使うこともできます。

  • Microsoft System Center Configuration Manager。 System Center Configuration Manager を使うと、カタログ ファイル、コードの整合性ポリシー、ハードウェア ベースのセキュリティ機能の展開と管理が簡単になります。また、バージョン管理も実行できます。 詳しくは、「System Center Configuration Manager を使ったカタログ ファイルの展開」をご覧ください。

  • Microsoft Intune。 Microsoft では、Microsoft Intune の今後のリリースで、コードの整合性ポリシーやカタログ ファイルの展開と管理をサポートする機能を追加することを検討しています。

  • Windows PowerShell。 Windows PowerShell を使って、コードの整合性ポリシーの作成とサービスの提供を行うことができます。 詳しくは、「コード整合性ポリシーの展開: 手順」と、Windows PowerShell の構成可能なコード整合性ポリシーに関するトピックをご覧ください。

これらのオプションでは、既にあるエンタープライズ管理ソリューションを管理するために、使い慣れたエクスペリエンスと同じものが提供されます。

Windows Defender Device Guard 機能の展開について詳しくは、次のトピックをご覧ください。

Windows Defender Device Guard に関連するその他の機能

Windows Defender Device Guard と AppLocker

AppLocker は Windows Defender Device Guard の新機能とは見なされませんが、適用されるコード整合性を完全に実装できない場合や、Device Guard の機能が目的のシナリオのすべてには適合しない場合に、Windows Defender Device Guard の機能を補助します。 コード整合性ポリシーを AppLocker 規則と併用するシナリオには、さまざまなものがあります。 ベスト プラクティスとして、コードの整合性ポリシーは、組織で可能な最も厳しい制限レベルで適用することをお勧めします。その後、AppLocker を使って、さらに低いレベルに制限を微調整することができます。

  AppLocker によって Windows Defender Device Guard の機能をどのように拡張できるかを示す例の 1 つとして、ユニバーサル アプリケーションの制限があります。 ユニバーサル アプリケーションは、信頼して実行できることが Microsoft によって検証されています。ただし組織では、特定のユニバーサル アプリケーションを組織の環境で実行することを禁止したい場合があります。 これは AppLocker 規則を使うことで実現できます。

AppLocker と Windows Defender Device Guard は、組織内でサイド バイ サイドで実行する必要があります。これにより、両方のセキュリティ機能を同時に最大限に活用することができ、可能な限り多くのデバイスに対して総合的なセキュリティを提供できます。 これらの機能に加え、企業における包括的なセキュリティ ポートフォリオを対象とした企業向けウイルス対策ソリューションを引き続き保持することをお勧めします。

Windows Defender Device Guard と Windows Defender Credential Guard

VBS を採用している Windows 10 の他の機能として、Windows Defender Credential Guard があります。 Windows Defender Credential Guard は、コード整合性をホストするものと同じ種類の VBS 仮想化コンテナーにドメイン資格情報を格納して、Active Directory ドメイン ユーザーに追加の保護機能を提供します。 これらのドメイン資格情報をアクティブなユーザー モードとカーネル モードから分離することで、盗難のリスクが大幅に低くなります。 Windows Defender Credential Guard (Windows Defender Device Guard に含まれる機能ではありません) について詳しくは、「Windows Defender Credential Guard によるドメインの派生資格情報の保護」をご覧ください。

Windows Defender Credential Guard は、pass-the-hash や pass-the-ticket の手法に対抗することに重点を置いています。 組織では、Windows Defender Credential Guard と共に多要素認証を使うことで、このような脅威に対する追加の保護機能を実現できます。