投機的実行サイドチャネルの脆弱性から保護するための Exchange Server ガイダンス

適用先
Exchange Server 2016 Standard Edition Exchange Server 2016 Enterprise Edition Exchange Server 2013 Standard CAL Exchange Server 2013 Enterprise Edition Exchange Server 2010 Standard Exchange Server 2010 Enterprise

概要

Microsoft は、"投機的実行サイドチャネル攻撃" として知られる、最近表面化した脆弱性クラスを認識しています。 これらの脆弱性は、多くの最新のプロセッサとオペレーティング システムに影響を及ぼします。 これには、Intel、AMD、ARM のチップセットが含まれます。

これらの脆弱性がお客様に対する攻撃に使用されたという情報はまだ受信されていません。 Microsoft は、お客様の保護のために業界パートナーと引き続き緊密に協力し続けています。 これには、チップ メーカー、ハードウェア OEM、アプリケーション ベンダーが含まれます。 利用できるすべての保護を受けるには、ハードウェアまたはファームウェアとソフトウェアの更新プログラムが必要です。 これには、デバイス OEM のマイクロコードや、場合によっては、ウイルス対策ソフトウェア用の更新プログラムが含まれます。 マイクロソフトでは、すでにこれらの脆弱性を軽減するのに役立つ更新プログラムをいくつかリリースしています。 脆弱性の詳細については、マイクロソフト セキュリティ アドバイザリ ADV180002 を参照してください。 一般的なガイダンスについては、「 Guidance for mitigating speculative execution side-channel vulnerabilities (投機的実行サイドチャネルの脆弱性を軽減するためのガイダンス)」も参照してください。 また、マイクロソフトのクラウド サービスをセキュリティで保護するための措置も講じました。 詳細については、以下のセクションを参照してください。

影響を受ける Exchange Server バージョン

これらは x64 ベースおよび x86 ベースのプロセッサ システムを標的としたハードウェア レベルの攻撃であるため、サポートされているすべてのバージョンの Microsoft Exchange Server がこの問題の影響を受けます。

推奨事項

次の表では、Exchange Server のお客様に推奨される操作について説明します。 現在必要な特定の Exchange 更新プログラムはありません。 ただし、最新の Exchange Server 累積的な更新プログラムと必要なセキュリティ更新プログラムを常に実行することをお勧めします。 実際の環境にバイナリを展開する前に、実際の手順を使用して新しいバイナリを検証して修正を展開することをお勧めします。

シナリオ 説明 推奨事項
1 Exchange Server がベア メタル (仮想マシンなし) 上で実行されており、他の信頼されていないアプリケーション ロジック (アプリケーション層) が同じベア メタル マシン上で実行されていない。 通常の実稼働前検証テストの後に、すべてのシステム更新プログラムと Exchange Server 更新プログラムを適用します。
カーネル仮想アドレス シャドウ処理 (KVAS) を有効にする必要はありません (この記事で後述する関連セクションを参照してください)。
2 Exchange Server は、パブリック ホスティング環境 (クラウド) の仮想マシンで実行されます。 Azure: Microsoft は、Azure の軽減策に関する詳細を投稿しています (詳細については、KB 4073235 を参照してください)。
その他のクラウド プロバイダーの場合: ガイダンスを参照してください。
すべての OS 更新プログラムをゲスト仮想マシン (VM) にインストールすることをお勧めします。
KVAS を有効にするかどうかについては、この記事で後述するガイダンスを参照してください。
3 Exchange Server は、プライベート ホスティング環境の仮想マシンで実行されます。 セキュリティのベスト プラクティスについては、ハイパーバイザーのセキュリティに関するドキュメントを参照してください。 Windows Server と Hyper-V の KB 4072698 を参照してください。
すべての OS 更新プログラムをゲスト VM にインストールすることをお勧めします。
KVAS を有効にするかどうかについては、この記事で後述するガイダンスを参照してください。
4 Exchange Server は物理マシンまたは仮想マシン上で実行され、同じシステム上で実行されている他のアプリケーション ロジックから分離されていません。 すべての OS 更新プログラムをインストールすることをお勧めします。
利用可能な最新の製品更新プログラムと、関連するセキュリティ更新プログラムを展開することをお勧めします。
KVAS を有効にするかどうかについては、この記事で後述するガイダンスを参照してください。

