.NETの脆弱性情報まとめ

2026.11.01 22:23 更新 .NET(.NET 8〜11・ASP.NET Core・.NET Framework)とNuGetパッケージ。2026年の公表を中心に、KEVに載った古いものを含む

更新日別の件数直近14日・深刻度別

新規公表と更新直近14日

新規公表 3件 / 更新 30件

深刻度×脆弱性の種類押すと絞り込み

脆弱性の種類緊急高中低未評価
コード実行16–––
サービス停止(DoS)–6–––
認証・認可の回避141––
メモリ破壊–5–––
情報の漏えい–13––
XSS・インジェクション–1–––
その他–31––

.NETの脆弱性は、実行環境(ランタイム・ASP.NET Core)とNuGetパッケージで、確かめる場所も直し方も違います。2026年10月26日(日本時間)の臨時の更新、KEVに載っている古いパッケージ、11月10日に迫る.NET 8・9のサポート終了をまとめ、自分の環境が対象かを確かめる手順を説明します。

このページの要点
  • 10月26日の臨時の更新で、.NETは8.0.33・9.0.22・10.0.14になりました。自己完結型とNativeAOTのアプリは作り直しが必要です。
  • .NET 8と.NET 9のサポートは2026年11月10日に終わります。上げる先は.NET 10です。
  • NuGetパッケージはdotnet list package --vulnerable --include-transitive、実行環境はdotnet --list-runtimesで、別々に確かめます。

01.NETで今確かめたい脆弱性

.NETでは、実行環境(ランタイム・ASP.NET Core)の脆弱性と、NuGetパッケージの脆弱性を分けて確かめます。前者はMicrosoftの月例・臨時の更新で直り、後者はパッケージの版を上げて直します。2026年10月26日(日本時間)には臨時の更新が出ました。[1]

脆弱性・問題主な対象・条件修正・対応詳細
Brotliの展開で範囲外の書き込み
CVE-2026-111497
全OS。ASP.NET Coreのリクエスト展開でbrを使う、HttpClientの自動展開でBrotliかAllを指定する、BrotliStreamなどで信頼できないデータを展開する場合。.NET Frameworkは対象外。8.0.33 / 9.0.22 / 10.0.14。NativeAOTの実行ファイルは作り直しが必要。Microsoftのアドバイザリ[2]
ソケットのメモリ破壊
CVE-2026-70197
Windows。SocketAsyncEventArgsをIPv4とIPv6のUDPソケットで使い回す場合。10月の月例更新では直りきらず、10月26日に修正し直し。8.0.33 / 9.0.22 / 10.0.14。自己完結型のアプリは作り直して配置し直す。Microsoftのアドバイザリ[3]
Blazor WebAssemblyのデバッガーでコード実行
CVE-2026-102870
.NET 10・11。攻撃者が操作できる値を含む式をデバッグ中に評価すると、開発者の端末でコードが動くおそれ。Microsoft.AspNetCore.Components.WebAssembly.Server・.DevServerを10.0.14へ。ランタイムの更新だけでは直らない。Microsoftのアドバイザリ[4]
AjaxPro(Ajax.NET Professional)の逆シリアル化
CVE-2021-23758
AjaxNetProfessional・ajaxpro.2を使うASP.NETアプリ。2026年8月26日にKEVへ追加。GitHub Advisoryの修正版は21.11.29.1(NuGetにあるのは21.12.8.1以降)。KEVは使用の中止か移行も挙げています。GHSA-6r7c-6w96-8pvw[5][6]
.NET Frameworkの情報漏えい
CVE-2024-29059
.NET Framework。ObjRefのURIが漏れ、コード実行につながるとKEVが説明。2025年2月4日にKEVへ追加。2024年1月の更新で修正済み(Microsoftの記載)。MSRCの記載[5][7]
ImageSharpでプロセスが終了
CVE-2026-106113
浮動小数点のTIFFを読み込み、HistogramEqualization()をかける処理。4.1.2以上・3.2.0。3.2.0からビルドにライセンスキーが必要。記事

上の3件(10月)のCVSSはMicrosoftの評価で8.1〜8.8、悪用の成熟度は「未証明(E:U)」です。KEV(2026年10月30日版)に、2026年に公表された.NET本体の脆弱性は載っていません。KEVに載っているのは、AjaxProのような古いパッケージと.NET Frameworkです。[5]

02.NETのサポート期限と更新先

