.NET 2026年8月サービス更新 — .NET 10・9・8の脆弱性修正と更新手順
概要
Microsoft は 2026年8月11日、.NET と .NET Framework の月例サービス更新を公開しました。今回の更新では .NET 10.0.11、.NET 9.0.19、.NET 8.0.30 が案内され、.NET 10 / 9 / 8 に関係する複数の CVE への修正が含まれています。1
定例更新は、アプリケーションコードを変更しない場合でも、ランタイム、SDK、ASP.NET Core、Entity Framework Core、コンテナベースイメージのバージョンが分かれて更新されることがあります。したがって、ホスト環境だけでなく、CI、Dockerfile、デプロイ定義、グローバルツール、依存パッケージを一つの変更単位として確認することが大切です。
| 対象ライン | 今回案内されたリリース | 確認すべき範囲 |
|---|---|---|
| .NET 10 | 10.0.11 | ランタイム、SDK、ASP.NET Core、EF Core、コンテナイメージ |
| .NET 9 | 9.0.19 | ランタイム、SDK、ASP.NET Core、EF Core、コンテナイメージ |
| .NET 8 | 8.0.30 | ランタイム、SDK、ASP.NET Core、EF Core、コンテナイメージ |
| .NET Framework | 2026年8月更新 | Windows更新と対象アプリケーションの互換性 |
なぜ「パッチ更新」をプロジェクトとして扱うのか
Microsoft の案内には、.NET 10、9、8 にまたがる CVE 修正が列挙されています。1 脆弱性の影響はアプリケーションの公開方式や利用機能で異なるため、すべてのサービスが同じ優先度になるとは限りません。しかし、稼働中のアプリケーションがどのランタイム・ベースイメージ・ホストで動くかを把握していなければ、影響の有無を判断できません。
更新の目的は「最新版を入れること」ではありません。 どのサービスがどの実行環境に依存しているかを可視化し、修正を適用したうえで、認証・API・バックグラウンドジョブ・データアクセスの回帰を確認することです。
特にコンテナ運用では、アプリケーションの TargetFramework を変更しなくても、FROM mcr.microsoft.com/dotnet/aspnet や sdk イメージのタグを固定しているために古いパッチが残ることがあります。タグの更新、イメージの再ビルド、SBOMや脆弱性スキャンの更新を一連の手順に含めます。
更新前に作るべき棚卸し表
| 確認項目 | 例 | 目的 |
|---|---|---|
| 実行ランタイム | App Service、VM、Kubernetes、コンテナ | 本番で実際に動くバージョンを特定する |
| ビルドSDK | global.json、CIのセットアップ、開発環境 | ビルド再現性と開発・CI差異を防ぐ |
| ベースイメージ | aspnet、runtime、sdk のタグ | コンテナ内の修正適用を確認する |
| フレームワーク依存 | ASP.NET Core、EF Core、NuGetパッケージ | バイナリ互換性と回帰確認の対象を定める |
| デプロイ単位 | サービス名、環境、ロールバック方法 | 段階的な公開と復旧を可能にする |
安全な更新フロー
1. 現在のバージョンを固定して記録する
更新作業を始める前に、dotnet --info、コンテナイメージのダイジェスト、CIで使うSDK、各サービスの TargetFramework を記録します。更新後に問題が起きた場合、変更点を切り分け、必要なら速やかにロールバックできます。
2. 開発・CIを先に更新する
SDKを更新して dotnet restore、dotnet build、dotnet test を実行します。ソースジェネレーター、アナライザー、EF Coreの移行、OpenAPI生成、ネイティブ依存を持つテストは、環境差が現れやすいため重点的に確認します。
3. コンテナを再ビルドし、イメージを検査する
Dockerfile のベースイメージを更新し、キャッシュを利用しない再ビルドも行います。アプリケーションのバージョンとOSパッケージの更新状況を混同しないよう、イメージのダイジェストと脆弱性スキャン結果を保存します。
4. ステージングで回帰を確認する
認証、外部API連携、バックグラウンドジョブ、データベース接続、タイムゾーン、TLS、シリアライゼーションを確認します。ASP.NET Core アプリケーションでは、ルーティング、例外処理、レスポンスヘッダー、最も重要なAPIシナリオを自動テストと監視で確認すると効果的です。
5. 段階公開と監視を行う
一度に全インスタンスを置き換えず、カナリアまたは少数インスタンスから公開します。エラー率、レイテンシ、CPU、GC、メモリ、外部依存の失敗率を更新前のベースラインと比較し、問題があれば直前のイメージへ戻せる状態を維持します。
まとめ
2026年8月の .NET サービス更新は、.NET 10、9、8 のランタイムを利用するチームにとって、脆弱性対応の優先度を再確認する機会です。更新は小さなパッチ番号の変更に見えても、実際にはビルド、コンテナ、デプロイ、監視まで含む運用作業になります。対象を棚卸しし、CI、ステージング、段階公開の順に進めることで、セキュリティと安定運用を両立できます。