locked
DNS の再帰的クエリーの送信元ソースポート番号のランダム化 RRS feed

  • 質問

  • こんにちは

    Windows Server 2008 の DNS サーバーについて質問です。

    再帰的クエリーのソースポート番号がランダムになっていないように思われます。

    質問:
     ランダムになっていますでしょうか ?
     ランダムになっている場合、'Cross-Pollination Check (iana) でランダムではないと判断される理由はありますでしょうか。

    実施したテスト:
     テスト1. インターネット上に DNS サーバーを設置し、iana の 'Cross-Pollination Check' にて評価しました。
      結果 = Is recursive, without source port randomisation
     テスト2. イントラネット上に DNS サーバーを設置し、nslookup にて評価し、Network Monitor 3.3 にてパケットをキャプチャしました。
      結果 = 同じポート番号を使っていました。

    同様の評価を、Windows Server 2003 の DNS にて実施したところ、ランダムであることを確認しました。

    以上です。

    参考:
     「DNSキャッシュポイズニング対策」 (IPA)
     http://www.ipa.go.jp/security/vuln/DNS_security.html

    よろしくお願いいたします。


    MVP for SQL Server / PASSJ board / COZAX Co, Ltd.
    2009年8月21日 9:11

回答

  • こんばんは、北川です。


    既に確認済みであればご容赦くださいませ。
    まずは環境から確認させてください。

    NetMon で確認したところ、ポート番号が変更されていないとのことでしたので、修正プログラムが適用されていない可能性がございます。
    Windows Server 2008 と Windows Server 2003 で違いをご確認いただきたいのですが、MS08-037 の適用状態をご確認いただけますでしょうか?

    DNS の脆弱性により、なりすましが行われる (953230)
    <http://www.microsoft.com/japan/technet/security/bulletin/ms08-037.mspx>


    Windows Server 2008 では、KB951746 の修正プログラムが適用されていないのであれば、以下を適用いただいてから、再度確認してみてください。
    <http://www.microsoft.com/downloads/details.aspx?familyid=1fcea8f4-b233-42e1-b913-c4fcae276c7b&displaylang=ja>

    質問の意図と異なる回答であれば、ご容赦ください。


    よろしくお願いいたします。

    2009年8月21日 11:51
  • こんにちは


    解決できてよかったです。
    SP2 には MS08-037 は含まれています。

    この確認方法については、分かりにくいかも知れません。
    まず、KB953230 は MS08-037 に関する KB 番号です。
    扱いとしては MS08-037 Top の KB 番号です。

    今回の DNS Server の修正はこの 953230 をご確認いただくと、表の項目に「DNS サーバー (KB951746)」が確認できると思います。
    この KB951746 が SP2 に含まれているかを確認する KB 番号です。
    (DNS Server と DNS Client で修正プログラムが異なるのが、このような記載になる理由の一つでもあります。)


    先に記載した、以下の文章は上記を踏まえて記載させていただいた次第です。
    ------------------------------------------------------------
    Windows Server 2008 では、KB951746 の修正プログラムが適用されていないのであれば、以下を適用いただいてから、再度確認してみてください。
    http://www.microsoft.com/downloads/details.aspx?familyid=1fcea8f4-b233-42e1-b913-c4fcae276c7b&displaylang=ja
    ------------------------------------------------------------


    あとは、いつも通り KB951746 が SP2 に含まれているのかを確認してください。
    以下のリンクから確認できます。
    http://go.microsoft.com/fwlink/?LinkId=143706

    以下のように含まれていることを確認できます。
    ---------------------------------------------------------------------
    951746 MS08-037: Description of the security update for DNS in Windows Server 2008, in Windows Server 2003, and in Windows 2000 Server (DNS server-side): July 8, 2008 Security Server Technologies http://support.microsoft.com/kb/951746  

    ---------------------------------------------------------------------

    先の回答では、説明が舌足らずでしたね。。
    失礼しました。
    2009年8月21日 22:30
  • こんにちは、北川です。

    KB への要望をいただきまして、ありがとうございます。

    http://support.microsoft.com/kb/953230/en-us を確認しますと、以下の様になっていますね。
    2003 では、KB 記載時に、SP が出ていた為、以下の記載になっていますが、2008 では SP2 がリリースされていなかった為、製品名だけになっていますね。





    Microsoft Windows Server 2003 Service Pack 1, when used with:
      Microsoft Windows Server 2003, Standard Edition (32-bit x86)
      Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
      Microsoft Windows Server 2003, Web Edition
      Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
      Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
      Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems

    ~ 中略 ~

    Microsoft Windows Server 2003 Service Pack 2, when used with:
      Microsoft Windows Server 2003, Standard Edition (32-bit x86)
      Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
      Microsoft Windows Server 2003, Web Edition
      Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)

    Windows Server 2008 for Itanium-Based Systems
    Windows Server 2008 Datacenter
    Windows Server 2008 Enterprise
    Windows Server 2008 Standard
    Windows Web Server 2008




    頂戴いたしましたご意見を参考に、今後の改善に努めてまいります。
    ありがとうございました。

    今後とも、よろしくお願いいたします。

    2009年8月24日 5:34

