============================================================================= FreeBSD-SA-01:56 Security Advisory FreeBSD, Inc. トピック: tcp_wrapper の PARANOID ホスト名チェックが働かない カテゴリ: core モジュール: tcp_wrappers 告知日: 2001-08-23 クレジット: Tony Finch 影響範囲: FreeBSD 4.1.1-RELEASE FreeBSD 4.2-RELEASE FreeBSD 4.3-RELEASE 修正日以前の FreeBSD 4.3-STABLE 修正日: 2001-07-04 20:18:11 UTC (FreeBSD 4.3-STABLE) 2001-07-04 20:18:54 UTC (RELENG_4_3) FreeBSD 固有: Yes I. 背景 - Background FreeBSD has included Wietse Venema's tcp_wrappers since 3.2-RELEASE. tcp_wrappers allows one to add host-based ACLs to network applications, and additionally provides connection logging and some detection of DNS spoofing. FreeBSD は 3.2-RELEASE から Wietse Venema の tcp_wapper を含んでいる。 tcp_wrapper はネットワークアプリケーションに対して、ホストベースの ACL を追加することができ、また、コネクションのロギングや、DNS 詐称の いくつかを検知する機能も提供する。 II. 問題の詳細 - Problem Description The addition of a flawed check for a numeric result during reverse DNS lookup causes tcp_wrappers to skip some of its sanity checking of DNS results. These sanity checks are only enabled by the 'PARANOID' ACL option in the configuration file, and simply weaken the 'PARANOID' host checks to the level of assurance provided by the regular host ACLs. 追加された「DNS の逆引き時の誤った結果数値の汚染検査」が、tcp_wrapper に DNS 結果の正当性検査のいくつかをスキップさせてしまう。これらの正当性 検査は、設定ファイル中の 'PARANOID' ACL オプションによってのみ有効に され、'PARANOID' ホストチェックを単純に正規のホスト ACL によって提供 される保証のレベルに弱めてしまう。 This vulnerability was corrected prior to the (forthcoming) release of FreeBSD 4.4-RELEASE. この脆弱性は(次の)FreeBSD 4.4-RELEASE のリリース以前に修正された。 III. 影響範囲 - Impact An attacker that can influence the results of reverse DNS lookups can bypass certain tcp_wrappers PARANOID ACL restrictions by impersonating a trusted host. Such an attacker would need to be able to spoof reverse DNS lookups, or more simply the attacker may be the administrator of the DNS zone including the IP address of the remote host. DNS の逆引きの結果に影響を与えることのできる攻撃者は、信頼されたホスト を装うことによって、ある tcp_wrapper の PARANOID ACL 制限をバイバス できる。そのような攻撃者は DNS の逆引きを詐称できる必要がある。 より単純に言うと、攻撃者がリモートホストの IP アドレスを含む DNS ゾーンの管理者だということである。 IV. 回避方法 - Workaround None. なし。 V. 解決法 - Solution One of the following: 以下のいずれかを実行する: 1) Upgrade your vulnerable FreeBSD system to 4.3-STABLE or the RELENG_4_3 security branch after the respective correction dates. 1) 脆弱性のある FreeBSD システムを、それぞれの修正日以降の 4.3-STABLE か RELENG_4_3 セキュリティブランチにアップグレードする。 2) FreeBSD 4.x systems prior to the correction date: 2) 修正日以前の FreeBSD 4.x システム: The following patche has been verified to apply to FreeBSD 4.2-RELEASE, 4.3-RELEASE and 4.3-STABLE dated prior to the correction date. This patch may or may not apply to older, unsupported releases of FreeBSD. 以下のパッチは、FreeBSD 4.2-RELEASE、4.3-RELEASE、修正日以前の 4.3-STABLE について適用を確認している。サポートされていない部類 FreeBSD のリリースへの適用は不明である。 Download the patch and the detached PGP signature from the following locations, and verify the signature using your PGP utility. 以下の場所からパッチと PGP シグネチャをダウンロードし、PGP ユーティリティ を使ってシグネチャを確認する。 ftp://ftp.freebsd.org/pub/FreeBSD/CERT/patches/SA-01:56/tcp_wrappers.patch ftp://ftp.freebsd.org/pub/FreeBSD/CERT/patches/SA-01:56/tcp_wrappers.patch.asc # cd /usr/src/ # patch -p < /path/to/patch # cd /usr/src/lib/libwrap # make depend && make all install One must also recompile any statically linked applications that link against libwrap.a. There are no such applications in the base system. libwrap.a に対して静的にリンクしている全てのアプリケーションも再コン パイルしなければならない。基本システムにはそのようなアプリケーション はない。 3) FreeBSD 4.3-RELEASE systems: 3) FreeBSD 4.3-RELEASE システム: An experimental upgrade package is available for users who wish to provide testing and feedback on the binary upgrade process. This package may be installed on FreeBSD 4.3-RELEASE systems only, and is intended for use on systems for which source patching is not practical or convenient. バイナリアップグレード処理のテストとフィードバックを希望するユーザの ため、実験的なアップグレードパッケージが利用可能である。このパッケージは FreeBSD 4.3-RELEASE システムのみにインストール可能で、ソースへのパッチ当て が現実的でなかったり、都合が悪かったりするシステムでの利用を意図している。 If you use the upgrade package, feedback (positive or negative) to security-officer@FreeBSD.org is requested so we can improve the process for future advisories. もしアップグレードパッケージを利用するなら、将来の勧告のためにアップ グレード処理を改良できるよう、security-officer@FreeBSD.org 宛てに フィードバック(肯定・否定を問わない)をお願いする。 During the installation procedure, backup copies are made of the files which are replaced by the package. These backup copies will be reinstalled if the package is removed, reverting the system to a pre-patched state. インストール処理中に、パッケージによって上書きされるファイルのバック アップコピーが作成される。パッケージが削除されると、バックアップ コピーが再インストールされ、システムがパッチを当てる前の状態に戻る。 # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/packages/SA-01:56/security-patch-tcp_wrappers-01.56.tgz # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/packages/SA-01:56/security-patch-tcp_wrappers-01.56.tgz.asc Verify the detached PGP signature using your PGP utility. PGP ユーティリティを使って PGP シグネチャを確認する。 # pkg_add security-patch-tcp_wrappers-01.56.tgz VI. 修正の詳細 - Correction details The following list contains the $FreeBSD$ revision numbers of each file that was corrected, for the supported branches of FreeBSD. The $FreeBSD$ revision of installed sources can be examined using the ident(1) command. The patch provided above does not cause these revision numbers to be updated. 以下のリストは、サポートされている FreeBSD ブランチのための修正された それぞれのファイルの $FreeBSD$ リビジョン番号を含んでいる。インストール されているソースの $FreeBSD$ リビジョン番号は、ident(1) コマンドを使って 確認できる。上で提供されているパッチは、これらのリビジョン番号はアップ デートしない。 [FreeBSD 4.3-STABLE] Revision Path 1.2.2.3 src/contrib/tcp_wrappers/socket.c [RELENG_4_3] Revision Path 1.2.2.2.2.1 src/contrib/tcp_wrappers/socket.c VII. 参考文献 - References