ISA Server 2006 NAT を介してを渡される DNS クエリがランダム ソース ポートを使用しない

現象

Microsoft Internet Security and Acceleration (ISA) Server 2006 をネットワーク アドレス変換 (NAT) ゲートウェイとして使用し、内部クライアントが ISA Server 2006 を経由してドメイン ネーム システム (DNS) クエリを送信するとします。
この場合、クライアントにセキュリティ更新プログラム 953230 (MS08-037) をインストールした後、ISA Server 2006 NAT を介してを渡される DNS クエリはランダム ソース ポートを使用しません。

原因

この問題が発生するのは、NAT ベースのファイアウォールが、内部クライアントで使用されるソース ポートを変更する場合があるためです。
関連情報を参照するには、以下のサポート技術情報番号をクリックしてください。

956190 セキュリティ更新プログラム 953230 (MS08-037) のインストール後、ファイアウォールを経由して送信される DNS クエリにランダム ソース ポートは使用されない

解決方法

この問題を解決するには、以下の手順を実行します。
  1. Microsoft ダウンロード センターから入手可能な ISA Server 2006 の更新プログラムを適用します。: この更新プログラムをインストールした後、ISA Server は一連のランダムな UDP ポートを割り当て、続いて ISA Server はこの一連のポートから 1 つのポートを選択し、発信 UDP セッションで使用します。
  2. ISA Server を実行中のコンピューターを再起動します。

回避策

この問題を回避するには、以下のサポート技術情報の資料に記載されている方法を実行します。

956190 セキュリティ更新プログラム 953230 (MS08-037) のインストール後、ファイアウォールを経由して送信される DNS クエリにランダム ソース ポートは使用されない

状況

マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。

詳細

ソケット プールのサイズを変更する方法

更新プログラムをインストールした後、レジストリを変更すると、起動時に ISA Server によりビルドされるソケット プールのサイズを構成することができます。

Fix it で解決する

自動的にソケット プールのサイズを大きくするには、[この問題を解決する] リンクをクリックします。続いて [ファイルのダウンロード] ダイアログ ボックスで [実行] をクリックし、このウィザードの手順に従います。


: このウィザードは英語版のみである場合がありますが、自動的な解決は英語版以外の Windows でも機能します。

: 操作しているコンピューターに問題がない場合、自動的な解決をフラッシュ ドライブまたは CD に保存して、問題のあるコンピューターで実行することができます。


自分で解決する

重要: このセクション、方法、またはタスクには、レジストリの変更方法が記載されています。レジストリを誤って変更すると、深刻な問題が発生することがあります。レジストリを変更する際には十分に注意してください。万一に備えて、編集の前にレジストリをバックアップしてください。問題が発生した場合でも、レジストリを復元できます。レジストリのバックアップ方法および復元方法の詳細を参照するには、以下のサポート技術情報番号をクリックしてください。
322756 Windows でレジストリをバックアップおよび復元する方法
自分でソケット プールのサイズを大きくするには、次の手順を実行します。
  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。「regedit」と入力し、[OK] をクリックします。
  2. 次のレジストリ キーを見つけて右クリックします。
    HKLM\System\CurrentControlSet\Services\Fweng\Parameters
  3. [新規] をポイントし、[DWORD 値] をクリックします。
  4. ReservedPortThreshold」と入力します。
  5. [ReservedPortThreshold] をダブルクリックして、[値のデータ] ボックスに数値を入力し、ソケット プールのサイズを設定します。
  6. ISA Server を実行中のコンピューターを再起動します。
: ReservedPortThreshold エントリの値の範囲は 1 ~ 1250 です。この値は、起動時に割り当てられ処理中に必要なポート数の半分を定義します。このエントリが存在しない場合、ISA Server では値は 50 であると見なされます。この値を 1250 よりも低い値に変更すると、プール内でのソース ポートの利用状況を予測しやすくなるため、推奨されません。

