FreeBSD セキュリティ勧告 日本語版 ============================================================================= FreeBSD-SA-02:36.nfs (2002-08-05) * Bug in NFS server code allows remote denial of service ============================================================================= このメールは, announce-jp に流れた Subject: ANNOUNCE: FreeBSD Security Advisory FreeBSD-SA-02:36.nfs From: FreeBSD Security Advisories Date: Mon, 5 Aug 2002 16:51:06 -0700 (PDT) Message-Id: <200208052351.g75Np6cY097801@freefall.freebsd.org> X-Sequence: announce-jp 1028 を日本語訳したものです。 原文は PGP 署名されていますが、この日本語訳は PGP 署名されていません。 修正パッチ等の内容が改ざんされていないことを確認するために PGP 署名の チェックを行なうには、原文を参照してください。 日本語訳およびミラーサイト利用の詳細については、文末の「A. FreeBSD セキュリティ勧告 日本語版について」をご覧ください。 [翻訳者: 佐藤 広生 ] --(ここから) ============================================================================= FreeBSD-SA-02:36.nfs Security Advisory The FreeBSD Project トピック: リモートからサービス妨害攻撃可能な NFS サーバコードのバグ (Bug in NFS server code allows remote denial of service) 分類: core モジュール: nfs 告知日: 2002-08-05 クレジット: Mike Junk 影響範囲: 4.6.1-RELEASE-p7 より前のすべての FreeBSD リリース 修正日より前の 4.6-STABLE 修正日: 2002-07-19 17:19:53 UTC (RELENG_4) 2002-08-01 19:31:55 UTC (RELENG_4_6) 2002-08-01 19:31:54 UTC (RELENG_4_5) 2002-08-01 19:31:54 UTC (RELENG_4_4) FreeBSD に固有か: NO I. 背景 - Background Network File System (NFS) は、あるホストのファイルシステムの一部、 あるいは全部を外部に公開し、他のホストからネットワーク経由で ローカルディスクの場合と同じようなマウント操作やアクセスを可能に するものです。NFS は Sun Remote Procedure Call (RPC) フレームワークを利用しています。 II. 問題の詳細 - Problem Description NFS サーバのコードに含まれる、到着した RPC メッセージの処理を 行なう部分には、0 バイトのペイロードを持つメッセージを サーバが受けとった時に、その前に受けとったメッセージの ペイロードを参照してしまい、その結果メッセージチェーンにループが 形成されてしまうという誤りが含まれています。これは NFS サーバの 他の部分にある、メッセージチェーンをたどる処理を行なうコードで 無限ループを引き起こします。 III. 影響範囲 - Impact Linux の NFS 実装の一部には、ある条件下でデータサイズが 0 の RPC メッセージを生成するものがあります。NFS サーバとして動作している FreeBSD システムは、そのようなクライアントが接続した場合に 無限ループに陥ってしまう可能性があります。 弱点を持つ FreeBSD システムに RPC メッセージを送ることが できる攻撃者は、システムを無限ループに陥らせるような悪意を持った RPC メッセージを作成することが可能です。 IV. 回避方法 - Workaround (訳注: 次のいずれか一つに従ってください。) 1) NFS サーバを無効にします。/etc/rc.conf で nfs_server_enable 変数を "NO" に設定し、システムを再起動してください。 また、もし接続中の NFS クライアント (showmount(8) ユーティリティで 表示されます) が一つもない場合には、単に mountd と nfsd のプロセスを kill するだけで十分です。 2) 信用できないホストから NFS サーバに送られる RPC トラフィックを遮断する ようなファイアウォールルールを設定します。 V. 解決策 - Solution 次の修正パッチは、FreeBSD 4.4, 4.5, 4.6 システムに適用できることが 確認されているものです。 a) 以下の場所から修正パッチをダウンロードし、PGP ユーティリティを使って PGP 署名を確認します。 # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:36/nfs.patch # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:36/nfs.patch.asc b) 修正パッチを適用します。 # cd /usr/src # patch < /path/to/patch (訳注: /path/to/patch の部分は修正パッチのパス名に置き換えてください) c) に書かれている 手順にしたがってカーネルを再構築し、システムを再起動します。 VI. 修正の詳細 - Correction details FreeBSD において今回修正された各ファイルのリビジョン番号は、以下のとおりです。 パス名 リビジョン ブランチ - ------------------------------------------------------------------------- src/sys/nfs/nfs_socket.c RELENG_4 1.60.2.5 RELENG_4_6 1.60.2.3.2.1 RELENG_4_5 1.60.2.1.6.1 RELENG_4_4 1.60.2.3.4.1 - ------------------------------------------------------------------------- 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:36,v 1.5 2002/08/09 04:50:08 hrs Exp $