系列種類最新の修正版(10月26日)サポート終了
.NET 10LTS10.0.142028年11月14日
.NET 9STS9.0.222026年11月10日
.NET 8LTS8.0.332026年11月10日
.NET 7以前——終了済み(.NET 6は2024年11月12日)
.NET Framework 4.6.2OSの部品Windows Updateで配布2027年1月12日
.NET Framework 4.7〜4.8.1OSの部品Windows Updateで配布終了日の記載なし(OSのサポートに従う)
.NET Framework 3.5 SP1単独の製品(Windows 10 1809以降)Windows Updateで配布2029年1月9日

日付はMicrosoftの案内の米国太平洋時間です。[8][9].NET 8と.NET 9は同じ日にサポートが終わります。9へ上げても期限は延びないため、上げる先は.NET 10(10.0.14)です。.NET 11は2026年11月1日の時点でRC3(プレリリース)で、11月10日〜13日の.NET Confで公開される予定です。[10]サポート終了後は、上の表のような臨時の更新も届かなくなります。

03NuGetパッケージの脆弱性を確かめるコマンド

NuGetパッケージは、dotnet restoreのたびにNuGet Auditが脆弱性を確かめ、NU1901〜NU1904の警告を出します(.NET 8 SDK 8.0.100以降)。既定では直接参照だけを見ますが、net10.0以降を対象にするプロジェクトでは間接依存も含めて見ます。[11]一覧で確かめるときは次のコマンドを使います。--include-transitiveを付けないと間接依存が出ません。[12]

ターミナル
# .NET 9 SDK以前
dotnet list package --vulnerable --include-transitive

# .NET 10 SDK(名詞が先の形)
dotnet package list --vulnerable --include-transitive
dotnet package list --vulnerable --include-transitive --format json > vuln.json

# 間接依存を持ち込んでいるパッケージをたどる
dotnet nuget why MyApp.csproj AjaxNetProfessional

# 対象の版へ上げる(.NET 10 SDK)
dotnet package update --vulnerable

このコマンドが見るのはプロジェクトが参照するパッケージで、マシンに入っている実行環境の版は別に確かめます。dotnet sdk checkは、入っているSDKとランタイムが最新か、サポート切れかを表示します。[13]

ターミナル
dotnet --list-runtimes
dotnet sdk check

CIでは、NU1903(高)・NU1904(緊急)をWarningsAsErrorsに入れると、該当するパッケージがあるときにビルドを止められます。[11]

04.NETアプリの確認の進め方

  1. lockファイル:RestorePackagesWithLockFileをtrueにするとpackages.lock.jsonに間接依存まで含めた版が残ります。CIでdotnet restore --locked-modeを使うと、記録と違う版になったときに失敗します。[14]
  2. 間接依存の固定:間接依存だけを上げたいときは、上位のパッケージを先に上げ、だめなら修正版を直接参照するか、Directory.Packages.propsの推移的な固定を使います。[11]
  3. 配布の形:サーバーの.NETを更新して直るのは、フレームワーク依存のアプリだけです。自己完結型は作り直して配置し直し、NativeAOTは実行ファイルに組み込まれたBrotliの処理が残るため作り直します。更新の後はアプリを再起動します。[2][3]
  4. コンテナ:イメージのタグが8.0のままでも、古いイメージを使い続けていれば中のランタイムは古いままです。動いているコンテナでdotnet --list-runtimesを実行し、10.0.14などになっているかを見ます。
  5. 配布元の反映:10月28日には、UbuntuのパッケージやAzure App Serviceでまだ10.0.13だという利用者の報告がありました。OSのパッケージやクラウドの実行環境では、反映されたかを版の番号で確かめます。[15]
  6. Linuxのtar.gzでの導入:Microsoftのtar.gzで入れた.NET 8・9のASP.NET Coreは、CVE-2026-114148のため、アドバイザリに沿って入れ直しが必要です。[1]
  7. .NET Framework:NuGet Auditはpackages.configではVisual Studio 2022 17.10以降で動きます。実行環境はWindows Updateの適用状況で確かめます。[11]

05.NETの解説記事

.NET公表 2026-09-15

ImageSharpの脆弱性CVE-2026-106113、細工したTIFFでプロセスが終了するおそれ。3.2.0で要るライセンスキーと、2系・.NET Frameworkの扱い

