FreeBSD セキュリティ勧告 日本語版 ============================================================================= FreeBSD-SA-02:43.bind (2002-11-15) * multiple vulnerabilities in BIND [REVISED] ============================================================================= このメールは, announce-jp に流れた Subject: ANNOUNCE: FreeBSD Security Advisory FreeBSD-SA-02:43.bind [REVISED] From: FreeBSD Security Advisories Date: Fri, 15 Nov 2002 05:51:55 -0800 Message-Id: <200211151351.gAFDptcf008675@freefall.freebsd.org> X-Sequence: announce-jp 1072 を日本語訳したものです。 原文は PGP 署名されていますが、この日本語訳は PGP 署名されていません。 修正パッチ等の内容が改ざんされていないことを確認するために PGP 署名の チェックを行なうには、原文を参照してください。 日本語訳およびミラーサイト利用の詳細については、文末の「A. FreeBSD セキュリティ勧告 日本語版について」をご覧ください。 [翻訳者: 佐藤 広生 ] --(ここから) ============================================================================= FreeBSD-SA-02:43.bind Security Advisory The FreeBSD Project トピック: BIND におけるセキュリティ上の弱点 (multiple vulnerabilities in BIND [REVISED]) 分類: core モジュール: bind 告知日: 2002-11-15 クレジット: ISS X-Force 影響範囲: すべての FreeBSD リリース 修正日: 2002-11-14 05:15:15 UTC (RELENG_4) 2002-11-14 02:05:57 UTC (RELENG_4_7) 2002-11-14 03:18:41 UTC (RELENG_4_6) 2002-11-14 04:05:12 UTC (RELENG_4_5) 2002-11-14 05:11:57 UTC (RELENG_4_4) FreeBSD に固有か: NO 0. 改訂履歴 - Revision History v1.0 2002-11-14 初版公開 v1.1 2002-11-15 修正パッチ適用手順の改訂。回避方法に注記を追加。 CVE 参考資料の追加。 I. 背景 - Background BIND8 はドメインネームシステム (DNS) プロトコル実装の 1 つです。 II. 問題の詳細 - Problem Description ISS X-Force により、BIND 8 に存在するいくつかの弱点が公開されました。 この勧告では、ISS がそれぞれの弱点に命名した名前を使います。 1 つ目は、内部キャッシュから SIG 資源レコード (SIG RR) を含んだ DNS 応答を生成するコードにおけるバッファオーバフロー問題(「BIND SIG Cached RR Overflow Vulnerability」) であり、2 つ目は、 パケット長の大きい EDNS 問い合わせ (OPT RR を含むもの) に対する 応答を構築するコードにおけるバグです。このバグは計算値に誤りを 生じさせ、コード中の assert チェックを失敗させます (「BIND OPT DoS」)。 3 つ目の弱点は SIG RR の有効期限チェックにおいて、無効なポインタへの 参照が発生する可能性があるという問題です(「BIND SIG Expiry Time DoS」)。 III. 影響範囲 - Impact BIND SIG Cached RR Overflow Vulnerability: リモートの攻撃者は、再帰的問い合わせが有効になっているネームサーバを 悪用し、ネームサーバのプロセスの権限で任意のコードを実行できる 可能性があります。 BIND OPT DoS and BIND SIG Expiry Time DoS: リモートの攻撃者は、ネームサーバのプロセスをクラッシュさせる ことができる可能性があります。 IV. 回避方法 - Workaround BIND 9 には、これらの弱点が存在しません。もし可能なら、BIND 9 への アップグレードをおすすめします。BIND9 は FreeBSD Ports Collection に 含まれています (ports/net/bind9)。bind9 port には、移行の際の注意点を まとめた文書 /usr/local/share/doc/bind9/misc/migration が添付されています。 再帰的問い合わせを無効にすれば、ネームサーバは「BIND SIG Cached RR Overflow Vulnerability」および「BIND SIG Expiry Time DoS」の影響を 受けなくなります。再帰的問い合わせを無効にするには、たとえば 次のようにして BIND 8 設定ファイル (デフォルトでは /etc/namedb/named.conf) に 「recursion no;」「fetch-glue no;」というオプション文を追加します。 options { recursion no; fetch-glue no; /* ... その他のオプション ... */ }; 設定ファイルを編集したら、ネームサーバを再起動してください。 注意: この回避方法は、ネームサーバが権威を持っている場合にのみ 効果があります。キャッシュネームサーバの場合に再帰問い合わせを 無効にすると、正しく動作しなくなります。 (「allow-recursion」指示子を用いて) 再帰的問い合わせを組織内だけに 制限すると、弱点を取り除くことはできませんが悪用を困難にすることが可能です。 このような再帰的問い合わせの制限することは、一般的におすすめです。 再帰的問い合わせを制限するには、BIND 8 設定ファイルに「allow-recursion」文を 追加して、組織に対応するアドレスリストを設定します。 options { allow-recursion { 10.0.0.0/8; }; /* ... その他のオプション ... */ }; BIND 8 を (スーパユーザではなく) 高い権限を持たないユーザで実行すれば、 「BIND SIG Cached RR Overflow Vulnerability」によってネームサーバが 悪用された場合の影響を軽減することができるかも知れません。このように 高い権限を持たないユーザで実行することは、一般的におすすめです。 また、BIND 8 を chroot 環境で実行することも影響を小さくするのに有効な 方法であり、こちらもおすすめです。 V. 解決策 - Solution 次のいずれかに従ってください。 1) 弱点を持った FreeBSD システムを最新の 4.7-RELEASE、もしくは 4.7-STABLE に アップグレードする。あるいは、修正日以降の RELENG_4_7、RELENG_4_6、RELENG_4_5、 RELENG_4_4 セキュリティブランチ (4.7-RELEASE-p2, 4.6.2-RELEASE-p5, 4.5-RELEASE-p23, 4.4-RELEASE-p30) のいずれかにアップグレードする。 2) 現在のシステムに修正パッチを適用する。 以下の修正パッチは、FreeBSD 4.4、FreeBSD 4.5、FreeBSD 4.6、 FreeBSD 4.7 の各システムに適用可能なことが確認されているものです。 a) 以下の場所から修正パッチをダウンロードし、PGP ユーティリティを使って PGP 署名を確認します。 # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:43/bind.patch # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:43/bind.patch.asc b) root 権限で次のコマンドを実行します。 # cd /usr/src # patch < /path/to/patch # cd /usr/src/lib/libbind # make depend && make # cd /usr/src/lib/libisc # make depend && make # cd /usr/src/usr.sbin/named # make depend && make && make install # cd /usr/src/libexec/named-xfer # make depend && make && make install (訳注: /path/to/patch の部分は修正パッチのパス名に置き換えてください) 修正パッチの適用後やシステムのアップグレード後には、named を再起動する 必要があります。それには、root 権限で次のコマンドを実行してください。 # ndc restart VI. 修正の詳細 - Correction details FreeBSD において今回修正された各ファイルのリビジョン番号は、以下のとおりです。 パス名 リビジョン ブランチ - ------------------------------------------------------------------------- src/contrib/bind/CHANGES RELENG_4 1.1.1.7.2.8 RELENG_4_7 1.1.1.7.2.7.2.1 RELENG_4_6 1.1.1.7.2.6.2.2 RELENG_4_5 1.1.1.7.2.4.4.2 RELENG_4_4 1.1.1.7.2.4.2.2 src/contrib/bind/bin/named/db_defs.h RELENG_4 1.1.1.2.2.6 RELENG_4_7 1.1.1.2.2.5.2.1 RELENG_4_6 1.1.1.2.2.4.2.2 RELENG_4_5 1.1.1.2.2.3.4.2 RELENG_4_4 1.1.1.2.2.3.2.2 src/contrib/bind/bin/named/db_sec.c RELENG_4 1.1.1.1.4.4 RELENG_4_7 1.1.1.1.4.3.4.1 RELENG_4_6 1.1.1.1.4.3.2.1 RELENG_4_5 1.1.1.1.4.2.6.2 RELENG_4_4 1.1.1.1.4.2.4.2 src/contrib/bind/bin/named/ns_defs.h RELENG_4 1.1.1.3.2.7 RELENG_4_7 1.1.1.3.2.6.2.1 RELENG_4_6 1.1.1.3.2.5.2.2 RELENG_4_5 1.1.1.3.2.3.4.2 RELENG_4_4 1.1.1.3.2.3.2.2 src/contrib/bind/bin/named/ns_ncache.c RELENG_4 1.1.1.2.2.3 RELENG_4_7 1.1.1.2.2.2.4.1 RELENG_4_6 1.1.1.2.2.2.2.1 RELENG_4_5 1.1.1.2.2.1.6.2 RELENG_4_4 1.1.1.2.2.1.4.2 src/contrib/bind/bin/named/ns_req.c RELENG_4 1.1.1.2.2.11 RELENG_4_7 1.1.1.2.2.10.2.1 RELENG_4_6 1.1.1.2.2.9.2.2 RELENG_4_5 1.1.1.2.2.7.4.2 RELENG_4_4 1.1.1.2.2.7.2.2 src/contrib/bind/bin/named/ns_resp.c RELENG_4 1.1.1.2.2.8 RELENG_4_7 1.1.1.2.2.7.2.1 RELENG_4_6 1.1.1.2.2.6.2.2 RELENG_4_5 1.1.1.2.2.4.4.2 RELENG_4_4 1.1.1.2.2.4.2.2 src/contrib/bind/lib/nameser/ns_name.c RELENG_4 1.1.1.2.2.4 RELENG_4_7 1.1.1.2.2.3.2.1 RELENG_4_6 1.1.1.2.2.2.2.2 RELENG_4_5 1.1.1.2.2.1.6.2 RELENG_4_4 1.1.1.2.2.1.4.2 src/contrib/bind/lib/nameser/ns_samedomain.c RELENG_4 1.1.1.1.4.1 RELENG_4_7 1.1.1.1.14.1 RELENG_4_6 1.1.1.1.12.1 RELENG_4_5 1.1.1.1.10.1 RELENG_4_4 1.1.1.1.8.1 src/sys/conf/newvers.sh RELENG_4_7 1.44.2.26.2.4 RELENG_4_6 1.44.2.23.2.22 RELENG_4_5 1.44.2.20.2.24 RELENG_4_4 1.44.2.17.2.29 - ------------------------------------------------------------------------- VII. 参考資料 - References A. FreeBSD セキュリティ勧告 日本語版について 日本語訳は FreeBSD 日本語ドキュメンテーションプロジェクト (doc-jp) が 参考のために提供するものです。過去の日本語版セキュリティ勧告は http://www.FreeBSD.org/ja/security/ にまとめられています。 ただし翻訳者および doc-jp は、その内容についていかなる保証も いたしませんのでご注意ください。日本語訳についてのご意見、ご要望、 お問い合わせ等は doc-jp@jp.FreeBSD.org までお願いします。 この勧告の中で紹介されている WWW サイト http://www.FreeBSD.org/ および FTP サイト ftp://ftp.FreeBSD.org/ には, 日本のミラーサイトが存在します。 ネットワークの混雑を緩和するため、まずはミラーサイトの利用を 考慮するようお願いします。 日本のミラーサイトを利用するには、 http://www.FreeBSD.org/ を http://www.jp.FreeBSD.org/www.freebsd.org/ に、 ftp://ftp.FreeBSD.org/ を ftp://ftp.jp.FreeBSD.org/ に、 それぞれ置き換えてください。 他の地域を含むミラーサイトに関する詳細は http://www.FreeBSD.org/handbook/mirror.html (英文) http://www.FreeBSD.org/ja/handbook/mirror.html (日本語訳) にまとめられています。 $hrs: announce-jp/FreeBSD-SA/02:43,v 1.6 2002/11/21 23:49:34 hrs Exp $