-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
============================================================================FreeBSD-SA-07:06.tcpdump Security Advisory
The FreeBSD Project
Topic: Buffer overflow in tcpdump(1)
Category: contrib
Module: tcpdump
Announced: 2007-08-01
Credits: "mu-b"
Affects: All supported versions of FreeBSD
Corrected: 2007-08-01 20:42:48 UTC (RELENG_6, 6.2-STABLE)
2007-08-01 20:44:58 UTC (RELENG_6_2, 6.2-RELEASE-p7)
2007-08-01 20:45:49 UTC (RELENG_6_1, 6.1-RELEASE-p19)
2007-08-01 20:47:13 UTC (RELENG_5, 5.5-STABLE)
2007-08-01 20:48:19 UTC (RELENG_5_5, 5.5-RELEASE-p15)
CVE Name: CVE-2007-3798
For general information regarding FreeBSD Security Advisories,
including descriptions of the fields above, security branches, and the
following sections, please visit .
I. Background
Tcpdump is a commonly used network diagnostic utility which decodes packets
received on the wire into human readable format.
II. Problem Description
An un-checked return value in the BGP dissector code can result in an integer
overflow. This value is used in subsequent buffer management operations,
resulting in a stack based buffer overflow under certain circumstances.
III. Impact
By crafting malicious BGP packets, an attacker could exploit this vulnerability
to execute code or crash the tcpdump process on the target system. This
code would be executed in the context of the user running tcpdump(1).
It should be noted that tcpdump(1) requires privileges in order to open live
network interfaces.
IV. Workaround
No workaround is available.
V. Solution
Perform one of the following:
1) Upgrade your vulnerable system to 5-STABLE, or 6-STABLE, or to the
RELENG_6_2, RELENG_6_1, or RELENG_5_5 security branch dated after the
correction date.
2) To patch your present system:
The following patches have been verified to apply to FreeBSD 5.5, 6.1,
and 6.2 systems.
a) Download the relevant patch from the location below, and verify the
detached PGP signature using your PGP utility.
# fetch http://security.FreeBSD.org/patches/SA-07:06/tcpdump.patch
# fetch http://security.FreeBSD.org/patches/SA-07:06/tcpdump.patch.asc
b) Execute the following commands as root:
# cd /usr/src
# patch < /path/to/patch
# cd /usr/src/usr.sbin/tcpdump/tcpdump
# make obj && make depend && make && make install
VI. Correction details
The following list contains the revision numbers of each file that was
corrected in FreeBSD.
Branch Revision
Path
- -------------------------------------------------------------------------
RELENG_5
src/contrib/tcpdump/print-bgp.c 1.1.1.5.2.2
RELENG_5_5
src/UPDATING 1.342.2.35.2.15
src/sys/conf/newvers.sh 1.62.2.21.2.17
src/contrib/tcpdump/print-bgp.c 1.1.1.5.2.1.2.1
RELENG_6
src/contrib/tcpdump/print-bgp.c 1.1.1.8.2.1
RELENG_6_2
src/UPDATING 1.416.2.29.2.10
src/sys/conf/newvers.sh 1.69.2.13.2.10
src/contrib/tcpdump/print-bgp.c 1.1.1.8.8.1
RELENG_6_1
src/UPDATING 1.416.2.22.2.21
src/sys/conf/newvers.sh 1.69.2.11.2.21
src/contrib/tcpdump/print-bgp.c 1.1.1.8.6.1
- -------------------------------------------------------------------------
VII. References
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-3798
The latest revision of this advisory is available at
http://security.FreeBSD.org/advisories/FreeBSD-SA-07:06.tcpdump.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (FreeBSD)
iD8DBQFGsPfwFdaIBMps37IRAmK/AJ0adsy8zlOOXaJhJJdcX6A0Uy+bSQCfQYVi
4qk7MNSrKFZotejLEXKMCYI=JIZh
-----END PGP SIGNATURE-----