CVE-2013-2266 [JP]: 不正に細工された正規表現によってnamedがメモリ不足になる

AA-00881

BIND 9の深刻な欠陥により、攻撃者が、named、およびlibdnsをリンクする他のプラグラムのメモリを過大に消費させることが可能となります。


文書バージョン:        
      2.0
公開日付: 
2013年3月26日
影響を受けるプログラム: 
BIND
影響を受けるバージョン: 
BIND 9.7.x, 9.8.0 から 9.8.5b1, 9.9.0 から 9.9.3b1(いずれも"Unix"版のみ。Windows版は影響を受けない。9.7.0より前のバージョン(9.6-ESVを含む)も影響を受けない。BIND 10も影響を受けない)
深刻度: 
重大(Critical)
攻撃方法: 
遠隔から可能

詳細:

Unix系のオペレーティングシステムでコンパイルされたBIND 9.7, 9.8, および9.9で利用されているライブラリの欠陥により、攻撃者が意図的にnamedプロセスのメモリを過大に消費させることが可能です。また、その結果として、そのサーバのメモリ資源が枯渇させられることもあり得ます。これにより、BIND 9がクラッシュする可能性があり、また、そのマシン上で動作している他のプログラムの実行にも深刻な影響が及ぶと考えられます。

ご注意: BIND 9.7はサポート期限を過ぎており("end of life", EOL)、ISCにおけるテストやセキュリティ修正の対象外です。ただし、本ドキュメントの「一時的な回避策」の節に記載の方法で再コンパイルすることにより、サポート対象である他のバージョンと同様に本脆弱性を防ぐことはできます。

現在サポート対象のバージョンに関する情報は、こちらをご参照ください: http://www.isc.org/software/bind/versions.

本問題についてのその他の情報については、CVE-2013-2266のFAQや、ISCの知識ベースにある補足文書 https://kb.isc.org/article/AA-00879 (英語)をご参照ください。

影響:

本条件を意図的に引き起こすことにより、影響を受けるすべてのバージョン(9.7の全バージョン、9.8.0から9.8.5b1まで、9.9.0から9.9.3b1まで)の権威(authoritative)およびキャッシュ(recursive) BIND 9ネームサーバがサービス不能(DoS)状態となる可能性があります。さらに、システムがメモリ不足になることで、影響を受けるBINDサーバと同じ物理マシン上で動作する他のサービスも被害を受ける可能性があります。

(BIND 9の)libdnsライブラリを利用する他のプログラムも、それらに本脆弱性の条件を引き起こす入力を与えられるようであれば、本問題の影響を受ける可能性があります。たとえnamedを利用していない環境でも、libdnsをリンクするツール類(たとえばdig)も含めて再ビルドもしくはアップグレードする必要があります。

CVSSスコア:  7.8

CVSS評価基準:  (AV:N/AC:L/Au:N/C:N/I:N/A:C)

CVSS (Common Vulnerability Scoring System)についての詳細情報、および個別の環境におけるスコアの算出方法については、以下のリンクをご参照ください: http://nvd.nist.gov/cvss.cfm?calculator&adv&version=2&vector=(AV:N/AC:L/Au:N/C:N/I:N/A:C)

一時的な回避策:

パッチバージョン(下記の「解決策」参照)の他に、影響を受けるバージョンのBIND 9を正規表現サポート抜きでコンパイルすることでも本問題の影響を回避できます。

正規表現サポート抜きでのコンパイル:

BIND 9.7 (全バージョン)、 BIND 9.8 (9.8.0 から 9.8.5b1 まで)、 および BIND 9.9 (9.9.0 から 9.9.3b1 まで) を正規表現サポート抜きでソースコードから再コンパイルすることで本問題の影響を完全に取り除くことができます。方法は以下の通りです:

  • トップレベルのソースディレクトリにある"configure"スクリプトによって必要なBINDの機能を設定した後で、configureスクリプトが生成した"config.h" ヘッダファイルを(エディタ等を用いて)以下のように変更する
  • "#define HAVE_REGEX_H 1"という行を探し、それを"#undef HAVE_REGEX_H"に書き換える
  • "make clean"で以前コンパイルしたファイルをソースディレクトリからすべて消去した上で、通常通りBINDをmakeしてインストールする

攻撃事例:

現状で知られている攻撃事例はありません。

解決策: 

「一時的な回避策」の節に記載の方法で正規表現サポート抜きでBIND 9を再コンパイルするか、もしくは、現在お使いのBINDにもっとも近いパッチバージョンにアップグレードしてください。パッチバージョンは以下からダウンロード可能です: http://www.isc.org/downloads/all.

  • BIND 9 バージョン 9.8.4-P2
  • BIND 9 バージョン 9.9.2-P2

謝辞: 本問題を発見し、ISCに報告してくださったDyn, IncのMatthew Horsfall氏に感謝致します。

改訂履歴(原文):

1.0 2013年3月11日 フェーズ1(事前通知)

1.1 2013年3月25日 フェーズ2/3

2.0 2013年3月26日 一般公開(フェーズ4)

関連ドキュメント:

全セキュリティ脆弱性と影響を受けるバージョンについてはこちらの BIND Security Matrix をご参照ください。

ISCの製品サポートについての情報をご希望の場合はこちらをご参照ください: www.isc.org/support.

さらにご質問がある場合 本勧告に関するご質問はこちらへお送りください: security-officer@isc.org

ご注意:ISCでは、現在サポート対象のバージョン にのみパッチを提供しています。なお、可能な場合には影響を受けるEOLバージョンも明記しています。

ISCの脆弱性公開ポリシー: ISCのセキュリティ勧告に関する最新のポリシーおよび運用についてはこちらのリンクをご参照ください(英語): https://www.isc.org/security-vulnerability-disclosure-policy

英文の知識ベース文書 https://kb.isc.org/article/AA-00871 が完全かつ公式のセキュリティ勧告文書です。

免責事項(Legal Disclaimer): 


(ご注意: この項の内容は英語の原文の参考訳です。より正確な情報が必要な場合は原文をご参照ください。また、原文と訳文の間に意味の違いがある場合は、原文の内容が正式です)

Internet Systems Consortium (ISC)は、本勧告を「現状のまま」提供しています。本勧告ではいかなる種類の保証(warranty or guarantee)についても述べていませんし、そうした保証を黙示してもいません。ISCは本勧告および本勧告が参照する資料に関するいかなる保証についても一切責任を負わないものとします。こうした保証には、商品適合性、特定目的への適合性、隠れた瑕疵の不在、および非侵害についての黙示的保証が含まれますが、これらに限定するものではありません。本勧告および本勧告が参照する資料のご使用は、使用者ご自身の責任においてなされるものとします。ISCは本勧告を(将来の)任意の時点で変更する可能性があります。もし、この文書の独立した複製物や、この文書を言い換えたものに、この文書のURLが含まれていない場合、それは「未管理の複製物」です。未管理の複製物は、重要な情報を欠いていたり、内容が古かったり、事実関係に関する誤りを含んでいたりする可能性があります。