patches for easier mirroring, to eliminate a special copy, to make www.freebsd.org/security a full copy of security.freebsd.org and be eventually be the same. For now files are just sitting there. The symlinks are missing. Discussed on: www (repository location) Discussed with: simon (so)
136 lines
5.3 KiB
Text
136 lines
5.3 KiB
Text
-----BEGIN PGP SIGNED MESSAGE-----
|
|
Hash: SHA1
|
|
|
|
=============================================================================
|
|
FreeBSD-SA-07:03.ipv6 Security Advisory
|
|
The FreeBSD Project
|
|
|
|
Topic: IPv6 Routing Header 0 is dangerous
|
|
|
|
Category: core
|
|
Module: ipv6
|
|
Announced: 2007-04-26
|
|
Credits: Philippe Biondi, Arnaud Ebalard, Jun-ichiro itojun Hagino
|
|
Affects: All FreeBSD releases.
|
|
Corrected: 2007-04-24 11:42:42 UTC (RELENG_6, 6.2-STABLE)
|
|
2007-04-26 23:42:23 UTC (RELENG_6_2, 6.2-RELEASE-p4)
|
|
2007-04-26 23:41:59 UTC (RELENG_6_1, 6.1-RELEASE-p16)
|
|
2007-04-24 11:44:23 UTC (RELENG_5, 5.5-STABLE)
|
|
2007-04-26 23:41:27 UTC (RELENG_5_5, 5.5-RELEASE-p12)
|
|
CVE Name: CVE-2007-2242
|
|
|
|
I. Background
|
|
|
|
IPv6 provides a routing header option which allows a packet sender to
|
|
indicate how the packet should be routed, overriding the routing knowledge
|
|
present in a network. This functionality is roughly equivalent to the
|
|
"source routing" option in IPv4. All nodes in an IPv6 network -- both
|
|
routers and hosts -- are required by RFC 2460 to process such headers.
|
|
|
|
II. Problem Description
|
|
|
|
There is no mechanism for preventing IPv6 routing headers from being used
|
|
to route packets over the same link(s) many times.
|
|
|
|
III. Impact
|
|
|
|
An attacker can "amplify" a denial of service attack against a link between
|
|
two vulnerable hosts; that is, by sending a small volume of traffic the
|
|
attacker can consume a much larger amount of bandwidth between the two
|
|
vulnerable hosts.
|
|
|
|
An attacker can use vulnerable hosts to "concentrate" a denial of service
|
|
attack against a victim host or network; that is, a set of packets sent
|
|
over a period of 30 seconds or more could be constructed such that they
|
|
all arrive at the victim within a period of 1 second or less.
|
|
|
|
Other attacks may also be possible.
|
|
|
|
IV. Workaround
|
|
|
|
No workaround is available.
|
|
|
|
V. Solution
|
|
|
|
NOTE WELL: The solution described below causes IPv6 type 0 routing headers
|
|
to be ignored. Support for IPv6 type 0 routing headers can be re-enabled
|
|
if required by setting the newly added net.inet6.ip6.rthdr0_allowed sysctl
|
|
to a non-zero value.
|
|
|
|
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:03/ipv6.patch
|
|
# fetch http://security.FreeBSD.org/patches/SA-07:03/ipv6.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_5
|
|
src/sys/netinet6/in6.h 1.35.2.5
|
|
src/sys/netinet6/in6_proto.c 1.29.2.5
|
|
src/sys/netinet6/route6.c 1.10.4.2
|
|
RELENG_5_5
|
|
src/UPDATING 1.342.2.35.2.12
|
|
src/sys/conf/newvers.sh 1.62.2.21.2.14
|
|
src/sys/netinet6/in6.h 1.35.2.3.2.1
|
|
src/sys/netinet6/in6_proto.c 1.29.2.4.2.1
|
|
src/sys/netinet6/route6.c 1.10.4.1.4.1
|
|
RELENG_6
|
|
src/sys/netinet6/in6.h 1.36.2.8
|
|
src/sys/netinet6/in6_proto.c 1.32.2.6
|
|
src/sys/netinet6/route6.c 1.11.2.2
|
|
RELENG_6_2
|
|
src/UPDATING 1.416.2.29.2.7
|
|
src/sys/conf/newvers.sh 1.69.2.13.2.7
|
|
src/sys/netinet6/in6.h 1.36.2.7.2.1
|
|
src/sys/netinet6/in6_proto.c 1.32.2.5.2.1
|
|
src/sys/netinet6/route6.c 1.11.2.1.4.1
|
|
RELENG_6_1
|
|
src/UPDATING 1.416.2.22.2.18
|
|
src/sys/conf/newvers.sh 1.69.2.11.2.18
|
|
src/sys/netinet6/in6.h 1.36.2.6.2.1
|
|
src/sys/netinet6/in6_proto.c 1.32.2.4.2.1
|
|
src/sys/netinet6/route6.c 1.11.2.1.2.1
|
|
- -------------------------------------------------------------------------
|
|
|
|
VII. References
|
|
|
|
http://www.secdev.org/conf/IPv6_RH_security-csw07.pdf
|
|
|
|
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-2242
|
|
|
|
The latest revision of this advisory is available at
|
|
http://security.FreeBSD.org/advisories/FreeBSD-SA-07:03.ipv6.asc
|
|
-----BEGIN PGP SIGNATURE-----
|
|
Version: GnuPG v1.4.6 (FreeBSD)
|
|
|
|
iD8DBQFGM8/CFdaIBMps37IRAu30AJ9nDSBQetafO6QPf8pJSA7Fwk6qlQCePVg0
|
|
2T4oPjAuyPYX9bkmP0EAdfs=
|
|
=MGTg
|
|
-----END PGP SIGNATURE-----
|