Microsoftが、ASP.NET Coreのアップデートで重大なセキュリティ欠陥に対する緊急パッチを発行

パッチだけでは不十分です。不安全なライブラリを組み込むアプリケーションは再構築が必要であり、影響を受けたトークンとクッキーは失効させる必要があります。

Microsoftが、先週のASP.NET Coreアップデートで意図せずにウェブフレームワークのデータ保護ライブラリに重大なセキュリティ欠陥が導入されたことを明かした後、開発者はアプリケーションを確認するよう勧告されています。

Microsoftはこの問題を「リグレッション」と説明しています。これは、以前に正しく機能していたものが壊れてしまうアップデートを指すコーディング用語です。

この場合、導入されたのはCVSS 9.1レーティングの重大な脆弱性であり、CVE-2026-40372として識別されています。これはNuGetパッケージマネージャーを通じて配布されるASP.NETのコアデータ保護アプリケーションライブラリに影響します。Linuxおよび macOS、その他のWindowsではないOSに加え、開発者が明示的にUseCustomCryptographicAlgorithms APIを介してマネージドアルゴリズムにオプトインしたWindowsシステムに影響します。

4月14日のパッチチューズデーアップデートの一部としてリリースされた.NET 10.0.6パッケージのバグにより、ManagedAuthenticatedEncryptorライブラリは、ハッシュベースのメッセージ認証コード(HMAC)の検証タグを誤ったオフセットを使用して計算します。

セキュリティハッシュの計算が不正であると、.AspNetCoreアプリケーションのクッキーとトークンが検証され、信頼されてしまい、そうであってはなりません。

「このような場合、破損した検証により、攻撃者はDataProtectionの真正性チェックに合格するペイロードを偽造し、認証クッキー、アンチフォージェリトークン、TempData、OIDCステートなどの以前に保護されたペイロードを復号化することが可能になります」とMicrosoftの GitHub advisoryは述べています。

アプリケーションに組み込まれると、これらの長寿命のトークンは攻撃者がすぐに悪用するような権限を与えます。「攻撃者が脆弱な期間中に偽造されたペイロードを使用して特権ユーザーとして認証された場合、攻撃者は正当に署名されたトークン(セッションリフレッシュ、APIキー、パスワードリセットリンクなど)をアプリケーションに発行させる可能性があります」と本advisory は述べています。

この脆弱性は、ASP.NETが過去最悪の欠陥の1つを経験してからわずか6ヶ月後に現れました。10月のCVSS 9.9レーティングのCVE-2025-55315はKestrelウェブサーバーコンポーネントのものです。しかし、やや懸念すべきことに、現在のadvisoryはMS10-070とこの問題を比較し続けています。これはCVE-2010-3332の緊急パッチで、Windows ASP.NETが暗号化エラーを処理する方法での悪名高いゼロデイ脆弱性であり、2010年にはパニックを引き起こしました。

単純なアップデートではありません

通常、欠陥が発見された場合、手順はアップデート、ワークアラウンド、または軽減策の適用のみを伴います。この場合、アップデート自体はサーバービルド用に既に自動的に行われているはずで、ランタイムをパッチされたバージョン10.0.7にしています。

ただし、人気のあるDockerコンテナプラットフォームを使用する開発者にとっては、状況はより複雑になります。これらのプロジェクトでは、データ保護ライブラリも構築されたアプリケーションに組み込まれています。これに対処するには、4月14日のアップデート後に作成されたASP.NET Coreアプリケーションを更新して再構築する必要があります。

さらに、Windowsを含む古いオペレーティングシステムとの互換性のために、欠陥のあるNuGetパッケージからnetstandard2.0またはnet462ターゲットフレームワークアセットで10.0.xを使用している者も影響を受けます。

影響を受けたバイナリの検出

開発者は脆弱なバイナリがロードされたことをどのように知るのでしょうか?Microsoftのセキュリティアドバイザリは以下のアドバイスを提供しています:

「アプリケーションログをチェックしてください。最も明白な症状は、10.0.6にアップグレードした後にユーザーがログアウトされ、ログに繰り返されるペイロードが無効でしたエラーが見られることです。プロジェクトファイルをチェックしてください。.csprojファイル内でMicrosoft.AspNetCore.DataProtectionバージョン10.0.6へのPackageReference(またはそれに依存するパッケージ)を探します。dotnet list packageを実行して、解決されたパッケージバージョンを確認することもできます。」

まとめると、開発者は影響を受けたアプリケーションを再構築して修正バージョンを適用し、影響を受けたすべての認証クッキーとトークンを期限切れにして偽造を削除し、新しいASP.NET Core データ保護トークンを適用するために回転させるべきです。

この問題が攻撃者によって悪用されたという証拠はありませんが、適切なセキュリティ衛生は予期しないまたは異常なログイン失敗、エラー、認証失敗もチェックすることを求めています。Microsoftが勧告しました。

翻訳元: https://www.csoonline.com/article/4162178/microsoft-issues-out-of-band-patch-for-critical-security-flaw-in-update-to-asp-net-core.html

ソース: csoonline.com