パフォーマンス アドバイザリ

更新プログラムを適用するときに、特定の環境のパフォーマンスを評価することをすべてのお客様にお勧めします。

ここで説明する脆弱性の種類に対してマイクロソフトが提供するソリューションでは、ソフトウェア ベースのメカニズムを使用して、データへのクロスプロセス アクセスから保護します。 すべてのお客様には、Exchange Server と Windows の最新バージョンをインストールすることをお勧めします。 マイクロソフトによる Exchange ワークロードのテストに基づいて、パフォーマンスへの影響は最小限になるはずです。

さまざまなワークロードに対するカーネル仮想アドレス シャドウ処理 (KVAS) の影響を測定しました。 一部のワークロードでパフォーマンスが大幅に低下することがわかりました。 Exchange Server は、KVAS が有効になっている場合に大幅に減少する可能性があるワークロードの 1 つです。 CPU 使用率または I/O 使用パターンが高いサーバーが最も大きな影響を示すと予想されます。 実稼働環境に展開する前に、実稼働のニーズを表すラボでテストを実行して、KVAS を有効にした場合のパフォーマンスへの影響をまず評価することを強くお勧めします。 KVAS を有効にすることによるパフォーマンスへの影響が大きすぎる場合は、同じシステムで実行されている信頼できないコードから Exchange Server を分離することが、アプリケーションにとってより良い軽減策であるかどうかを検討します。

KVAS に加えて、ブランチ ターゲット インジェクションの軽減策ハードウェア サポート (IBC) によるパフォーマンスへの影響に関する情報について、 こちらで詳しく説明します。 Exchange Serverを実行していて、IBCソリューションが展開されているサーバーでは、IBCが有効になっていると、パフォーマンスが大幅に低下する可能性があります。

マイクロソフトでは、ハードウェア サプライヤーがマイクロコードの更新という形で自社製品の更新プログラムを提供することを想定しています。 Exchange に関する経験によると、マイクロコードの更新プログラムはパフォーマンスの低下を増加させます。 これがどの程度発生するかは、コンポーネントとそれらが適用されるシステムの設計に大きく依存します。 ソフトウェアベースかハードウェアベースかにかかわらず、この種の脆弱性のみに対処するには単一のソリューションはないと考えています。 運用環境に移行する前に、すべての更新プログラムのパフォーマンスを評価して、システム設計とパフォーマンスのばらつきを考慮することをお勧めします。 Exchange チームは、現在パフォーマンスの違いを説明するためにお客様が使用しているサイズ計算ツールを更新する予定はありません。 このツールで提供される計算では、これらの問題の修正に関連するパフォーマンスの変化は考慮されていません。 Microsoft は、Microsoft 自身とお客様の使用状況に基づいて、このツールと必要と思われる調整を引き続き評価します。

詳細がわかり次第、このセクションを更新します。

カーネル仮想アドレス シャドウ処理の有効化

Exchange Server は、物理システム、パブリックおよびプライベート クラウド環境の VM、Windows オペレーティング システムなど、多くの環境で実行されています。 環境に関係なく、プログラムは物理システムまたは VM 上に配置されます。  この環境は、物理環境か仮想環境かにかかわらず、セキュリティ 境界と呼ばれます。

境界内のすべてのコードがその境界内のすべてのデータにアクセスできる場合、アクションは必要ありません。 そうでない場合、境界は マルチテナントと呼ばれます。 発見された脆弱性により、その境界内の任意のプロセスで実行されているコードが、その境界内の他のデータを読み取ることが可能になります。 これは、アクセス許可が制限されている場合でも当てはまります。 境界内のプロセスで 信頼できない コードが実行されている場合、そのプロセスはこれらの脆弱性を使用して他のプロセスからデータを読み取る可能性があります。