このレジストリ エントリを推奨値に設定するには、コマンド プロンプトで次のコマンドを実行します。
reg add HKLM\SYSTEM\CurrentControlSet\Services\Fweng\Parameters /v ReservedPortThreshold /t REG_DWORD /d 1250 /f

この更新プログラムを無効にする方法

この更新プログラムをインストールした後に問題が発生した場合は、この更新プログラムを無効にすることができます。

Fix it で解決する

この更新プログラムを自動的に無効にするには、[この問題を解決する] リンクをクリックします。続いて [ファイルのダウンロード] ダイアログ ボックスで [実行] をクリックし、このウィザードの手順に従います。


: このウィザードは英語版のみである場合がありますが、自動的な解決は英語版以外の Windows でも機能します。

: 操作しているコンピューターに問題がない場合、自動的な解決をフラッシュ ドライブまたは CD に保存して、問題のあるコンピューターで実行することができます。


自分で解決する

この更新プログラムを自分で無効にするには、次の手順を実行します。
  1. 次のスクリプトを KB956570.vbs という名前で保存します。
    '-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
    '
    ' This code is Copyright (c) 2008 Microsoft Corporation.
    '
    ' All rights reserved.
    '
    ' THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
    ' ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
    ' THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
    ' PARTICULAR PURPOSE.
    '
    ' IN NO EVENT SHALL MICROSOFT AND/OR ITS RESPECTIVE SUPPLIERS BE
    ' LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
    ' DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
    ' WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
    ' ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
    ' OF THIS CODE OR INFORMATION.
    '
    '-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"
    Const SE_VPS_NAME = "BindRandomizationCount"
    Const SE_VPS_VALUE = 0

    Sub SetValue()

    ' Create the root object.
    Dim root ' The FPCLib.FPC root object
    Set root = CreateObject("FPC.Root")

    'Declare the other objects needed.
    Dim array ' An FPCArray object
    Dim VendorSets ' An FPCVendorParametersSets collection
    Dim VendorSet ' An FPCVendorParametersSet object

    ' Get references to the array object
    ' and the network rules collection.
    Set array = root.GetContainingArray
    Set VendorSets = array.VendorParametersSets

    On Error Resume Next
    Set VendorSet = VendorSets.Item( SE_VPS_GUID )

    If Err.Number <> 0 Then
    Err.Clear

    ' Add the item
    Set VendorSet = VendorSets.Add( SE_VPS_GUID )
    CheckError
    WScript.Echo "New VendorSet added..." & VendorSet.Name

    Else
    WScript.Echo "Existing VendorSet found... value- " & VendorSet.Value(SE_VPS_NAME)
    End If

    if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then

    Err.Clear
    VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE

    If Err.Number <> 0 Then
    CheckError
    Else
    VendorSets.Save false, true
    CheckError

    If Err.Number = 0 Then
    WScript.Echo "Done with " & SE_VPS_NAME & ", saved!"
    End If
    End If
    Else
    WScript.Echo "Done with " & SE_VPS_NAME & ", no change!"
    End If

    End Sub

    Sub CheckError()

    If Err.Number <> 0 Then
    WScript.Echo "An error occurred:0x" & Hex(Err.Number) & " " & Err.Description
    Err.Clear
    End If

    End Sub

    SetValue
  2. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。「cmd」と入力し、[OK] をクリックします。
  3. コマンド プロンプトで以下のコマンドを入力し、Enter キーを押します。
    cscript KB956570.vbs
  4. ISA Server を実行中のコンピューターを再起動します。

関連情報

この問題の詳細を参照するには、次のマイクロソフト Web サイトをクリックしてください。更新プログラム MS08-037 の関連情報を参照するには、以下のサポート技術情報番号をクリックしてください。

953230 [MS08-037] DNS の脆弱性により、なりすましが行われる

ソフトウェア更新プログラムに関する用語の関連情報を参照するには、以下のサポート技術情報番号をクリックしてください。
824684 マイクロソフトのソフトウェアの更新で使用される一般的な用語の説明
プロパティ

文書番号:956570 - 最終更新日: 2010/10/06 - リビジョン: 1

フィードバック