.NETの画像処理ライブラリImageSharpの脆弱性CVE-2026-106113(GHSA-j3p4-wp97-rph4)は、浮動小数点のTIFFにHistogramEqualizationをかけるとプロセスが終了するおそれがあります。対象の処理の見分け方、修正版4.1.2・3.2.0、3.2.0からビルドに要るライセンスキー、修正版の無い2系の扱いを説明します。

セキュリティ対策サービス一覧AIを悪用した攻撃への対策について、相談、リスクの診断、システムの改修を支援します。必要なものだけを選んで依頼できます。

よくある質問

NuGet Auditの警告が出なければ、.NETの実行環境も対策済みですか?

NuGet Auditが見るのはプロジェクトが参照するパッケージです。Brotliの件(CVE-2026-111497)のようなランタイムの脆弱性は、dotnet --list-runtimesやコンテナの中の版で別に確かめます。

自己完結型で配布しているアプリは、サーバーの.NETを更新すれば直りますか?

直りません。自己完結型はアプリにランタイムが入っているため、修正版のSDKで作り直して配置し直します。NativeAOTの実行ファイルも同じです。

.NET 8のサポートが終わる前に、.NET 9へ上げればよいですか?

.NET 9のサポートも2026年11月10日に終わります。サポートを続けて受けるには、2028年11月14日までの.NET 10へ上げます。

出典・参考資料

  1. Microsoft:.NET October 2026 out-of-band security updates(dotnet/announcements #496)2026-10-26(日本時間) / 臨時の更新の版、対象のCVE、.NET Frameworkは対象外、tar.gzの入れ直し
  2. Microsoft:CVE-2026-111497 .NET Brotli Decoder Out-of-bounds Write(#494)2026-10-26(日本時間) / 対象の機能、修正版、CVSS 3.1 8.1(Microsoft)、回避策、NativeAOTの作り直し
  3. Microsoft:CVE-2026-70197 .NET and Visual Studio Remote Code Execution(#493)2026-10-13公表(米国時間)・10-26再公表(日本時間) / Windowsの条件、修正版、CVSS 3.1 8.1、自己完結型の作り直し
  4. Microsoft:CVE-2026-102870 ASP.NET Core Remote Code Execution(#492)2026-10-13公表(米国時間)・10-26更新(日本時間) / Blazor WebAssemblyのデバッガーのパッケージと修正版、CVSS 3.1 8.8
  5. CISA:Known Exploited Vulnerabilities Catalog(2026.10.30版)2026-10-30 / CVE-2021-23758(2026-08-26追加)とCVE-2024-29059(2025-02-04追加)の掲載、2026年公表の.NET本体のCVEが無いこと
  6. GitHub Advisory Database:GHSA-6r7c-6w96-8pvw2021-12-08収録・2026-02-04更新(日本時間) / AjaxNetProfessionalの対象(21.11.29以下)と修正版21.11.29.1
  7. Microsoft:CVE-2024-29059 .NET Framework Information Disclosure Vulnerability2024-03-22公表・05-08更新 / 2024年1月の更新で修正済みであること、CVSS 3.1 7.5(Microsoft)
  8. Microsoft:.NET and .NET Core Support Policy2026-11-01確認 / 各系列の最新版とサポート終了日
  9. Microsoft Learn:Microsoft .NET Framework(Lifecycle)2026-11-01確認 / .NET Frameworkの各版のサポート終了日、3.5 SP1の扱い
  10. Microsoft:.NET Conf 20262026-11-01確認 / .NET Conf(11月10日〜13日)が.NET 11の公開の催しであること
  11. Microsoft Learn:Auditing package dependencies for security vulnerabilities2026-07-07更新 / NuGet Auditの既定、NuGetAuditModeの既定、警告コード、間接依存の直し方、packages.configの対応
  12. Microsoft Learn:dotnet package list2025-12-17更新 / --vulnerable・--include-transitive・--format json、.NET 10での名詞が先の形
  13. Microsoft Learn:dotnet sdk check2026-06-02更新 / 入っているSDK・ランタイムの更新とサポート切れの表示
  14. Microsoft Learn:NuGet PackageReference in project files(Locking dependencies)2026-08-15更新 / packages.lock.jsonと--locked-mode
  15. dotnet/core #10660:.NET October 2026 out-of-band security updates2026-10-26(日本時間) / 配布の状況表、Ubuntu・App Serviceがまだ10.0.13だという利用者の報告(10月28日)