SecurityTracker.com
Keep Track of the Latest Vulnerabilities
with SecurityTracker!
    Home    |    View Topics    |    Search    |    Contact Us    |    Help    |   

SecurityTracker
Archives


Welcome to SecurityTracker!
 
Click to Sign Up
Sign Up
Sign Up for Your FREE Weekly SecurityTracker E-mail Alert Summary
Instant Alerts
Buy our Premium Vulnerability Notification Service to receive customized, instant alerts
Affiliates
Put SecurityTracker Vulnerability Alerts on Your Web Site -- It's Free!
Partners
Become a Partner and License Our Database or Notification Service
Report a Bug
Report a vulnerability that you have found to SecurityTracker
bugs
@
securitytracker.com

Sign Up!





Category:  OS (UNIX)  >  FreeBSD Kernel Vendors:  FreeBSD
FreeBSD IPv6 secsockopt(2) Input Validation Flaws May Disclose Memory to Local Users or Permit Local Denial of Service
SecurityTracker Alert ID:  1009586
CVE Reference:  CAN-2004-0370   (Links to External Site)
Date:  Mar 29 2004
Impact:  Denial of service via local system, Disclosure of authentication information, Disclosure of system information, Disclosure of user information
Fix Available:  Yes   Vendor Confirmed:  Yes  
Version(s): 5.2
Description:  An input validation vulnerability was reported in FreeBSD in the IPv6 setsockopt(2) call. A local user can view kernel memory or trigger a system panic.

FreeBSD reported that there is a flaw in the KAME IPv6 implementation, but that the flaw only affects FreeBSD. FreeBSD indicates that errors in processing some IPv6 socket options in the setsockopt(2) system call may permit the calling application to be able to gain read access to memory locations. A local user can read portions of kernel memory or cause a kernel panic.

Impact:  A local user may be able to read portions of kernel memory.

A local user may be able to cause a system panic.

The specific impact depends on the application that uses the affected system call.

Solution:  The vendor indicates that you should do one of the following [quoted]:

1) Upgrade your vulnerable system to the RELENG_5_2 security branch dated after the correction date.

2) To patch your present system:

a) Download the relevant patch from the location below, and verify the detached PGP signature using your PGP utility.

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:06/ipv6.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:06/ipv6.patch.asc

b) Execute the following commands as root:

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

c) Recompile the kernel as described in http://www.freebsd.org/handbook/kernelconfig.html and reboot the system.

d) Install updated kernel headers.

# cd /usr/src/include
# make install

Vendor URL:  www.freebsd.org/ (Links to External Site)
Cause:  Input validation error
Underlying OS:  UNIX (FreeBSD)
Reported By:  FreeBSD Security Advisories <security-advisories@freebsd.org>
Message History:   None.


 Source Message Contents

Date:  Mon, 29 Mar 2004 06:15:26 -0800 (PST)
From:  FreeBSD Security Advisories <security-advisories@freebsd.org>
Subject:  FreeBSD Security Advisory FreeBSD-SA-04:06.ipv6

 

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

=============================================================================
FreeBSD-SA-04:06.ipv6                                       Security Advisory
                                                          The FreeBSD Project

Topic:          setsockopt(2) IPv6 sockets input validation error

Category:       core
Module:         kernel
Announced:      2004-03-29
Credits:        Katsuhisa ABE, Colin Percival
Affects:        FreeBSD 5.2-RELEASE
Corrected:      2004-03-29 14:01:33 UTC (RELENG_5_2, 5.2.1-RELEASE-p4)
CVE Name:       CAN-2004-0370
FreeBSD only:   YES

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

I.   Background

IPv6 is a new Internet Protocol, designed to replace (and avoid many of
the problems with) the current Internet Protocol (version 4).  FreeBSD
uses the KAME Project IPv6 implementation.

Applications may manipulate the behavior of an IPv6 socket using the
setsockopt(2) system call.

II.  Problem Description

A programming error in the handling of some IPv6 socket options within
the setsockopt(2) system call may result in memory locations being
accessed without proper validation.  While the problem originates in
code from the KAME Project, it does not affect other operating systems.

III. Impact

It may be possible for a local attacker to read portions of kernel
memory, resulting in disclosure of sensitive information.  A local
attacker can cause a system panic.

IV.  Workaround

Do one of the following:

1) Disable IPv6 entirely by following these steps:

   - Remove or comment out any lines mentioning `INET6' from your
     kernel configuration file, and recompile your kernel as described
     in <URL:http://www.freebsd.org/handbook/kernelconfig.html>.

   - Reboot your system.

2) If all untrusted users are confined within a jail(8), ensure that
the security.jail.socket_unixiproute_only sysctl is set to 1 and
verify that no IPv6 sockets are currently open:

# sysctl security.jail.socket_unixiproute_only=1
# sockstat -6

This will restrict jailed processes to creating UNIX domain, IPv4, and
routing sockets, which are not vulnerable to this problem; note however
that processes inside a jail may still be able to inherit IPv6 sockets
from outside the jail, so this may not be sufficient for all systems.

V.   Solution

Do one of the following:

1) Upgrade your vulnerable system to the RELENG_5_2 security branch
dated after the correction date.

2) To patch your present system:

a) Download the relevant patch from the location below, and verify the
detached PGP signature using your PGP utility.

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:06/ipv6.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:06/ipv6.patch.asc

b) Execute the following commands as root:

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

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

d) Install updated kernel headers.

# cd /usr/src/include
# 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_2
  src/UPDATING                                                 1.282.2.12
  src/sys/netinet6/ip6_output.c                                  1.71.2.2
  src/sys/netinet/ip6.h                                          1.10.2.1
  src/sys/conf/newvers.sh                                       1.56.2.11
- -------------------------------------------------------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQFAaC6kFdaIBMps37IRAiCBAJ9ATb8FTKysuJvwlU8E0YOArWwP1gCcCCpw
rK7VXiZuLwD1zZmBepSHCt4=
=FLqJ
-----END PGP SIGNATURE-----
_______________________________________________
freebsd-security-notifications@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-security-notifications
To unsubscribe, send any mail to "freebsd-security-notifications-unsubscribe@freebsd.org"

 


Go to the Top of This SecurityTracker Archive Page





Home   |    View Topics   |    Search   |    Contact Us   |    Help

Copyright 2004, SecurityGlobal.net LLC