マルチテナント境界で信頼できないコードから保護するには、次のいずれかを実行します。

  • 信頼できないコードを削除します。
  • KVAS を有効にして、プロセス間の読み取りから保護します。 これはパフォーマンスに影響します。 詳細については、この記事の前のセクションを参照してください。

KVAS for Windows を有効にする方法の詳細については、 KB 4072698 を参照してください。

シナリオ 1

Azure VM は、信頼されていないユーザーが制限されたアクセス許可で実行される JavaScript コードを送信できるサービスを実行します。 同じ VM 上で、Exchange Server が実行され、信頼されていないユーザーがアクセスしてはならないデータを管理しています。 このような状況では、KVAS は 2 つのエンティティ間の開示から保護する必要があります。

シナリオ 2

Exchange Server をホストするオンプレミスの物理システムでは、信頼されていないサードパーティのスクリプトや実行可能ファイルが実行される可能性があります。 スクリプトまたは実行可能ファイルへの Exchange データの漏えいを防ぐために、KVAS を有効にする必要があります。

注釈Exchange Server内の機能拡張メカニズムが使用されているからといって、自動的に安全でなくなるわけではありません。 これらのメカニズムは、各依存関係が理解され、信頼されている限り、Exchange Server 内で安全に使用できます。 さらに、Exchange Server 上に構築された他の製品では、正しく機能するために機能拡張メカニズムが必要になる場合があります。 代わりに、最初のアクションとして、各使用を確認して、コードが理解され、信頼できるかどうかを判断します。 このガイダンスは、パフォーマンスへの影響が大きいために KVAS を有効にする必要があるかどうかをお客様が判断するのに役立つように提供されています。

ブランチ ターゲット インジェクションの軽減策 (IBC) ハードウェア サポートの有効化

IBC は、GPZ 開示においてスペクターの半分または「バリアント 2」としても知られる CVE 2017-5715 に対して緩和します。

Windows で KVAS を有効にするためのこれらの手順は、IBC も有効にできます。 ただし、IBC にはハードウェア製造元からのファームウェアの更新も必要です。 Windows で保護を有効にするための KB 4072698 の手順に加えて、お客様はハードウェアの製造元から更新プログラムを入手してインストールする必要があります。

シナリオ 1

Exchange Server をホストしているオンプレミスの物理システムでは、信頼されていないユーザーが任意の JavaScript コードをアップロードして実行できます。 このシナリオでは、IBCがプロセス間の情報漏えいから保護することを強く推奨しました。

IBC ハードウェア サポートが存在しない状況では、信頼できないプロセスと信頼できるプロセスを別の物理マシンまたは仮想マシンに分離することをお勧めします。

信頼されていない Exchange Server 拡張メカニズム

Exchange Server には、機能拡張とメカニズムが含まれています。 これらの多くは、Exchange Server を実行しているサーバーで信頼できないコードの実行を許可しない API に基づいています。 特定の状況において、トランスポート エージェントと Exchange 管理シェルにより、Exchange Server を実行しているサーバー上で信頼できないコードの実行が許可される場合があります。 トランスポート エージェントを除き、いずれの場合も、機能拡張機能を使用するには認証が必要です。 可能な場合は、バイナリの最小セットに制限された機能拡張機能を使用することをお勧めします。 また、Exchange Server と同じシステムで任意のコードが実行されないように、サーバーへのアクセスを制限することをお勧めします。 各バイナリを信頼するかどうかを決定することをお勧めします。 信頼されていないバイナリを無効にするか、削除する必要があります。 また、管理インターフェイスがインターネットに公開されていないことを確認する必要もあります。

サードパーティの免責事項

この資料に記載されているサードパーティ製品は、Microsoft と関連のない他社の製品です。 明示または黙示にかかわらず、これらの製品のパフォーマンスや信頼性についてマイクロソフトはいかなる責任も負わないものとします。