概要
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 データベース (レジストリ) でローカルにパスワードが暗号化される方法の詳細については、「 パスワードの概要」を参照してください。
詳細
2021 年 7 月 14 日の更新プログラムによる変更
パスワード変更パターン
これらの更新プログラムは、AES を使用する新しいパスワード変更メソッドを追加することにより、プロトコルのパスワード変更パターンを変更します。RC4 を使用した古いメソッド AES を使用した新しいメソッド SamrUnicodeChangePasswordUser2 (OpNum 55) SamrUnicodeChangePasswordUser4 (OpNum 73) MS-SAMR OpNum の完全な一覧については、「 メッセージ処理イベントとシーケンス規則」を参照してください。
パスワード設定 パターン
この更新プログラムは、SamrSetInformationUser2 (Opnum 58) メソッドに 2 つの新しいユーザー情報クラスを追加することにより、プロトコルのパスワード設定パターンを変更します。 パスワード情報は、以下のように設定できます。RC4 を使用した古いメソッド AES を使用した新しいメソッド SamrSetInformationUser2 (Opnum 58) と RC4 で暗号化されたユーザーパスワードを保持する UserInternal4InformationNew と共に。 SamrSetInformationUser2 (Opnum 58) と AES で暗号化されたユーザー パスワードを保持する UserInternal8Information と共に。 SamrSetInformationUser2 (Opnum 58) と UserInternal5InformationNew (RC4 およびその他すべてのユーザー属性を持つ暗号化されたユーザーパスワードを保持します。 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 メソッドの設定を行うリモート クライアントの詳細イベントを現在ログしています。 この設定では大量のメッセージが発生する可能性があるため、問題を診断するために短時間のみ使用してください。 イベント ID 16983
イベント ログ システム イベント ソース 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 または存在しない = 詳細ログは無効です。 サマリー イベントのみ。 (規定)
パスワード変更の PBKDF2 イテレーションを構成する
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 へのダウングレードをトリガーするシナリオとはどのようなものですか?
ダウングレードは、サーバーまたはクライアントが AES をサポートしていない場合に発生します。
RC4 暗号化または AES 暗号化がネゴシエートされたかどうかをどのように確認すればよいですか?
RC4 を使用した従来のメソッドを使用すると、更新されたサーバーがイベントをログします。
サーバーで AES 暗号化を要求できますか。また、今後の Windows 更新プログラムによって AES の使用が強制されますか。
現在、強制モードはありませんが、将来追加される可能性があります。 今のところ予定していません。
サード パーティ製クライアントは、サーバーでサポートされる場合、AES をネゴシエートするために CVE-2021-33757 の保護をサポートしますか。この質問に対応するには、Microsoft サポートまたはサード パーティのサポート チームに問い合わせたほうがいいですか?
サード パーティ製デバイスが SAMR プロトコルを使用していない場合、これは重要ではありません。 MS-SAMR プロトコルを実装するサード パーティ ベンダーは、これを実装することを選択する可能性があります。 質問がある場合は、サード パーティ ベンダーにお問い合わせください。
追加の構成変更を行う必要がありますか?
追加変更は必要ありません。
このプロトコルを使用するもの
このプロトコルはレガシであり、使用は非常に少ないと予想されます。 レガシ アプリケーションが、これらの API を使用する可能性があります。 また、AD ユーザーやコンピューター MMC などの一部の Active Directory ツールは SAMR を使用します。
Kerberos プロトコルや他のプロトコルを使用するパスワード変更に影響はありますか?
いいえ。 これらの特定の SAMR API を使用するパスワード変更だけが影響を受けます。
ドメイン コントローラーのパフォーマンスに影響はありますか。
はい。 PBKDF2 は RC4 よりも高価です。 SamrUnicodeChangePasswordUser4 API を呼び出すドメイン コントローラーで多数のパスワード変更が同時に行われている場合、LSASS の CPU 負荷が影響を受ける可能性があります。 必要に応じて、クライアントで PBKDF2 イテレーションを調整できます。ただし、セキュリティが低下するため、既定値から下げることはお勧めしません。
関連情報
サードパーティの情報に関する免責事項
Microsoft は、ユーザーがテクニカル サポートを見つけるため、サード パーティの連絡先を提供しています。 将来予告なしに変更されることがあります。 Microsoft は、サード パーティの連絡先情報の正確性を保証していません。