Articles / SuSE: New kernel packages f…

SuSE: New kernel packages fix remote denial of service

The SUSE Linux Enterprise 11 GA Kernel was updated to 2.6.27.48 fixing various bugs and security issues. The do_gfs2_set_flags function does not verify the ownership of a file, which allows local users to bypass intended access restrictions via a SETFLAGS ioctl request. The nfs_wait_on_request function allows attackers to cause a denial of service (Oops) via unknown vectors related to truncating a file and an operation that is not interruptible. The Linux kernel does not properly handle the export of shmemfs objects by knfsd, which allows attackers to cause a denial of service (NULL pointer dereference and knfsd crash) or possibly have unspecified other impact via unknown vectors. A race condition in the find_keyring_by_name function allows local users to cause a denial of service (memory corruption and system crash) or possibly have unspecified other impact via keyctl session commands that trigger access to a dead keyring that is undergoing deletion by the key_cleanup function. KGDB does not properly perform a security check for access to a kernel page, which allows local users to overwrite arbitrary kernel memory, related to Fsl booke. The release_one_tty function omits certain required calls to the put_pid function, which has unspecified impact and local attack vectors. Updated packages are available from download.opensuse.org.

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

______________________________________________________________________________

                       SUSE Security Announcement

       Package:                kernel
       Announcement ID:        SUSE-SA:2010:031
       Date:                   Tue, 20 Jul 2010 11:00:00 +0000
       Affected Products:      openSUSE 11.1
                               SUSE Linux Enterprise High Availability Extension 11
                               SUSE Linux Enterprise Desktop 11
                               SUSE Linux Enterprise Server 11
       Vulnerability Type:     remote denial of service
       CVSS v2 Base Score:     7.8 (AV:N/AC:L/Au:N/C:N/I:N/A:C)
       SUSE Default Package:   yes
       Cross-References:       CVE-2009-1389, CVE-2009-4537, CVE-2010-1087
                               CVE-2010-1162, CVE-2010-1437, CVE-2010-1446
                               CVE-2010-1641, CVE-2010-1643

   Content of This Advisory:
       1) Security Vulnerability Resolved:
            Linux kernel security update
          Problem Description
       2) Solution or Work-Around
       3) Special Instructions and Notes
       4) Package Location and Checksums
       5) Pending Vulnerabilities, Solutions, and Work-Arounds:
           See SUSE Security Summary Report.
       6) Authenticity Verification and Additional Information

______________________________________________________________________________

1) Problem Description and Brief Discussion

  The SUSE Linux Enterprise 11 GA Kernel was updated to 2.6.27.48 fixing
  various bugs and security issues.

  CVE-2010-1641: The do_gfs2_set_flags function in fs/gfs2/file.c in the
  Linux kernel does not verify the ownership of a file, which allows
  local users to bypass intended access restrictions via a SETFLAGS
  ioctl request.

  CVE-2010-1087: The nfs_wait_on_request function in fs/nfs/pagelist.c in
  the Linux kernel allows attackers to cause a denial of service (Oops)
  via unknown vectors related to truncating a file and an operation
  that is not interruptible.

  CVE-2010-1643: mm/shmem.c in the Linux kernel, when strict overcommit
  is enabled, does not properly handle the export of shmemfs objects
  by knfsd, which allows attackers to cause a denial of service (NULL
  pointer dereference and knfsd crash) or possibly have unspecified
  other impact via unknown vectors.

  CVE-2010-1437: Race condition in the find_keyring_by_name function
  in security/keys/keyring.c in the Linux kernel allows local users
  to cause a denial of service (memory corruption and system crash)
  or possibly have unspecified other impact via keyctl session commands
  that trigger access to a dead keyring that is undergoing deletion by
  the key_cleanup function.

  CVE-2010-1446: arch/1/mm/fsl_booke_mmu.c in KGDB in the Linux kernel,
  when running on PowerPC, does not properly perform a security check
  for access to a kernel page, which allows local users to overwrite
  arbitrary kernel memory, related to Fsl booke.

  CVE-2010-1162: The release_one_tty function in drivers/char/tty_io.c in
  the Linux kernel omits certain required calls to the put_pid function,
  which has unspecified impact and local attack vectors.

  CVE-2009-4537: drivers/net/r8169.c in the r8169 driver in the Linux
  kernel does not properly check the size of an Ethernet frame that
  exceeds the MTU, which allows remote attackers to (1) cause a denial
  of service (temporary network outage) via a packet with a crafted size,
  in conjunction with certain packets containing A characters and certain
  packets containing E characters; or (2) cause a denial of service
  (system crash) via a packet with a crafted size, in conjunction with
  certain packets containing '0' characters, related to the value of the
  status register and erroneous behavior associated with the RxMaxSize
  register. NOTE: this vulnerability exists because of an incorrect
  fix for CVE-2009-1389. Code execution might be possible.

