Vigil@nce: OpenSolaris, NULL dereference via tcp_do_getsockname and
December 2009 by Vigil@nce
An attacker can thus send a IPv6 packet order to stop the kernel.
– Severity: 2/4
– Consequences: administrator access/rights, denial of service of
computer
– Provenance: internet client
– Means of attack: no proof of concept, no attack
– Ability of attacker: expert (4/4)
– Confidence: confirmed by the editor (5/5)
– Diffusion of the vulnerable configuration: high (3/3)
– Creation date: 08/12/2009
IMPACTED PRODUCTS
– OpenSolaris
DESCRIPTION OF THE VULNERABILITY
The tcp structure contains TCP information of the packet. The
tcp->tcp_ip6h holds IPv6 header information of the packet.
The tcp_do_getsockname() and tcp_do_getpeername() method of the
file common/inet/tcp/tcp.c return respectively the name of the
local and peer socket of a TCP connection. If the socket is of
AF_INET6 (IPv6) family, the result structure is initialized with
some information of tcp->tcp_ip6h. However, tcp->tcp_ip6h can be
NULL. The tcp_do_getsockname() et tcp_do_getpeername() method
therefore dereference a NULL pointer.
An attacker can thus send a IPv6 packet order to stop the kernel.
An attacker can also use this vulnerability with
VIGILANCE-VUL-8953 (https://vigilance.fr/tree/1/8953)/VIGILANCE-VUL-8861
(https://vigilance.fr/tree/1/8861) in order to elevate his
privileges.
CHARACTERISTICS
– Identifiers: 268189, 6877954, BID-37225, CVE-2009-4226,
VIGILANCE-VUL-9242
– Url: http://vigilance.fr/vulnerability/OpenSolaris-NULL-dereference-via-tcp-do-getsockname-and-tcp-do-getpeername-9242