FreeBSD セキュリティ勧告 日本語版 ============================================================================= FreeBSD-SA-02:38.signed-error (2002-08-19) * Boundary checking errors involving signed integers ============================================================================= このメールは, announce-jp に流れた Subject: ANNOUNCE: FreeBSD Security Advisory FreeBSD-SA-02:38.signed-error From: FreeBSD Security Advisories Date: Mon, 19 Aug 2002 05:56:23 -0700 (PDT) Message-Id: <200208191256.g7JCuNAd018797@freefall.freebsd.org> X-Sequence: announce-jp 1037 を日本語訳したものです。 原文は PGP 署名されていますが、この日本語訳は PGP 署名されていません。 修正パッチ等の内容が改ざんされていないことを確認するために PGP 署名の チェックを行なうには、原文を参照してください。 日本語訳およびミラーサイト利用の詳細については、文末の「A. FreeBSD セキュリティ勧告 日本語版について」をご覧ください。 [翻訳者: 佐藤 広生 ] --(ここから) ============================================================================= FreeBSD-SA-02:38.signed-error Security Advisory The FreeBSD Project トピック: 符号付き整数に起因する境界チェックのエラー問題 (Boundary checking errors involving signed integers) 分類: core モジュール: sys 告知日: 2002-08-19 クレジット: Silvio Cesare 影響範囲: 4.6.1-RELEASE-p10 および、それ以前のすべての FreeBSD リリース 修正日: 2002-08-13 02:42:32 UTC (RELENG_4) 2002-08-13 12:12:36 UTC (RELENG_4_6) 2002-08-13 12:13:05 UTC (RELENG_4_5) 2002-08-13 12:13:49 UTC (RELENG_4_4) FreeBSD に固有か: YES I. 背景 - Background この勧告で解説している問題は、accept(2), getsockname(2), getpeername(2) の各システムコールおよび、vesa(4) の FBIO_GETPALETTE ioctl(2) に存在するものです。 II. 問題の詳細 - Problem Description いくつかのシステムコールは、呼び出し時の引数が常に正の整数値であることを 想定しているにもかかわらず、実際には引数を符号付き整数型で処理しています。 このことは、引数に負の整数値を与えてそのシステムコールを呼び出した場合に、 システムコール中の境界チェックコードが誤動作する原因となる危険性があります。 III. 影響範囲 - Impact 問題のあるシステムコールを絶対値の大きい負の値を引数にして呼び出すことで、 カーネルがカーネルメモリの大きな部分を返してしまう可能性があります。 カーネルメモリには、ファイルのキャッシュや端末バッファなどの セキュリティ上重要な情報の一部が含まれている可能性があり、 これらの情報を直接悪用したり、さらに高い権限を得るために 何らかの形で利用できるかも知れません。たとえば、端末バッファには ユーザが入力したパスワードが含まれている可能性があります。 IV. 回避方法 - Workaround 回避方法は見つかっていません。 V. 解決策 - Solution 1) 弱点を持った FreeBSD システムを 4.6.2-RELEASE、もしくは 最新の 4.6-STABLE にアップグレードする。 あるいは、修正日以降の RELENG_4_6 (4.6.1-RELEASE-p11)、 RELENG_4_5 (4.5-RELEASE-p19)、RELENG_4_4 (4.4-RELEASE-p26) セキュリティブランチのいずれかにアップグレードする。 2) 現在のシステムに修正パッチを適用する。 a) 以下の場所から修正パッチをダウンロードし、PGP ユーティリティを使って PGP 署名を確認します。この修正パッチは、FreeBSD 4.x リリースすべてに 適用できることが確認されているものです。 # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:38/signed-error.patch # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:38/signed-error.patch.asc b) 修正パッチを適用します。 # cd /usr/src # patch < /path/to/patch (訳注: /path/to/patch の部分は修正パッチのパス名に置き換えてください) c) に書かれている 手順にしたがってカーネルを再構築し、システムを再起動します。 VI. 修正の詳細 - Correction details FreeBSD において今回修正された各ファイルのリビジョン番号は、以下のとおりです。 パス名 リビジョン ブランチ - ------------------------------------------------------------------------- src/sys/i386/isa/vesa.c RELENG_4 1.32.2.1 RELENG_4_6 1.32.10.1 RELENG_4_5 1.32.8.1 RELENG_4_4 1.32.6.1 src/sys/kern/uipc_syscalls.c RELENG_4 1.65.2.12 RELENG_4_6 1.65.2.9.6.1 RELENG_4_5 1.65.2.9.4.1 RELENG_4_4 1.65.2.9.2.1 src/sys/conf/newvers.sh RELENG_4_6 1.44.2.23.2.16 RELENG_4_5 1.44.2.20.2.20 RELENG_4_4 1.44.2.17.2.25 - ------------------------------------------------------------------------- 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:38,v 1.7 2002/08/21 22:19:55 hrs Exp $