Windows 10 TLS/SSL の奇妙な問題 (BAD_MAC_READ、プログラム クエリの中断など)

Windows 10 TLS/SSL の奇妙な問題 (BAD_MAC_READ、プログラム クエリの中断など)

最近、新しい PC の組み立てを終え、Microsoft ユーティリティ ツールから Windows 10 Pro をインストールしました。

すべて順調に進みましたが、1週間ほど経つと突然エラーが発生し始めました。

  • Firefox(最新の安定バージョン73.0)では、HTTPS経由のクエリが約90%の確率で失敗します。
  • Steam、Discord、一部のゲーム ランチャーなどのシック クライアントでは、サービスがランダムに切断されたり、接続する前に複数回起動しなければならないことがあります。たとえば、Discord や Spotify では、1 分間に 1 回または 2 回接続/切断が繰り返されます...
  • また、Windows イベント ビューアーに ESENT エラー メッセージが多数表示されています。ほとんどすべてが、イメージ/データベース バージョン間のチェックサムの誤り、WebCache データベースの破損、ログの書き込み時のセグメント違反などを示しています。頻繁に発生し、さまざまなバリエーションがあります。(質問があれば、これらのエラーの詳細を投稿できます)

私が確信していること:

  • 私の PC の外部から来ているわけではありません。USB 経由で携帯電話から共有 4G 接続をテストしましたが、問題は依然として発生しました。
  • もう一度Windows 10の新規インストールを試み、最新の累積的な更新プログラムを削除しました
  • BIOSとシステムクロック、同期、OK
  • メーカーのウェブサイト(Asus)のマザーボードページからダウンロードした最新のドライバー
  • ローカルのウイルス対策やファイアウォールは暗示されていません。これらすべてを無効にして試しました (Windows Defender、ファイアウォール、脅威分析など)

私のセットアップ:

  • マザーボード Asus ROG Strix z390-e ゲーミング
  • CPU インテル Core CoffeeLake 9700k
  • GPU Asus NVIDIA RTX2070 SUPER
  • 2x8 Go Corsair RGB RAM (3200MHz)
  • 2x 1 から Samsung 970Evo Plus M.2 SSD

私の問題に似た投稿を見つけました: https://www.reddit.com/r/techsupport/comments/4396fz/windows_10_strange_tls_ssl_errors_very_stuck/

Windows イベント ビューアーの ESENT エラーを解決するために、いくつかの方法を試しました。 https://support.microsoft.com/fr-fr/help/278316/esent-event-ids-1000-1202-412-and-454-are-logged-repeatedly-in-the-app

Microsoft フォーラムを参照して、DISM や SFC などのツールを使用してイメージの整合性を回復しようとしましたが、これまでのところ、これらのツールによると何も問題はありませんでした。

chkdsk を試しましたが、ここでも報告すべきことはありません。

今晩、家に帰ったら、Linux ライブ USB キーで起動して、エラーが続くかどうかを確認します。

このスレッドを更新して、後で Wireshark とプロセス分析を追加します...そして次の発見...ありがとう

編集: 公式のMicrosoftフォーラムで質問を開き、最新の詳細をここに追加しました。Windows 10 ESENT 474 イベントによりローカル データファイルが破損しました

編集2: 最近、突破口が見つかりました。Firefox で TLS 1.2 を強制したところ、多くの HTTPS ウェブサイトが正しく読み込まれるようになりました。ただし、YouTube や Google、その他いくつかのサイトでは、読み込みにまだ問題があります (BAD_MAC_READ)。そこで、クライアント/サーバー TLS 接続のネゴシエーションに使用される暗号を確認しました。

TLS1.2 上の TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256。TLS1.2 を使用して HTTPS で正しく読み込まれる Web サイトは、TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 ではなく TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 を使用しています。

ゲーム クライアント ランチャー (League of Legends) とクロスチェックしたかったので、クライアントの起動中に Wireshark スキャンを開始しました。すると、TLS1.2 で非常に興味深いやり取りが見つかりました。失敗した呼び出しでは TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 暗号が使用されていました。クライアントが Hello メッセージ (使用可能な暗号を使用) を正しく送信し、サーバーが使用する暗号で応答し、その後、サーバーが「新しいセッション チケット、暗号仕様の変更」タイプのクエリを送信しているのがわかります。その後、クライアントはそれに応答しないようで、ゲーム クライアントの GUI パーツが一部欠落しています。この問題はその暗号の使用に関連していると確信していますが、確かなことはわかりません。

答え1

ようやく原因が分かりました。CPU ドライバー/チップセットの障害か CPU の障害かを判断する必要がありますが、

Intel 診断ツール スキャンを実行したところ、CPU テストが失敗しました: 診断ツールの障害

そこで、コアに障害があるかどうかをテストするために、「msconfig」を実行して、使用可能な 8 つの CPU コアのうち 4 つを無効にしてみました。

再起動したらどうなったと思いますか? 暗号化メッセージに問題はありません! すべてのアプリを起動でき、すべてのブラウザーですべてのクエリが成功します! CPU は新品で、ソケットに挿入してロックするときには細心の注意を払いました。ベンティラドとサーマルペーストも同様で、確認しましたが、見た目には何も問題はありません :(

非常に壊れやすい部品を返送すると、どのような魔法のトリックが起こるかを知っているので、返品しなくて済むことを心から願っています (受付で言われた言い訳: ピンがいくつかねじれていて、壊してしまいました!)。

答え2

OP とほぼ同じエラーが発生しました。Web サイトが断続的に読み込まれ、SSL エラー コードが異なる場合もありました。Firefox では Chrome に比べて少し詳細なエラーが表示され、エラーは不正な MAC 読み取りと不正な MAC 警告の間で交互に表示されました。

Windows 10 を再インストールし、Wi-Fi の代わりにイーサネット、Windows の代わりに Linux を使用しようとしました。同じエラーです。Intel Diagnostic Tool の CPU テストではエラーは表示されませんでした。

Process Lasso に関するヒントを読んで、試してみようと思いました。CPU (コア) アフィニティのさまざまな組み合わせをテストした後、Web ブラウザーがコア 6 ~ 7 を使用するとエラーが発生することに気付きました。Process Lasso を 1 日使用してから、エラーは 1 つも発生していません。CPU は i7-6700 で、今では約 8 年前の製品なので、日常的な使用ではコアが 2、3 個減っても大した問題ではありません。

エラーは確かにイライラさせられましたが、後から考えてみると、トラブルシューティングして解決するのはかなり楽しかったです ;)

関連情報