=====================================================================
                                    CERT-Renater

                         Note d'Information No. 2008/VULN076
_____________________________________________________________________

DATE                      : 25/02/2008

HARDWARE PLATFORM(S)      : /

OPERATING SYSTEM(S)       : Solaris 10 running cpc(3CPC) Sub-System.

======================================================================

Solution Type Sun Alert

Solution  231466: Two Security Vulnerabilities Exist Within the
cpc(3CPC) Sub-System of the Solaris Kernel


Bug ID: 6398097, 6542909
Product: Solaris 10 Operating System
Date of Resolved Release: 14-Feb-2008

SA Document Body
Two Security Vulnerabilities Exist Within the cpc(3CPC) Sub-System
of the Solaris Kernel


1. Impact

    Two security vulnerabilities, both due to separate race conditions
    within the CPU Performance Counters (cpc(3CPC)) sub-system of
    the Solaris kernel, may allow a local unprivileged user to panic
    the system causing a Denial of Service (DoS) condition.


2. Contributing Factors

    These issues can occur in the following releases:

    SPARC Platform:

        * Solaris 10 without patch 127111-08

    x86 Platform:

        * Solaris 10 without patch 127112-08

    Note: These issues do not affect the Solaris 8 and Solaris 9
    Operating Systems.


3. Symptoms

    If the described issues occur, the system may panic with strings
    similar to one of the following:

    For BugID 6398097: Panic in kcpc_unbind():

    1. First, execute the following command:

       # echo "::status !grep panic" |mdb unix.0 vmcore.0

       the output should show a BAD TRAP panic message similar to
       the following:

       BAD TRAP: type=34 rp=2a100f9d7c0
       addr=baddcafebaddcb06 mmu_fsr=0

    2. Then execute the following command:

       # echo "*panic_thread::findstack !grep kcpc_unbind"|mdb unix.0 
vmcore.0

       the output should show the kcpc_unbind function displayed,
       as in the following example:

       000002a100f9d061 kcpc_unbind+0x28()


    For BugID 6542909:  race condition between kcpc_restore() and
    kcpc_unbind():

    1. First, execute the following command:

       # echo "::status !grep panic" |mdb unix.0 vmcore.0

       the output should have a pcbe reference, as in the following example:

       panic message: us_pcbe: bad config on token 327c55dcf38

    2. Then execute the following command:

       # echo "*panic_thread::findstack !grep restorectx" |mdb unix.0 
vmcore.0

       the output should show the restorectx function displayed, as
       in the following example:

       000002a101b4d001 restorectx+0x24()

    Note: by default, crashdumps are written to /var/crash/<uname -n>. See
    dumpadm(1M) for more information.


4. Workaround

    There is no workaround for these issue. Please see the Resolution
    section below.


5. Resolution

    These issues are addressed in the following releases:

    SPARC Platform:

       * Solaris 10 with patch 127111-08 or later

    x86 Platform:

       * Solaris 10 with patch 127112-08 or later


    For more information on Security Sun Alerts, see Sun Infodoc
    91209.

    This Sun Alert notification is being provided to you on an "AS
    IS" basis. This Sun Alert notification may contain information
    provided by third parties. The issues described in this Sun Alert
    notification may or may not impact your system(s). Sun makes no
    representations, warranties, or guarantees as to the information
    contained herein. ANY AND ALL WARRANTIES, EXPRESS OR IMPLIED,
    INCLUDING WITHOUT LIMITATION WARRANTIES OF MERCHANTABILITY,
    FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT, ARE HEREBY
    DISCLAIMED. BY ACCESSING THIS DOCUMENT YOU ACKNOWLEDGE THAT SUN
    SHALL IN NO EVENT BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
    PUNITIVE, OR CONSEQUENTIAL DAMAGES THAT ARISE OUT OF YOUR USE
    OR FAILURE TO USE THE INFORMATION CONTAINED HEREIN. This Sun
    Alert notification contains Sun proprietary and confidential
    information. It is being provided to you pursuant to the provisions
    of your agreement to purchase services from Sun, or, if you do
    not have such an agreement, the Sun.com Terms of Use. This Sun
    Alert notification may only be used for the purposes contemplated
    by these agreements.

    Copyright 2000-2008 Sun Microsystems, Inc., 4150 Network Circle,
    Santa Clara, CA 95054 U.S.A. All rights reserved.


======================================================================

           =========================================================
           Les serveurs de référence du CERT-Renater
           http://www.urec.fr/securite
           http://www.cru.fr/securite
           http://www.renater.fr
           =========================================================
           + CERT-RENATER          | tel : 01-53-94-20-44          +
           + 151 bd de l'Hopital   | fax : 01-53-94-20-41          +
           + 75013 Paris           | email: certsvp@renater.fr     +
           =========================================================