2) Solution or Work-Around

  There is no known workaround, please install the update packages.

3) Special Instructions and Notes

  Please reboot the machine after installing the update.

4) Package Location and Checksums

  The preferred method for installing security updates is to use the YaST
  Online Update (YOU) tool. YOU detects which updates are required and
  automatically performs the necessary steps to verify and install them.
  Alternatively, download the update packages for your distribution manually
  and verify their integrity by the methods listed in Section 6 of this
  announcement. Then install the packages using the command

    rpm -Fhv <file.rpm>

  to apply the update, replacing <file.rpm> with the filename of the
  downloaded RPM package.


  x86 Platform:

  openSUSE 11.1:
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-debug-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-debug-base-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-debug-extra-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-default-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-default-base-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-default-extra-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-pae-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-pae-base-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-pae-extra-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-source-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-syms-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-trace-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-trace-base-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-trace-extra-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-vanilla-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-xen-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-xen-base-2.6.27.48-0.1.1.i586.rpm
  http://download.opensuse.org/update/11.1/rpm/i586/kernel-xen-extra-2.6.27.48-0.1.1.i586.rpm

  Platform Independent:

  openSUSE 11.1:
  http://download.opensuse.org/update/11.1/rpm/noarch/kernel-docs-2.6.3-3.13.109.noarch.rpm

  Power PC Platform:

  openSUSE 11.1:
  http://download.opensuse.org/update/11.1/rpm/ppc/kernel-default-2.6.27.48-0.1.1.ppc.rpm
  http://download.opensuse.org/update/11.1/rpm/ppc/kernel-default-base-2.6.27.48-0.1.1.ppc.rpm
  http://download.opensuse.org/update/11.1/rpm/ppc/kernel-default-extra-2.6.27.48-0.1.1.ppc.rpm
  http://download.opensuse.org/update/11.1/rpm/ppc/kernel-kdump-2.6.27.48-0.1.1.ppc.rpm
  http://download.opensuse.org/update/11.1/rpm/ppc/kernel-ppc64-2.6.27.48-0.1.1.ppc.rpm
  http://download.opensuse.org/update/11.1/rpm/ppc/kernel-ppc64-base-2.6.27.48-0.1.1.ppc.rpm
  http://download.opensuse.org/update/11.1/rpm/ppc/kernel-ppc64-extra-2.6.27.48-0.1.1.ppc.rpm
  http://download.opensuse.org/update/11.1/rpm/ppc/kernel-ps3-2.6.27.48-0.1.1.ppc.rpm
  http://download.opensuse.org/update/11.1/rpm/ppc/kernel-source-2.6.27.48-0.1.1.ppc.rpm
  http://download.opensuse.org/update/11.1/rpm/ppc/kernel-syms-2.6.27.48-0.1.1.ppc.rpm
  http://download.opensuse.org/update/11.1/rpm/ppc/kernel-vanilla-2.6.27.48-0.1.1.ppc.rpm

  x86-64 Platform:

  openSUSE 11.1:
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-debug-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-debug-base-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-debug-extra-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-default-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-default-base-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-default-extra-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-source-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-syms-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-trace-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-trace-base-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-trace-extra-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-vanilla-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-xen-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-xen-base-2.6.27.48-0.1.1.x86_64.rpm
  http://download.opensuse.org/update/11.1/rpm/x86_64/kernel-xen-extra-2.6.27.48-0.1.1.x86_64.rpm

  Sources:

  openSUSE 11.1:
  http://download.opensuse.org/update/11.1/rpm/src/kernel-debug-2.6.27.48-0.1.1.nosrc.rpm
  http://download.opensuse.org/update/11.1/rpm/src/kernel-default-2.6.27.48-0.1.1.nosrc.rpm
  http://download.opensuse.org/update/11.1/rpm/src/kernel-docs-2.6.3-3.13.109.src.rpm
  http://download.opensuse.org/update/11.1/rpm/src/kernel-kdump-2.6.27.48-0.1.1.nosrc.rpm
  http://download.opensuse.org/update/11.1/rpm/src/kernel-pae-2.6.27.48-0.1.1.nosrc.rpm
  http://download.opensuse.org/update/11.1/rpm/src/kernel-ppc64-2.6.27.48-0.1.1.nosrc.rpm
  http://download.opensuse.org/update/11.1/rpm/src/kernel-ps3-2.6.27.48-0.1.1.nosrc.rpm
  http://download.opensuse.org/update/11.1/rpm/src/kernel-source-2.6.27.48-0.1.1.src.rpm
  http://download.opensuse.org/update/11.1/rpm/src/kernel-syms-2.6.27.48-0.1.1.src.rpm
  http://download.opensuse.org/update/11.1/rpm/src/kernel-trace-2.6.27.48-0.1.1.nosrc.rpm
  http://download.opensuse.org/update/11.1/rpm/src/kernel-vanilla-2.6.27.48-0.1.1.nosrc.rpm
  http://download.opensuse.org/update/11.1/rpm/src/kernel-xen-2.6.27.48-0.1.1.nosrc.rpm

  Our maintenance customers are notified individually. The packages are
  offered for installation from the maintenance web:

  SLE 11 SERVER Unsupported Extras
    http://download.novell.com/patch/finder/?keywords=7c255bf89525f242ab9deddcf14e6517
    http://download.novell.com/patch/finder/?keywords=34efb3de15e5405c1817c287028a50e3
    http://download.novell.com/patch/finder/?keywords=6a5b519e1125164aefd647adb31ccec8
    http://download.novell.com/patch/finder/?keywords=3c314aa8e3d1c4878e06108d767c18da
    http://download.novell.com/patch/finder/?keywords=1a1e84bdf877ca5c38ecac3616374922

  SUSE Linux Enterprise Server 11
    http://download.novell.com/patch/finder/?keywords=c8a29eec659b0b2b3e85c610b67beacd
    http://download.novell.com/patch/finder/?keywords=f73f22d4b713e9a7674cc8c4eebf91dd
    http://download.novell.com/patch/finder/?keywords=2959a2080579b86be5f71889c23098f9
    http://download.novell.com/patch/finder/?keywords=99ed0d9e003dfe8866db7105d4850a09
    http://download.novell.com/patch/finder/?keywords=66504af0afe753b5175112b44bc8827d

  SUSE Linux Enterprise Desktop 11
    http://download.novell.com/patch/finder/?keywords=c8a29eec659b0b2b3e85c610b67beacd
    http://download.novell.com/patch/finder/?keywords=66504af0afe753b5175112b44bc8827d

  SUSE Linux Enterprise High Availability Extension 11
    http://download.novell.com/patch/finder/?keywords=c8a29eec659b0b2b3e85c610b67beacd
    http://download.novell.com/patch/finder/?keywords=f73f22d4b713e9a7674cc8c4eebf91dd
    http://download.novell.com/patch/finder/?keywords=2959a2080579b86be5f71889c23098f9
    http://download.novell.com/patch/finder/?keywords=99ed0d9e003dfe8866db7105d4850a09
    http://download.novell.com/patch/finder/?keywords=66504af0afe753b5175112b44bc8827d