すべての返信

  • こんばんは、北川です。


    既に確認済みであればご容赦くださいませ。
    まずは環境から確認させてください。

    NetMon で確認したところ、ポート番号が変更されていないとのことでしたので、修正プログラムが適用されていない可能性がございます。
    Windows Server 2008 と Windows Server 2003 で違いをご確認いただきたいのですが、MS08-037 の適用状態をご確認いただけますでしょうか?

    DNS の脆弱性により、なりすましが行われる (953230)
    <http://www.microsoft.com/japan/technet/security/bulletin/ms08-037.mspx>


    Windows Server 2008 では、KB951746 の修正プログラムが適用されていないのであれば、以下を適用いただいてから、再度確認してみてください。
    <http://www.microsoft.com/downloads/details.aspx?familyid=1fcea8f4-b233-42e1-b913-c4fcae276c7b&displaylang=ja>

    質問の意図と異なる回答であれば、ご容赦ください。


    よろしくお願いいたします。

    2009年8月21日 11:51
  • MS08-037 について、ありがとうございます。

    Windows Server 2008 SP2 のテスト環境を再度構築して、テストしなおしたところ、
    ポート番号がランダムに発生していました。

    テスト方法:

    1.Network Monitor 3.3 を起動
    2.Capture Filter を設定し、Apply
     値: DNS and Property.Source == "xxx.xxx.xxx.xxx" and SourcePort != 53 AND DestinationPort == 53
      xxx.xxx.xxx.xxx には、DNS サーバーの IP アドレスを指定
    3.Frame Summary の Windows にて、ショートカットメニュー"Choose Columns ..." を選択し、
     Source Port, Destination Port を Add.
    4.Start ボタンをクリック
    5.Cross-Pollination Check からテストを実施。
     Destination *.dns-oarc.net への問い合わせの Source Port が順番になっいてないことを確認。

    ネットワーク上位のルータ、またはスイッチの設定を確認したいと思います。

    ※なお、Windows Server 2008 SP2 に, 修正プログラム 953230 が含まれているのか、明示的な情報が見つかりませんでした。
     MS08-037 の Web ページには、SP2 に含まれているかどうかの情報がないと思われます。
     "影響を受けるソフトウェアおよび影響を受けないソフトウェア" には、Windows Server 2008 とのみあり、どのサービスパックが対象であるのかがわかりません。
     また、"Windows Server 2008 SP2 および Windows Vista SP2 の修正プログラムの一覧" でも、MS08-037 の文字はありますが、953230 の文字はありませんでした。

    以上です。
    よろしくお願いいたします。


    MVP for SQL Server / PASSJ board / COZAX Co, Ltd.
    2009年8月21日 17:15
  • こんにちは


    解決できてよかったです。
    SP2 には MS08-037 は含まれています。

    この確認方法については、分かりにくいかも知れません。
    まず、KB953230 は MS08-037 に関する KB 番号です。
    扱いとしては MS08-037 Top の KB 番号です。

    今回の DNS Server の修正はこの 953230 をご確認いただくと、表の項目に「DNS サーバー (KB951746)」が確認できると思います。
    この KB951746 が SP2 に含まれているかを確認する KB 番号です。
    (DNS Server と DNS Client で修正プログラムが異なるのが、このような記載になる理由の一つでもあります。)


    先に記載した、以下の文章は上記を踏まえて記載させていただいた次第です。
    ------------------------------------------------------------
    Windows Server 2008 では、KB951746 の修正プログラムが適用されていないのであれば、以下を適用いただいてから、再度確認してみてください。
    http://www.microsoft.com/downloads/details.aspx?familyid=1fcea8f4-b233-42e1-b913-c4fcae276c7b&displaylang=ja
    ------------------------------------------------------------


    あとは、いつも通り KB951746 が SP2 に含まれているのかを確認してください。
    以下のリンクから確認できます。
    http://go.microsoft.com/fwlink/?LinkId=143706

    以下のように含まれていることを確認できます。
    ---------------------------------------------------------------------
    951746 MS08-037: Description of the security update for DNS in Windows Server 2008, in Windows Server 2003, and in Windows 2000 Server (DNS server-side): July 8, 2008 Security Server Technologies http://support.microsoft.com/kb/951746  

    ---------------------------------------------------------------------

    先の回答では、説明が舌足らずでしたね。。
    失礼しました。
    2009年8月21日 22:30
  • Additional です。

    以下の KB に既知の問題が記載されていますので、ご確認いただければと思います。
    http://support.microsoft.com/kb/953230/ja

    2008 では短命ポート番号の変更が行われているので、あまり影響を受けませんが、
    2003 では影響を受ける可能性があるので注意してください。
    これは ReservedPorts を設定することで回避できます。
    自動でこれを設定する修正プログラムも公開されていますので、併せてご確認ください。


    あと、NetMon で確認するのが確実ですが、簡単な確認方法をお知らせします。
    953230 にも記載がある通り、DNS Server がポートをランダム化するのに 2500 ほどポートを使います。
    これは DNS Server 側の待ち受けポートとしてリッスンしていますので、netstat で確認できます。

    netstat -abno

    上記コマンドを DNS Server で実行してみてください。
    プロセス dns.exe でリッスンしているポート番号が MS08-037 適用前と比べ格段に増えているのが確認できると思います。
    一度、netstat も確認してみてください。
    2009年8月21日 23:24
  • 北川隆介様、ありがとうございます。

    Windows Server 2008 SP2 に、KB951746 が含まれていることを確認しました。
    MS08-037, MS09-008,SocketPoolSize  についても、読みなおしました。

    残作業:
     Cross-Pollination Check にて、without source port randomisation と結果がでる原因の調査

    IPA 様が公開されている DNS セキュリティの情報でも、Cross-Pollination Check がチェック方法として紹介されており、顧客からもこの原因の調査を求められています。

    また、サポート情報について、要望を述べさせていただきます。

    サポート情報への要望:

     1.セキュリティ情報/サポート情報に、該当する SP を明記してほしい。
      SP0, SP1 など、明記していただくことにより、より簡単に情報を取得することができます。
      現在は、SP2 の修正一覧から、含まれているかどうかを確認する必要があります。

     2.セキュリティ情報/サポート情報に、修正した SP を明記してほしい。
      修正プログラムを含む SP を明記していただくことにより、対策が容易になります。
      現在は、SP2 の修正一覧から、含まれているかどうかを確認する必要があります。

     3.送信元ランダム化が行われていることを確認するツールを提供してほしい。
      DNS サーバーが適切に設定されていることを確認するツールを提供していただくことにより、
      安心して DNS サーバーを設置、設定することができます。
     
    以上です。


    MVP for SQL Server / PASSJ board / COZAX Co, Ltd.
    2009年8月24日 2:13
  • こんにちは、北川です。

    KB への要望をいただきまして、ありがとうございます。

    http://support.microsoft.com/kb/953230/en-us を確認しますと、以下の様になっていますね。
    2003 では、KB 記載時に、SP が出ていた為、以下の記載になっていますが、2008 では SP2 がリリースされていなかった為、製品名だけになっていますね。





    Microsoft Windows Server 2003 Service Pack 1, when used with:
      Microsoft Windows Server 2003, Standard Edition (32-bit x86)
      Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
      Microsoft Windows Server 2003, Web Edition
      Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
      Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
      Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems

    ~ 中略 ~

    Microsoft Windows Server 2003 Service Pack 2, when used with:
      Microsoft Windows Server 2003, Standard Edition (32-bit x86)
      Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
      Microsoft Windows Server 2003, Web Edition
      Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)

    Windows Server 2008 for Itanium-Based Systems
    Windows Server 2008 Datacenter
    Windows Server 2008 Enterprise
    Windows Server 2008 Standard
    Windows Web Server 2008




    頂戴いたしましたご意見を参考に、今後の改善に努めてまいります。
    ありがとうございました。

    今後とも、よろしくお願いいたします。

    2009年8月24日 5:34