概要
2021 年 7 月 14 日の Windows更新プログラムおよびそれ以降の Windows更新プログラムは、CVE-2021-33757 の保護を追加します。
2021 年 7 月 14 日の Windows更新プログラムおよびそれ以降の Windows更新プログラムのインストール後に、従来の MS-SAMR プロトコルをパスワード操作に使用すると、SAM サーバーで AES 暗号化がサポートされている場合、Windows クライアントで Advanced Encryption Standard (AES) 暗号化が推奨メソッドになります。 SAM サーバーで AES 暗号化が サポートされていない場合は、従来の RC4 暗号化に戻すことができます。
CVE-20201-33757 の変更は MS-SAMR プロトコルだけを対象としており、他の認証プロトコルに関係ありません。 MS-SAMR は 、RPC と名前付きパイプで SMB を使用します。 SMB は暗号化もサポートしますが、既定では有効になっていません。 、CVE-20201-33757 の変更は既定で有効であり、SAM レイヤーのセキュリティを強化します。 2021 年 7 月 14 日の Windows更新プログラムおよびそれ以降の Windows更新プログラムに含まれている CVE-20201-33757 の保護をインストールする以外に、サポートされているすべてのバージョンの Windows の構成を追加変更する必要はありません。 サポートされていないバージョンの Windows の利用を中止するか、サポートされているバージョンにアップグレードする必要があります。
注: CVE-2021-33757 は 、MS-SAMR プロトコルの特定の API を使用するときにのみ、転送中のパスワードの暗号化方法を変更します。保存されているパスワードの格納方法は変更しません。 Active Directory と SAM データベース (レジストリ) 内にローカルで保存されているパスワードの暗号化方法の詳細については、「パスワードの概要」を参照してください。
詳細情報
-
パスワード変更パターン
この更新プログラムは、AES を使用する新しいパスワードの変更方法を追加することで、プロトコルのパスワード変更パターンを変更します。
RC4 を使用した古いメソッド
AES を使用した新しいメソッド
SamrUnicodeChangePasswordUser2 (OpNum 55)
SamrUnicodeChangePasswordUser4 (OpNum 73)
MS-SAMR OpNums の完全な一覧については、「メッセージ処理イベントとシーケンス処理ルール」を参照してください。
-
パスワード設定 パターン
この更新プログラムは、2 つの新しいユーザー情報クラスをSamrSetInformationUser2 (Opnum 58) 方法に追加することで、プロトコルのパスワード設定 パターンを変更します。 以下のとおり、パスワード情報を設定できます。
RC4 を使用した古いメソッド
AES を使用した新しいメソッド
SamrSetInformationUser2 (Opnum 58) と、RC4 を使用して暗号化されたユーザー パスワードを保持する UserInternal4InformationNew。
SamrSetInformationUser2 (Opnum 58) と、AES を使用して暗号化されたユーザー パスワードを保持する UserInternal8Information。
SamrSetInformationUser2 (Opnum 58) と、RC4 を使用して暗号化されたユーザー パスワードとその他すべてのユーザー属性を保持する UserInternal5InformationNew。
SamrSetInformationUser2 (Opnum 58) と、AES を使用して暗号化されたユーザー パスワードとその他すべてのユーザー属性を保持する UserInternal7Information。
既存の SamrConnect5 メソッドは、SAM クライアントとサーバー間の接続を確立するために通常使用されます。
更新されたサーバーは、SAMPR_REVISION_INFO_V1 で定義されているとおり、SamrConnect5() 応答に新しいビットを返すようになります。
値 |
意味 |
0x00000010 |
クライアントが受信すると、この値は、クライアントに SAMPR_ENCRYPTED_PASSWORD_AES 構造を持つ AES 暗号化を使用して、ネットワーク上で送信されたパスワード バッファーを暗号化するように指示します (指示するように設定されている場合)。 AES 暗号の使用方法 (セクション 3.2.2.4) と SAMPR_ENCRYPTED_PASSWORD_AES (セクション2.2.6.32) を参照してください。 |
更新されたサーバーが AES をサポートしている場合、クライアントは新しいメソッドと新しい情報クラスをパスワード操作に使用します。 サーバーがこのフラグを返さない場合や、クライアントが更新されていない場合、クライアントは RC4 暗号化を使用する以前のメソッドを使用します。
パスワードの設定操作には、書き込み可能なドメイン コントローラー (RWDC) が必要です。 パスワードの変更は、読み取り専用ドメイン コントローラー (RODC) によって RWDC に転送されます。 AES を使用するには、すべてのデバイスを更新する必要があります。 以下に例を示します。
-
クライアント、RODC または RWDC が更新されていない場合は、RC4 暗号化が使用されます。
-
クライアント、RODC、RWDC が更新されている場合は、AES 暗号化が使用されます。
2021 年 7 月 14 日の更新プログラムによって、更新されていないデバイスを識別し、セキュリティの向上に役立つ 4 つの新しいイベントがシステム ログに追加されます。
-
構成状態 イベント ID 16982 または 16983 が、起動時またはレジストリ構成の変更時にログされます。
イベント ID 16982イベント ログ
システム
イベント ソース
Directory-Services-SAM
イベント ID
16982
Level
情報
エラー メッセージのテキスト
セキュリティ アカウント マネージャーが、従来のパスワード変更の呼び出しまたは RPC メソッドの設定を行うリモート クライアントの詳細イベントを現在ログしています。 この設定により、大量のメッセージが発生する可能性があるため、問題を診断するための短時間のみ使用してください。
イベント ログ
システム
イベント ソース
Directory-Services-SAM
イベント ID
16983
Level
情報
エラー メッセージのテキスト
セキュリティ アカウント マネージャーが、従来のパスワード変更の呼び出しまたは RPC メソッドの設定を行うリモート クライアントのサマリー イベントを現在ログしています。
-
2021 年 7 月 14 日の更新プログラムを適用すると、サマリー イベント 16984 が 60 分ごとにシステム イベント ログにログされます。
イベント ID 16984イベント ログ
システム
イベント ソース
Directory-Services-SAM
イベント ID
16984
Level
情報
エラー メッセージのテキスト
セキュリティ アカウント マネージャーが、過去 60 分以内に %x の従来のパスワード変更を検出または RPC メソッド呼び出しを設定しました。
-
詳細イベント ログを構成すると、従来の RPC メソッドを使用してアカウント パスワードを変更または設定するたびに、イベント ID 16985 がシステム イベントにログされます。
イベント ID 16985イベント ログ
システム
イベント ソース
Directory-Services-SAM
イベント ID
16985
Level
情報
エラー メッセージのテキスト
セキュリティ アカウント マネージャーが、従来の変更の使用を検出またはネットワーク クライアントから RPC メソッドを設定しました。 クライアント オペレーティング システムまたはアプリケーションをアップグレードして、このメソッドの最新かつより安全なバージョンを使用することを検討してください。
詳細 :
RPC メソッド: %1
クライアント ネットワーク アドレス: %2
クライアント SID: %3
ユーザー名: %4
詳細イベント ID 16985 をログするには、サーバーまたはドメイン コントローラーで次のレジストリ値を切り替えます。
パス
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SAM
種類
REG_DWORD
値の名前
AuditLegacyPasswordRpcMethods
値のデータ
1 = 詳細ログは有効です。
0 または存在しない = 詳細ログは無効です。 サマリー イベントのみ。 (既定)
SamrUnicodeChangePasswordUser4 (Opnum 73) に記載されるとおり、新しいSamrUnicodeChangePasswordUser4 メソッドを使用すると、クライアントとサーバーは PBKDF2 アルゴリズムを使用して、プレーンテキストの古いパスワードから暗号化および暗号化解除キーを派生します。 これは、古いパスワードが、サーバーとクライアントの両方が知っている唯一の共通する秘密だからです。
PBKDF2 の詳細については、「BCryptDeriveKeyPBKDF2 関数 (bcrypt.h)」を参照してください。
パフォーマンスとセキュリティ上の理由から変更を行う必要がある場合は、クライアントで次のレジストリ値を設定することで、クライアントがパスワード変更に使用する PBKDF2 イテレーションの数を調整できます。
注: PBKDF2 イテレーションの数を減らすと、セキュリティが低下します。 既定値から数値を下げることはお勧めしません。 ただし、可能な限り多くの PBKDF2 イテレーションを使用することをお勧めします。
パス |
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SAM |
種類 |
REG_DWORD |
値の名前 |
PBKDF2Iterations |
値のデータ |
最小 5,000 ~最大 1,000,000 |
既定値 |
10,000 |
注: PBKDF2 は、パスワードの設定操作には使用されません。 パスワードの設定操作の場合、SMB セッション キーはクライアントとサーバー間で共有される秘密であり、暗号化キーの派生の基準として使用されます。
詳細については、「SMB セッション キーの取得」を参照してください。
よく寄せられる質問 (FAQ)
ダウングレードは、サーバーまたはクライアントが AES をサポートしていない場合に発生します。
RC4 を使用した従来のメソッドを使用すると、更新されたサーバーがイベントをログします。
現在、強制モードは提供されていませんが、今後は提供されるかもしれません。 今のところ予定していません。
サード パーティ製デバイスが SAMR プロトコルを使用していない場合、これは重要ではありません。 MS-SAMR プロトコルを実装するサード パーティ ベンダーは、これを実装することを選択する可能性があります。 質問がある場合は、サード パーティ ベンダーにお問い合わせください。
追加変更は必要ありません。
このプロトコルは古いので、使用されることはかなり少ないと見込んでいます。 レガシ アプリケーションが、これらの API を使用する可能性があります。 また、Active Directory ユーザーとコンピューター MMC などの一部の Active Directory ツールは SAMR を使用します。
いいえ。 これらの特定の SAMR API を使用するパスワード変更だけが影響を受けます。
はい。 PBKDF2 は RC4 よりも高価です。 SamrUnicodeChangePasswordUser4 API を呼び出すドメイン コントローラーで多数のパスワード変更が同時発生している場合、LSASS の CPU 負荷が影響を受ける可能性があります。 必要に応じて、クライアントで PBKDF2 イテレーションを調整できます。ただし、セキュリティが低下するため、既定値から下げることはお勧めしません。
参考資料
サードパーティの情報に関する免責事項
他社テクニカル サポートのお問い合わせ窓口は、ユーザーの便宜のために提供されているものであり、 将来予告なしに変更されることがあります。 マイクロソフトは、掲載されている情報に対して、いかなる責任も負わないものとします。