-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

=============================================================================
FreeBSD-SA-08:09.icmp6                                      Security Advisory
                                                          The FreeBSD Project

Topic:          Remote kernel panics on IPv6 connections

Category:       core
Module:         sys_netinet6
Announced:      2008-09-03
Credits:        Tom Parker, Bjoern A. Zeeb
Affects:        All supported versions of FreeBSD.
Corrected:      2008-09-03 19:09:47 UTC (RELENG_7, 7.1-PRERELEASE)
                2008-09-03 19:09:47 UTC (RELENG_7_0, 7.0-RELEASE-p4)
                2008-09-03 19:09:47 UTC (RELENG_6, 6.4-PRERELEASE)
                2008-09-03 19:09:47 UTC (RELENG_6_3, 6.3-RELEASE-p4)
CVE Name:       CVE-2008-3530

For general information regarding FreeBSD Security Advisories,
including descriptions of the fields above, security branches, and the
following sections, please visit <URL:http://security.FreeBSD.org/>.

I.   Background

IPv6 nodes use ICMPv6 amongst other things to report errors encountered
while processing packets.  The 'Packet Too Big Message' is sent in
case a node cannot forward a packet because the size of the packet is
larger than the MTU of next-hop link.

II.  Problem Description

In case of an incoming ICMPv6 'Packet Too Big Message', there is an
insufficient check on the proposed new MTU for a path to the destination.

III. Impact

When the kernel is configured to process IPv6 packets and has active
IPv6 TCP sockets, a specifically crafted ICMPv6 'Packet Too Big
Message' could cause the TCP stack of the kernel to panic,

IV.  Workaround

Systems without INET6 / IPv6 support are not vulnerable and neither
are systems which do not listen on any IPv6 TCP sockets and have no
active IPv6 connections.

Filter ICMPv6 'Packet Too Big Messages' using a firewall, but this
will at the same time break PMTU support for IPv6 connections.

V.   Solution

Perform one of the following:

1) Upgrade your vulnerable system to 6-STABLE or 7-STABLE, or to the
RELENG_6_3 or RELENG_7_0 security branch dated after the correction date.

2) To patch your present system:

The following patches have been verified to apply to FreeBSD 6.3 and
FreeBSD 7.0 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-08:09/icmp6.patch
# fetch http://security.FreeBSD.org/patches/SA-08:09/icmp6.patch.asc

b) Apply the patch.

# cd /usr/src
# patch < /path/to/patch

c) Recompile your kernel as described in
<URL:http://www.FreeBSD.org/handbook/kernelconfig.html> and reboot the
system.

VI.  Correction details

The following list contains the revision numbers of each file that was
corrected in FreeBSD.

Branch                                                           Revision
  Path
- -------------------------------------------------------------------------
RELENG_6
  src/sys/netinet6/icmp6.c                                      1.62.2.11
RELENG_6_3
  src/UPDATING                                             1.416.2.37.2.9
  src/sys/conf/newvers.sh                                   1.69.2.15.2.8
  src/sys/netinet6/icmp6.c                                   1.62.2.9.2.1
RELENG_7
  src/sys/netinet6/icmp6.c                                       1.80.2.7
RELENG_7_0
  src/UPDATING                                              1.507.2.3.2.8
  src/sys/conf/newvers.sh                                    1.72.2.5.2.8
  src/sys/netinet6/icmp6.c                                       1.80.4.1
- -------------------------------------------------------------------------

VII. References

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-3530

The latest revision of this advisory is available at
http://security.FreeBSD.org/advisories/FreeBSD-SA-08:09.icmp6.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (FreeBSD)

iD8DBQFIvu2hFdaIBMps37IRAjxxAJwIIXP+ALAZkvG5m687PC+92BtXTwCfUZdS
AvvrO0r+UAa6bn1H9mFf9So=
=MBB1
-----END PGP SIGNATURE-----