______________________________________________________________________________

5) Pending Vulnerabilities, Solutions, and Work-Arounds:

  See SUSE Security Summary Report.
______________________________________________________________________________

6) Authenticity Verification and Additional Information

 - Announcement authenticity verification:

   SUSE security announcements are published via mailing lists and on Web
   sites. The authenticity and integrity of a SUSE security announcement is
   guaranteed by a cryptographic signature in each announcement. All SUSE
   security announcements are published with a valid signature.

   To verify the signature of the announcement, save it as text into a file
   and run the command

     gpg --verify <file>

   replacing <file> with the name of the file where you saved the
   announcement. The output for a valid signature looks like:

     gpg: Signature made <DATE> using RSA key ID 3D25D3D9
     gpg: Good signature from "SuSE Security Team <security@suse.de>"

   where <DATE> is replaced by the date the document was signed.

   If the security team's key is not contained in your key ring, you can
   import it from the first installation CD. To import the key, use the
   command

     gpg --import gpg-pubkey-3d25d3d9-36e12d04.asc

 - Package authenticity verification:

   SUSE update packages are available on many mirror FTP servers all over the
   world. While this service is considered valuable and important to the free
   and open source software community, the authenticity and the integrity of
   a package needs to be verified to ensure that it has not been tampered
   with.

   The internal rpm package signatures provide an easy way to verify the
   authenticity of an RPM package. Use the command

    rpm -v --checksig <file.rpm>

   to verify the signature of the package, replacing <file.rpm> with the
   filename of the RPM package downloaded. The package is unmodified if it
   contains a valid signature from build@suse.de with the key ID 9C800ACA.

   This key is automatically imported into the RPM database (on
   RPMv4-based distributions) and the gpg key ring of 'root' during
   installation. You can also find it on the first installation CD and at
   the end of this announcement.

 - SUSE runs two security mailing lists to which any interested party may
   subscribe:

   opensuse-security@opensuse.org
       -   General Linux and SUSE security discussion.
           All SUSE security announcements are sent to this list.
           To subscribe, send an e-mail to
               <opensuse-security+subscribe@opensuse.org>.

   opensuse-security-announce@opensuse.org
       -   SUSE's announce-only mailing list.
           Only SUSE's security announcements are sent to this list.
           To subscribe, send an e-mail to
               <opensuse-security-announce+subscribe@opensuse.org>.

   =====================================================================
   SUSE's security contact is <security@suse.com> or <security@suse.de>.
   The <security@suse.de> public key is listed below.
   =====================================================================
