FreeBSD セキュリティ勧告 日本語版 ============================================================================= FreeBSD-SA-02:28.resolv (2002-06-26) * buffer overflow in resolver ============================================================================= このメールは, announce-jp に流れた Subject: ANNOUNCE: FreeBSD Security Advisory FreeBSD-SA-02:28.resolv From: FreeBSD Security Advisories Date: Wed, 26 Jun 2002 12:08:22 -0700 (PDT) Message-Id: <200206261908.g5QJ8MOE035394@freefall.freebsd.org> X-Sequence: announce-jp 1005 を日本語訳したものです。 原文は PGP 署名されていますが、この日本語訳は PGP 署名されていません。 修正パッチ等の内容が改ざんされていないことを確認するために PGP 署名の チェックを行なうには、原文を参照してください。 日本語訳およびミラーサイト利用の詳細については、文末の「A. FreeBSD セキュリティ勧告 日本語版について」をご覧ください。 [翻訳者: 佐藤 広生 ] --(ここから) ============================================================================= FreeBSD-SA-02:28.resolv Security Advisory The FreeBSD Project トピック: リゾルバにおけるバッファオーバフロー問題 (buffer overflow in resolver) 分類: core モジュール: libc 告知日: 2002-06-26 クレジット: Joost Pol 影響範囲: 4.6-RELEASE および、それ以前のすべてのリリース 修正日: 2002-06-26 06:34:18 UTC (RELENG_4) 2002-06-26 08:44:24 UTC (RELENG_4_6) 2002-06-26 18:53:20 UTC (RELENG_4_5) FreeBSD に固有か: NO I. 背景 - Background リゾルバとは、インターネットドメインネームサーバに対する問い合わせや 応答メッセージを生成、送出、処理するための関数群を実装したものです。 ホスト名、IP アドレスなどの情報は、このリゾルバを使って問い合わせが 行なわれます。 II. 問題の詳細 - Problem Description DNS メッセージは特定のバイトアラインメントが要求されるため、 メッセージにはパディング処理 (訳注: padding; 長さを合わせるために バイト列を追加する処理) が行なわれます。いくつかのリゾルバコードでは、 バッファの大きさを計算する時に、このパディング処理に必要な分を 考慮していません。そのため、DNS メッセージを解析する際、メッセージに 含まれる各レコードに対して、数バイトのバッファオーバランが発生する 可能性があります。 III. 影響範囲 - Impact 攻撃者 (悪意を持ったドメインネームサーバ、もしくは DNS メッセージを 詐称できる仲介者) は、リゾルバを利用するアプリケーションがメッセージを 処理する際、このバグを悪用できるような特殊な細工が施された DNS メッセージを 生成することが可能です。これにより、リゾルバを利用するアプリケーションの 権限で任意のコードが実行できる可能性があります。現時点では具体的な 悪用方法は見つかっていませんが、ほぼすべてのインターネットアプリケーションは リゾルバを利用するため、この問題は非常に深刻なものです。 IV. 回避方法 - Workaround 現時点では、有効な回避方法は見つかっていません。 V. 解決策 - Solution 次のいずれかに従ってください。 1) 弱点を持った FreeBSD システムを修正日以降の 4.6-STABLE、もしくは RELENG_4_6 (4.6-RELEASE-p1)、RELENG_4_5 (4.5-RELEASE-p7) セキュリティブランチのいずれかにアップグレードする。 2) 現在のシステムに修正パッチを適用する。 次の修正パッチは、FreeBSD 4.5 および 4.6 に適用できることが 確認されているものです。 a) 以下の場所から修正パッチをダウンロードし、PGP ユーティリティを使って PGP 署名を確認します。 # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:28/resolv.patch # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:28/resolv.patch.asc b) root 権限で次のコマンドを実行します。 # cd /usr/src # patch < /path/to/patch c) に書かれている 手順にしたがってカーネルを再構築し、システムを再起動します。 また、ベースシステムに含まれていない、静的にリンクされたバイナリ (つまり Ports Collection やサードパーティ製の ソースからコンパイルしたもの) も、すべて再コンパイルする必要があることに注意してください。 VI. 修正の詳細 - Correction details 次の表は、今回修正された FreeBSD に含まれる各ファイルのリビジョン番号です。 パス名 リビジョン ブランチ - ------------------------------------------------------------------------- src/lib/libc/net/gethostbydns.c RELENG_4 1.27.2.2 RELENG_4_6 1.27.10.1 RELENG_4_5 1.27.8.1 src/lib/libc/net/getnetbydns.c RELENG_4 1.13.2.2 RELENG_4_6 1.13.2.1.8.1 RELENG_4_5 1.13.2.1.6.1 src/lib/libc/net/name6.c RELENG_4 1.6.2.6 RELENG_4_6 1.6.2.5.8.1 RELENG_4_5 1.6.2.5.6.1 src/sys/conf/newvers.sh RELENG_4_6 1.44.2.23.2.2 RELENG_4_5 1.44.2.20.2.8 - ------------------------------------------------------------------------- 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:28,v 1.3 2002/07/26 04:19:35 hrs Exp $