2018 年 5 月の更新プログラム適用によるリモート デスクトップ接続への影響
皆さん、こんにちは。Windows サポート チームです。
今回は、5 月 9 日 (日本時間) に提供される予定の更新プログラム (「KB List - 5月 の更新プログラム」参照) が、リモート デスクトップ並びに関連技術に影響する範囲について、紹介します。
もともとは、CredSSP と呼ばれる認証プロトコルの脆弱性に関する対策で CVE-2018-0886 にて公開済みの問題であり、各オペレーティングシステム向けに対策された更新プログラムは、3 月の時点で提供済みとなっております。
この対策に対して、5 月 9日に提供される更新プログラムでは対策済みのモジュールの既定の接続方法が変更されるため、環境によりリモートデスクトップ接続に問題が生じる場合があります。
尚、本説明にて「3月の更新プログラム」という記載がございますが、具体的なKB番号はOS毎に異なるため後述の 「KB List - 3月以降の更新プログラムのKB番号」をご参照ください。*1
*1 Windows Server 2012 R2 の 4 月の Security Only Update KB4093115 には本修正は含まれませんのでご留意ください。
目次.
1. 問題概要
2. 接続可否パターン
3. 解決策
4. 回避策
5. 参考情報
6. FAQ
1. 問題概要
CredSSP の脆弱性情報 CVE-2018-0886 対策のためリリースされた 3月の更新プログラムを基として、新たに5月にリリースされる更新プログラムにて更にセキュリティレベルが上がります。
全てのコンピューターに更新プログラムが適用済みであれば問題はありませんが、3月以降の更新プログラムがリモートデスクトップ接続先に適用されていない状態で接続元に5月の更新が適用されると、既定の状態では、以下のエラーメッセージが表示されリモートデスクトップ接続ができなくなります。
なお、RemoteAppの場合はエラーメッセージなくアプリケーションが終了します。
本記事を参考にして事前対処を行い、リモート デスクトップ、RemoteApp、仮想デスクトップ環境などへ接続できなくなることへの対策を行っていただきますようお願いいたします。
3月以降の更新プログラムを適用すると以下のポリシーで CredSSP の挙動が制御されるようになります。
ポリシーのパス:
[コンピューターの構成] - [管理用テンプレート] - [システム] - [資格情報の委任]
- [暗号化オラクルの修復] (英語 : Encryption Oracle Remediation)
3 月、4 月の更新プログラムではポリシーが未構成の場合、既定の接続方法が [脆弱 (Vulnerable)] ですが、5 月の更新プログラムでは、既定の接続方法が [緩和 (Mitigated)] に変更されます。この結果、各更新の適用または未適用のコンピューターが混在するとリモート デスクトップ接続が出来ない状況が発生します。
基本的には CVE-2018-0886 記載のある下記の相互運用性一覧に従いますが、以下にリモート デスクトップのご利用環境の具体例に沿って、対策および影響を説明しておりますので、ご参照ください。
接続先サーバー (RD 接続ブローカーを含む) | |||||
3 月以降の更新プログラムが未適用 | Force Updated Clients | Mitigated(5 月 適用既定状態) | Vulnerable(3月/4月 適用既定状態) | ||
接続元クライアント | 3 月以降の更新プログラムが未適用 | 許可(CASE 1) | 拒否 | 許可 | 許可 |
Force Updated Clients | 拒否 | 許可 | 許可 | 許可 | |
Mitigated(5 月 適用既定状態) | 拒否(CASE 4) | 許可 | 許可(CASE 6) | 許可(CASE 5) | |
Vulnerable(3月/4月 適用既定状態) | 許可(CASE 2) | 許可 | 許可 | 許可(CASE 3) |
具体的には下記ケースでリモートデスクトップ接続ができなくります。
- リモートデスクトップ接続先 (RD 接続ブローカーを含む) が3月の更新プログラム未適用
- リモートデスクトップ接続元が5月の更新プログラム適用済み
2. 接続可否パターン
3. 解決策
リモートデスクトップ接続先に CVE-2018-0886 の 3 月以降の更新プログラムを適用いただくこととなります。
注意が必要な点といたしまして、リモート デスクトップ サービス (RDS) 環境でご利用いただいている場合、RD 接続ブローカー サーバーにも適用いただく必要がございます。
これは RDS 環境の場合、接続時の認証が RD 接続ブローカー サーバーでも行われるためです。
なお、RDS 環境ではその他に RD Web アクセス、RD ゲートウェイ、RD ライセンス、RD 仮想化ホストの役割が利用されますが、これらの役割自体は本件に関与しません。しかし運用等にてこれらのサーバーにリモートデスクトップ接続することがある場合には 3 月以降の更新プログラムを適用して下さい。
4. 回避策
リモートデスクトップ接続先に 3 月以降の更新プログラムを適用できない場合には以下の回避策がございますが、いずれもセキュリティ リスクが高まりますので、影響をご理解いただいたうえで実施願います。
4-1. リモート デスクトップ接続元 (クライアント) での回避策 1
リモートデスクトップ接続元にて以下のポリシーを変更することでリモートデスクトップ接続先に 3 月以降の更新プログラムが未適用の場合でも接続可能となります。
[コンピューターの構成]
-> [管理用テンプレート]
-> [システム]
-> [資格情報の委任]
ポリシー名 : Encryption Oracle Remediation (暗号化オラクルの修復)
設定 : Vulnerable (脆弱)
4-2. リモート デスクトップ接続元 (クライアント) での回避策 2
リモートデスクトップ接続元にて以下レジストリを手動もしくは REG ADD コマンドで追加いただくことでも回避策 1 と同様の効果が得られます。
レジストリ パス : HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters
値 : AllowEncryptionOracle
データの種類 : DWORD
値 : 2
REG ADD コマンドで追加いただく場合には以下のコマンド ラインとなります。
REG ADD HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2
※ レジストリ変更後に再起動は必要ございません。
4-3. リモート デスクトップ接続先 (サーバー) での回避策
リモートデスクトップ接続先 で NLA (Network Level Authentication) を強制しないようにすることで接続可能となります。
NLA を強制しないようにするためには、以下の3つの方法のいずれかで設定できます。
方法1:
以下のポリシー変更にてNLAを強制しないようにすることができます。
[コンピューターの構成]
-> [管理用テンプレート]
-> [Windows コンポーネント]
-> [リモート デスクトップ サービス]
-> [リモート デスクトップ サービス セッション ホスト]
-> [セキュリティ]
ポリシー名 : リモート接続にネットワーク レベル認証を使用したユーザー認証を必要とする
設定 : 無効
方法 2:
[システムのプロパティ] -[リモート] タブにおいて、「ネットワークレベル認証でリモートデスクトップを実行しているコンピューターからのみ接続を許可する」
のチェックを外します。
方法 3:
Windows Server 2012 以降のリモート デスクトップ サービス (RDS) 環境にて、RD 接続ブローカーで接続先 (RD セッション ホスト) をコレクション管理している場合には、コレクションのプロパティで以下を変更することでも対処が可能です。
コレクションプロパティ において、
「ネットワークレベル認証でリモートデスクトップを実行しているコンピューターからのみ接続を許可する」
のチェックを外します。
尚、コレクションに参加していないRD 接続ブローカーでは上記方法 1. もしくは方法 2. で NLA を強制しないようにしていただく必要がございます。
4-4. NLA を強制しないことに関する注意事項
NLA を強制しないようにすることで CredSSP を利用しなくなるため、本脆弱性における影響は受けなくなります。
しかしながら、以下の通りセキュリティレベルを下げる状態となりますので、弊社としては NLA を強制しないようにする事は推奨しておりません。
NLA は RDP 接続時に接続先端末がユーザーとのセッションを確立する前にユーザー認証を要求し、セキュリティを強化するための認証方法です。
NLA を強制しないようにした場合、NLA を利用しない接続元コンピューターから接続が行われた際に、RDP 接続時のセッションが確立後に認証が行われるため、セキュリティレベルが低下します(Windows Server 2003 と同様のセキュリティ レベル)。
すなわち、資格情報を確認する前に、セッション ホスト サーバーへのセッションが確立されてしまうため、この点を突く悪意のある攻撃があった場合、セッションを乱立させることでポートが枯渇し、セッション ホスト サーバーが使用できない状態に陥るような、セキュリティが低い事による弱点をさらす事になりますのでご注意ください。
5. 参考情報
CVE-2018-0886 の CredSSP の更新プログラムについて (当社サポートブログ)
https://blogs.technet.microsoft.com/jpntsblog/2018/04/20/cve-2018-0886/
CVE-2018-0886 の CredSSP の更新プログラム(サポート技術情報)
https://support.microsoft.com/ja-jp/help/4093492/credssp-updates-for-cve-2018-0886-march-13-2018
CVE-2018-0886 | CredSSP のリモートでコードが実行される脆弱性
https://portal.msrc.microsoft.com/ja-jp/security-guidance/advisory/CVE-2018-0886
KB List - 3月以降の更新プログラムのKB番号
以下の KBのいずれかまたは後述の「5月 の更新プログラムのKB番号」のいずれかがリモート デスクトップ接続先に適用されていれば本件を回避することができます。
Windows VistaWindows Server 2008 | Windows 7Windows Server 2008 R2 | Windows Server 2012 | Windows 8.1Windows Server 2012 R2 | Windows 10 version 1507 | Windows 10 version 1511 | Windows 10 version 1607Windows Server 2016 | Windows 10 version 1703 | Windows 10 version 1709 | Windows 10 version 1803 |
KB4056564 | KB4093113KB4093118KB4093108KB4099467KB4100480KB4088881KB4088875KB4088878 | KB4093116KB4093122KB4093123KB4099468KB4088883KB4088877KB4088880 | KB4088876KB4088879KB4088882KB4093114KB4093121冒頭 *1 参照 | KB4093111KB4088786 | KB4088779KB4093109 | KB4093119KB4093120KB4096309KB4088889KB4088787 | KB4088782KB4088891KB4093107KB4093117 | KB4088776KB4089848KB4093112KB4093105 | OS 既定で適用済み |
KB List - 5月 の更新プログラムのKB番号
以下の KB のいずれかがリモート デスクトップ接続元に適用された場合、既定が [緩和 (Mitigated)] に変更されるため、既定の状態でリモート デスクトップ接続ができなくなる状況が発生し得ます。
Windows VistaWindows Server 2008 | Windows 7Windows Server 2008 R2 | Windows Server 2012 | Windows 8.1Windows Server 2012 R2 | Windows 10 version 1507 | Windows 10 version 1511 | Windows 10 version 1607Windows Server 2016 | Windows 10 version 1703 | Windows 10 version 1709 | Windows 10 version 1803 |
KB4056564 (V2) | KB4103712KB4103718 | KB4103726KB4103730 | KB4103715KB4103725 | KB4103716 | N/A | KB4103723 | KB4103731 | KB4103727 | KB4103721 |
6. FAQ
Q. Windows Server 2008/2008 R2 の RDS 環境では RD 接続ブローカーで NLA が強制されていても接続が可能だが 2012 以降の環境との違いは何か。
A. Windows Server 2008/2008 R2 と 2012 以降の RDS については RD 接続ブローカーの動作が異なるため、従って認証動作の違いから以下の差異があります。
・Windows Server 2008/2008R2: RD 接続ブローカーの NLA を強制しても接続可能
・Windows Server 2012 以降: RD 接続ブローカーの NLA を強制すると接続不可
Q. 4-3 の回避策にある "方法3" について、Windows Server 2008/2008 R2 ではコレクション管理はできないがどのように対処すればよいか。
A. Windows Server 2008/2008 R2 の場合はコレクション管理機能がないため、方法1 や 方法2 でご対応をお願いします。
Q. RD 接続ブローカーおよび RD セッション ホストのネットワーク レベル認証を強制しない回避策 (4-3) を行ったところ、保存した資格情報が使用されず、パスワード入力が必要な状態となった。
A. これは NLA を無効化したことによる影響となります。
想定された動作となりますので、サーバー側で更新プログラムを適用いただいたうえで NLA を有効としてください。
回避策としては 4-1 もしくは 4-2 のクライアント側のポリシーを変更することとなりますが CredSSP の脆弱性に対応できませんのでご留意願います。
Q. Windows 7 / 8.1 及び Windows Server 2008 R2 / 2012 / 2012 R2 の接続元クライアントに 2018 年 6 月以降のセキュリティのみの更新プログラムを適用した場合でも、接続できない事象が発生するか。
A. CredSSP の脆弱性対策は、"tspkg.dll" のシステム ファイルが修正されております。
以下の修正バージョンより上位のバージョンの "tspkg.dll" が修正対象のファイルとして含まれている場合には、CredSSP の脆弱性対策が行われております。
そのため、接続元クライアントの "tspkg.dll" のバージョンが下記のバージョン以上の場合には本事象が発生します。
OS バージョン | tspkg.dll のファイル バージョン |
Windows 7Windows Server 2008 R2 | 6.1.7601.24117 |
Windows Sever 2012 | 6.2.9200.22432 |
Windows 8.1Windows Server 2012 R2 | 6.3.9600.18999 |
例えば、Windows 7 / Windows Server 2008 R2 および Windows Server 2012 につきましては、2018 年 6 月および 7 月のセキュリティのみの更新プログラムに上記のバージョン以上の "tspkg.dll" が含まれているため本事象が発生します。
尚、ファイルのバージョンにつきましては更新プログラムの公開ページ の "更新プログラム XXXXXXX のファイル情報" のリンクよりダウンロードした CSV ファイルより確認可能です。
また、Windows 10 / Windows Server 2016 につきましては "セキュリティのみの更新プログラム" はなく、すべての更新は前月の更新も含まれる累積の更新プログラムとなります。
そのため、2018 年 5 月以降の更新プログラムには必ず脆弱性対策が行われた "tspkg.dll" が含まれ、本事象が発生します。