Vigil@nce: BSD, Juniper: changes in an IPv6 router
October 2008 by Vigil@nce
An attacker on the LAN can send a Neighbor Solicitation packet in
order to change information on the router related to a computer on
another LAN.
– Gravity: 2/4
– Consequences: data reading, denial of service of computer
– Provenance: LAN
– Means of attack: 1 attack
– Ability of attacker: technician (2/4)
– Confidence: confirmed by the editor (5/5)
– Diffusion of the vulnerable configuration: high (3/3)
– Creation date: 02/10/2008
– Revision date: 02/10/2008
IMPACTED PRODUCTS
– FreeBSD
– Juniper JUNOS
– Juniper JUNOSe
– NetBSD
– OpenBSD
DESCRIPTION
A router has two or several LAN connected to different physical
interfaces.
The IPv6 Neighbor Discovery protocol uses 5 types of packets (RFC
4861):
– Neighbor Solicitation : query the link layer (Ethernet) address
of a neighbor form its IP address
– Neighbor Advertisement : answer
– etc.
When the router receives a Neighbor Solicitation packet, it keeps
in cache information about the sender (under FreeBSD, by calling
the nd6_cache_lladdr() function of netinet6/nd6.c at the end of
the function nd6_ns_input()). However, an attacker can spoof the
IP address of a computer on another LAN, in order to force the
memorization of this address associated to the bad physical
interface.
An attacker can therefore create a denial of service, an
eventually obtain packets for the spoofed IP address.
CHARACTERISTICS
– Identifiers: BID-31529, CVE-2008-2476, CVE-2008-4404,
FreeBSD-SA-08:10.nd6, VIGILANCE-VUL-8140, VU#472363
– Url: http://vigilance.aql.fr/vulnerability/8140