FreeBSD Security Advisory FreeBSD-SA-01:56.tcp_wrappers

FreeBSD Security Advisories security-advisories at
Thu Aug 23 13:57:23 PDT 2001


FreeBSD-SA-01:56                                           Security Advisory
                                                                FreeBSD, Inc.

Topic:          tcp_wrappers PARANOID hostname checking does not work

Category:       core
Module:         tcp_wrappers
Announced:      2001-08-23
Credits:        Tony Finch <dot at>
Affects:        FreeBSD 4.1.1-RELEASE
		FreeBSD 4.3-STABLE before the correction date
Corrected:      2001-07-04 20:18:11 UTC (FreeBSD 4.3-STABLE)
                2001-07-04 20:18:54 UTC (RELENG_4_3)
FreeBSD only:   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.

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

This vulnerability was corrected prior to the (forthcoming) release of

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

IV.  Workaround


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.

2) FreeBSD 4.x systems prior to the correction date:

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.

Download the patch and the detached PGP signature from the following
locations, and verify the signature using your PGP utility.

# 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.

3) FreeBSD 4.3-RELEASE systems:

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.

If you use the upgrade package, feedback (positive or negative) to
security-officer at is requested so we can improve the
process for future advisories.

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
# fetch

Verify the detached PGP signature using your PGP utility.

# 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 4.3-STABLE]

  Revision     Path      src/contrib/tcp_wrappers/socket.c


  Revision     Path  src/contrib/tcp_wrappers/socket.c  

VII.  References

Version: GnuPG v1.0.6 (FreeBSD)
Comment: For info see


This is the moderated mailing list freebsd-announce.
The list contains announcements of new FreeBSD capabilities,
important events and project milestones.
See also the FreeBSD Web pages at

To Unsubscribe: send mail to majordomo at
with "unsubscribe freebsd-announce" in the body of the message

More information about the freebsd-announce mailing list