松田です。今月のセキュリティ更新プログラムは、もう適用いただけましたか?
ときどき .NET Framework のセキュリティ情報が難しいというご意見を頂きます。特にどのセキュリティ更新プログラムをインストールすればよいか、わかりにくいというものです。下記のような理由があり、確かに複雑です。
- .NET Framework の 3 つのバージョン 2.0、3.0、3.5 に依存関係がある
- OS に既定でインストールされている .NET Framework のバージョンがある
- OS にサービスパックを適用すると .NET Framework のサービスパックが変わる場合がある
- .NET Framework 3.5 に SP1 を適用すると、別途 .NET Framework 2.0 SP2 適用する必要なし(.NET Framework 2.0 SP2 が同時に適用されるため)
今回のブログでは、 .NET Framework のバージョンの整理、およびインストールが必要な 6 月の .NET Framework のセキュリティ更新プログラムについて解説します。
(注:自動更新や Windows Update を使用しているお客様は、特にインストールが必要なセキュリティ更新プログラムを自身で判別する必要はありません。このブログでは、特に .NET Framework のセキュリティ更新プログラムを手動でインストールする必要があるお客様向けに判別方法を解説しています。)
.NET Framework の 3 つのバージョン 2.0、3.0、3.5 の依存関係
まず、.NET Framework のバージョンを整理してみます。.NET Framework には、現在、セキュリティ更新プログラムの対象に .NET Framework 1.1/2.0/3.0/3.5/4.0 の 5 つのバージョンがあり、Windows OS に複数のバージョンをインストールし共存させることができます(注:Windows 7 および Windows Server 2008 R2 では、.NET Framework 1.1 はサポートの対象外です)。.NET Framework 1.1 および 4.0 は独立したコンポーネントです。.NET Framework 2.0/3.0/3.5 の 3 つのバージョンには依存関係があり、下記の図のように .NET Framework 3.5 の中に 3.0 および 2.0 が包括関係になっています。
図 1. .NET Framework の各バージョンの関係
OS に既定でインストールされている .NET Framework のバージョンを整理してみます。
- Windows Vista SP1 には、.NET Framework 2.0 SP1/3.0 SP1 が既定でインストール
- Windows Server 2008 SP1 には、.NET Framework 2.0 SP1 が既定でインストール
- Windows Vista SP2 には、.NET Framework 2.0 SP2/3.0 SP2 が既定でインストール
- Windows Server 2008 SP2 には、.NET Framework 2.0 SP2 が既定でインストール
- Windows 7 には、.NET Framework 3.5.1 (3.5 SP1 相当) が既定でインストール
- Windows Server 2008 R2 には、.NET Framework 2.0 SP2 が既定でインストール
- Windows XP には既定でインストールされている .NET Framework なし
図 2. OS に既定でインストールされている .NET Framework のバージョン
さらに Windows Vista 環境に .NET Framework 3.5 をインストールすると、 .NET Framework 2.0/3.0 が更新されます。Vista のサービスパック、 .NET Framework 3.5 のサービスパックによって、下記 3 種類の環境が存在ます。それぞれの環境で適用するセキュリティ更新プログラムが異なります。特に、Vista SP1 環境と Vista SP2 環境では、同じ .NET Framework のバージョン、サービスパックがインストールされていても、適用するセキュリティ更新プログラムが異なります。ここが、特に注意を払うべき部分です。
図 3. Windows Vista に .NET Framework 3.5 をインストールした場合
インストールが必要な .NET Framework のセキュリティ更新プログラム
2010 年 6 月度の .NET Framework に関連するセキュリティ更新プログラムとして、MS11-039 と MS11-044 が公開されました。それぞれ、異なるファイルを更新するため、両方のセキュリティ更新プログラムを適用する必要があります。また、.NET Framework 3.5 については、セキュリティ更新プログラムよりも優先度が高いため、.NET Framework 3.5 がインストールされていることが前提にセキュリティ情報が記述されています。インストールが必要な .NET Framework の情報は次のマトリクスの通りです。
図 4. .NET Framework セキュリティ更新プログラムマトリクス
(黒):MS10-039 .NET Framework および Silverlight
(青):MS10-044 .NET Framework
この表の見方ですが、例えば、Windows Vista SP1 環境で .NET Framework 3.5 SP1 と .NET Framework 4.0 をインストールしている場合、適用が必要なセキュリティ更新プログラムは、MS11-039 用の KB2478659 と KB2478663、MS11-044 用の KB2518865 と KB2518870 の 4 つとなります。
また、その他の次のような注意点があります。
- KB2478656/KB2530095 についての注意点: Windows XP/2003 用のセキュリティ更新プログラム KB2478656/KB2530095 のパッケージの名称が NDP20SP1-KBxxxxxx-x86.exe のようになっています。一方、セキュリティ情報 MS11-039 や MS11-044 の「影響を受けるソフトウェア」の一覧では、これらパッケージの説明が .NET Framework 3.5 用と書かれています。これは、.NET Framework 2.0 SP1 単体はサポート ライフサイクルが終了しているため、2.0 SP1 の記述が削除された形になっています。そのため、パッケージ名称およびセキュリティ情報とも正しい情報となります。
- KB2518863/KB2518864/KB2518865/KB2518866 についての注意点: MS11-044 のこれら 4 つのパッケージについては、上図 4. のとおり該当環境に適用してください。MS11-044 の「影響を受けるソフトウェアおよび影響を受けないソフトウェア」の表を見ると、これら 4 つのパッケージは一部深刻度が「なし」となっている場合があります。例えば、KB2518864 は、.NET Framework 2.0 SP2 には脆弱性の修正が入っていないため、総合的な深刻度「なし」となっています。しかし、同じパッケージ KB2518864 で Microsoft .NET Framework 3.5 Service Pack 1 の脆弱性の修正を行っているため、KB2518864 は Windows XP SP3 環境に適用いただく必要があります。
(注:自動更新や Windows Update を使ってインストールしているお客様は、適切なセキュリティ更新プログラムが自動的に判別されインストールされます。)
参考情報
インストールされている Microsoft .NET Framework のバージョンおよび Service Pack のレベルを確認する方法
http://support.microsoft.com/kb/318785/ja
.NET Framework のサポート概要
http://msdn.microsoft.com/ja-jp/netframework/cc807061
.NET Framework のバージョンおよび依存関係
http://msdn.microsoft.com/ja-jp/library/bb822049(v=vs.110).aspx
追記事項
2011/6/20 追記:.NET Framework の理解が難しい背景に、「.NET Framework 3.5 に SP1 を適用すると、別途 .NET Framework 2.0 SP2 適用する必要なし」を追記しました。
2011/6/21 追記: 注意事項、参考情報の追記しました。
2013/12/13 追記: Windows Server 2008 および Windows Server 2008 R2 の既定の .NET Framework の記載を変更しました。参考情報に「.NET Framework のバージョンおよび依存関係」を追加しました。