FreeBSD セキュリティ勧告 日本語版 ============================================================================= FreeBSD-SA-02:34.rpc [REVISED] (2002-08-01) * Sun RPC XDR decoder contains buffer overflow ============================================================================= このメールは、announce-jp に流れた Subject: ANNOUNCE: FreeBSD Security Advisory FreeBSD-SA-02:34.rpc [REVISED] From: FreeBSD Security Advisories Date: Thu, 1 Aug 2002 05:34:24 -0700 (PDT) Message-Id: <200208011234.g71CYOCq000896@freefall.freebsd.org> X-Sequence: announce-jp 1020 を日本語訳したものです。 原文は PGP 署名されていますが、この日本語訳は PGP 署名されていません。 修正パッチ等の内容が改竄されていないことを確認するために PGP 署名の チェックを行なうには、原文を参照してください。 日本語訳および、ミラーサイト利用の詳細については、文末の「A. FreeBSD セキュリティ勧告 日本語版について」をご覧ください。 [翻訳者: 倉品 英行 ] --(ここから) ============================================================================= FreeBSD-SA-02:34.rpc Security Advisory The FreeBSD Project トピック: Sun RPC XDR デコーダにおけるバッファオーバフロー (Sun RPC XDR decoder contains buffer overflow) 分類: core モジュール: libc 告知日: 2002-08-01 クレジット: ISS X-Force 影響範囲: 4.6.1-RELEASE-p5 を含む修正日以前のすべての FreeBSD 修正日: 2002-08-01 12:23:20 UTC (RELENG_4) 2002-08-01 12:23:40 UTC (RELENG_4_6) 2002-08-01 12:23:58 UTC (RELENG_4_5) 2002-08-01 12:24:20 UTC (RELENG_4_4) FreeBSD に固有か: NO 0. 改訂履歴 - Revision History v1.0 2002-07-31 初版公開 v1.1 2002-08-01 修正パッチの改訂 I. 背景 - Background Sun RPC は、サーバプロセスへのプロシージャを、クライアントから ネットワーク経由でほぼ透過的に呼び出せるようにするための、 リモートプロシージャコールフレームワークの一つです。 XDR は RPC で使用されるデータ構造のエンコード法です。 NFS、NIS などの多くのネットワークサービスが Sun RPC を基盤として 成り立っています。 FreeBSD C ランタイムライブラリ (libc) には Sun の RPC の実装に由来した XDR エンコーダ / デコーダが含まれています。 II. 問題の詳細 - Problem Description XDR デコーダで配列のアンパック処理に使われるメモリ量の計算に、 ヒープバッファオーバフローを引き起こす可能性のある誤りが含まれています。 III. 影響範囲 - Impact Sun RPC を利用しているアプリケーションはヒープバッファオーバフローに 対してぜい弱性を持つ可能性があります。アプリケーションによっては、この セキュリティ上の弱点を悪用して任意のコードを実行できる危険性があります。 現時点では具体的な悪用方法は確認されていませんが、(NFS、NIS サーバ、 rpc.statd などの) RPC ベースのサービスの多くは、スーパーユーザ権限で 動作しています。そのため、この弱点は高い危険性を持っていると 考えるべきです。 なお、FreeBSD をインストールした時、デフォルトで RPC ベースのサービスは 有効化されていません。 IV. 回避方法 - Workaround RPC ベースのサービスをすべて停止してください。実行中の RPC ベースの サービスは、次のようにして検出することができます。 # rpcinfo -p 次回の起動時に RPC ベースのサービスを無効化するには、以下の行を /etc/rc.conf に追加 (もしそれがすでに存在すれば変更) してください。 portmap_enable="NO" nfs_client_enable="NO" nfs_server_enable="NO" nis_client_enable="NO" nis_server_enable="NO" V. 解決策 - Solution 次のうちのひとつを行ってください。 1) 弱点を持った FreeBSD システムを最新の 4.6-STABLE にアップグレード するか、修正日以降の RELENG_4_6、RELENG_4_5、RELENG_4_4 セキュリティ ブランチ (4.6.1-RELEASE-p6, 4.5-RELEASE-p15, or 4.4-RELEASE-p22) のいずれかにアップグレードする。 2) 現在のシステムにパッチを適用する。 以下の修正パッチは、FreeBSD 4.6-RELEASE、4.5-RELEASE、4.4-RELEASE に 適用できることが確認されているものです。 a) 以下の場所から修正パッチをダウンロードし、PGP ユーティリティを使って PGP 署名を確認します。 # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:34/rpc.patch # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:34/rpc.patch.asc b) root で以下のコマンドを実行します。 # cd /usr/src # patch < /path/to/patch c) 以下のページに記述されているように、オペレーティングシステムを 再コンパイルします。 . 静的にリンクされている Sun RPC を利用するアプリケーションで、ベースシステムの 構成物に含まれないもの (Ports Collection やサードパーティ製のソースから コンパイルしたもの) も、すべて再コンパイルする必要があるということに 注意してください。 影響を受けるすべてのアプリケーションは、修正されたライブラリを 有効にするために再起動しなければなりません。これを行うには、システムを 再起動することがおそらく最も簡単な方法でしょう (必須ではありません)。 VI. 修正の詳細 - Correction details FreeBSD のおいて今回修正された各ファイルのリビジョン番号を以下に示します。 パス名 リビジョン ブランチ - ------------------------------------------------------------------------- src/lib/libc/xdr/xdr_array.c RELENG_4 1.8.2.3 RELENG_4_6 1.8.10.4 RELENG_4_5 1.8.8.3 RELENG_4_4 1.8.6.3 src/sys/conf/newvers.sh RELENG_4_6 1.44.2.23.2.11 RELENG_4_5 1.44.2.20.2.16 RELENG_4_4 1.44.2.17.2.21 - ------------------------------------------------------------------------- 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:34,v 1.2 2002/08/06 11:09:12 hrs Exp $