______________________________________________________________________________

   The information in this advisory may be distributed or reproduced,
   provided that the advisory is not modified in any way. In particular, the
   clear text signature should show proof of the authenticity of the text.

   SUSE Linux Products GmbH provides no warranties of any kind whatsoever
   with respect to the information contained in this security advisory.

Type Bits/KeyID     Date       User ID
pub  2048R/3D25D3D9 1999-03-06 SuSE Security Team <security@suse.de>
pub  1024D/9C800ACA 2000-10-19 SuSE Package Signing Key <build@suse.de>

- -----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.2 (GNU/Linux)

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
=ypVs
- -----END PGP PUBLIC KEY BLOCK-----

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.15 (GNU/Linux)

iQEVAwUBTEW3OXey5gA9JdPZAQKoRwf/ahabRdiegya4XabKBILQm29MJ0WcEZPm
K0fonvJw9Q/Fnb/tiyITDBoawDeQ4vWPzuVGAdOf2B8PLJk/4P3t9RpOiro/zOtp
w87ryBMXW04WI0k7ceUL3h70eqGr2RNcyTlL8NAshP11RZhKTOI3jASl9Wmqcz4P
OZORc9l1DudlGrTDn8LK7pqcjLlRLNBEDHGK569+CljPM7wO3caH29QA8VyueOUF
8b8OooE5SzBd4gTW3xY7r3i8fbPWAiFkxSOk146Hi9DPdEOgQtEi3ntw8gx5ZDI2
buKKmjYgnUo6VctHkSLvp9rwHcE6sIIk8S5T2jofYXTlmzJ6Hih4yw==
=LuAi
-----END PGP SIGNATURE-----
Screenshot

Project Spotlight

Kigo Video Converter Ultimate for Mac

A tool for converting and editing videos.

Screenshot

Project Spotlight

Kid3

An efficient tagger for MP3, Ogg/Vorbis, and FLAC files.