---

SUSE Linux Advisory: Linux Kernel (x86_64, AMD64)


SUSE Security Announcement

Package: Linux Kernel (x86_64, AMD64)
Announcement-ID: SuSE-SA:2004:003
Date: Monday, Jan 15th 2004 14:17 MET
Affected products: 9.0 SuSE Linux Enterprise Server 8,
Vulnerability Type: local system compromise
Severity (1-10): 6
SUSE default package: yes
Cross References:  

Content of this advisory:

  1. security vulnerability resolved:
    • incorrect bounds checking in mremap()
    • inproper CPU register access check in 32bit ptrace() problem
      description, discussion, solution and upgrade information
  2. pending vulnerabilities, solutions, workarounds:
    • ethereal
    • mc
    • mod_gzip
    • tripwire
    • cvs
    • gnome-filesystem
    • XDM (XFree86, xf86)
    • 3ddiag
    • mod_auth_shadow
  3. standard appendix (further information)

1) problem description, brief discussion, solution, upgrade
information

The do_mremap() function of the Linux Kernel is used to manage
(move, resize) Virtual Memory Areas (VMAs). By exploiting an
incorrect bounds check in do_mremap() during the remapping of
memory it is possible to create a VMA with the size of 0. In normal
operation do_mremap() leaves a memory hole of one page and creates
an additional VMA of two pages. In case of exploitation no hole is
created but the new VMA has a 0 bytes length. The Linux Kernel’s
memory management is corrupted from this point and can be abused by
local users to gain root privileges.

Additionally Andi Kleen of SUSE LINUX found and fixed another
bug in the 32bit emulation of ptrace() which allows to modify CPU
registers from user-space to get full access to system
ressources.

There is no temporary workaround for this bug.

Please reboot your system to run the new kernel.

AMD64 Platform:

SuSE-9.0:

ftp://ftp.suse.com/pub/suse/x86_64/update/9.0/rpm/x86_64/k_deflt-2.4.21-178.x86_64.rpm

4896825f6399bebc80073dbbd74432cd
source rpm(s):

ftp://ftp.suse.com/pub/suse/x86_64/update/9.0/rpm/src/k_deflt-2.4.21-178.src.rpm

e9afc5cbb5fc1dddb53e179a52d45f0a

ftp://ftp.suse.com/pub/suse/x86_64/update/9.0/rpm/x86_64/k_smp-2.4.21-178.x86_64.rpm

8b7667ac6baf4aebd4961274cbdaa84e
source rpm(s):

ftp://ftp.suse.com/pub/suse/x86_64/update/9.0/rpm/src/k_smp-2.4.21-178.src.rpm

ffc25e3c1b9a4ed4e5182ff5cbdd5c18

ftp://ftp.suse.com/pub/suse/x86_64/update/9.0/rpm/x86_64/kernel-source-2.4.21-178.x86_64.rpm

9422ec31eb76d26a1dfaca8fb8542907
source rpm(s):

ftp://ftp.suse.com/pub/suse/x86_64/update/9.0/rpm/src/kernel-source-2.4.21-178.src.rpm

8acc26621600cc7411f964656c435389


2) Pending vulnerabilities in SUSE Distributions and
Workarounds:

  • ethereal Two remotely exploitable denial-of-service attacks
    were found in the network analyzer ethereal. New packages are
    available on our FTP servers.
  • mc By using a special combination of links in archive-files it
    is possible to execute arbitrary commands while mc tries to open it
    in its VFS. The packages will be released soon.
  • mod_gzip (apache-contrib) The apache module mod_gzip is
    vulnerable to remote code execution while running in debug-mode. We
    do not ship this module in debug-mode but future versions will
    include the fix. Additionally the mod_gzip code was audited to fix
    more possible security related bugs. After more testing a new
    apache-contrib RPM package will be released.
  • tripwire Tripwire is a file integrity checker. The tripwire
    version on SuSE Linux 8.2 and 9.0 do crash when a requested file
    does not exists. New packages will be available soon.
  • cvs The cvs server-side can be tricked to create files in the
    root filesystem of the server by requesting malformed modules. The
    permissions on the root filesystem normally prevent this
    malfunction. Additionally the package will include a fix for a
    format-string bug. New packages are available on our FTP
    servers.
  • gnome-filesystem A script included in the gnome-filesystem
    package handles temporary files insecurely. This script is called
    by YaST2 with root privileges. The bug can be exploited locally to
    create or overwrite arbitrary files in the filesystem. The bug is
    fixed in our current source-tree since November 2003. New packages
    are available on our FTP servers.
  • XDM (XFree86, xf86) A missing check for failure conditions in
    the PAM code of XDM can lead to local root access in conjunction
    with Kerberos and alike. New packages will be released soon.
  • 3ddiag Some 3ddiag scripts handle temporary files in an
    insecure manner. Thanks to Stefan Nordhausen <nordhaus at
    informatik.hu-berlin.de/>
    for reporting some of the issues. New packages will be available on
    our FTP servers soon.
  • mod_auth_shadow (apache-contrib) This apache module ignores
    account expiration dates. The update will be released together with
    mod_gzip.

3) standard appendix: authenticity verification, additional
information

  • Package authenticity verification:

SUSE update packages are available on many mirror ftp servers
all over the world. While this service is being considered valuable
and important to the free and open source software community, many
users wish to be sure about the origin of the package and its
content before installing the package. There are two verification
methods that can be used independently from each other to prove the
authenticity of a downloaded file or rpm package:

  1. md5sums as provided in the (cryptographically signed)
    announcement.
  2. using the internal gpg signatures of the rpm package.
  3. execute the command md5sum <name-of-the-file.rpm> after
    you downloaded the file from a SUSE ftp server or its mirrors.
    Then, compare the resulting md5sum with the one that is listed in
    the announcement. Since the announcement containing the checksums
    is cryptographically signed (usually using the key security@suse.de), the checksums show
    proof of the authenticity of the package. We disrecommend to
    subscribe to security lists which cause the email message
    containing the announcement to be modified so that the signature
    does not match after transport through the mailing list software.
    Downsides: You must be able to verify the authenticity of the
    announcement in the first place. If RPM packages are being rebuilt
    and a new version of a package is published on the ftp server, all
    md5 sums for the files are useless.
  4. 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, where
    <file.rpm> is the filename of the rpm package that you have
    downloaded. Of course, package authenticity verification can only
    target an un-installed rpm package file. Prerequisites:

    1. gpg is installed
    2. The package is signed using a certain key. The public part of
      this key must be installed by the gpg program in the directory
      ~/.gnupg/ under the user’s home directory who performs the
      signature verification (usually root). You can import the key that
      is used by SUSE in rpm packages for SUSE Linux by saving this
      announcement to a file (“announcement.txt”) and running the command
      (do “su -” to be root): gpg –batch; gpg < announcement.txt |
      gpg –import SUSE Linux distributions version 7.1 and thereafter
      install the key “build@suse.de
      upon installation or upgrade, provided that the package gpg is
      installed. The file containing the public key is placed at the
      top-level directory of the first CD (pubring.gpg) and at ftp://ftp.suse.com/pub/suse/pubring.gpg-build.suse.de
      .

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, it is desired that the clear-text signature shows
proof of the authenticity of the text.
SUSE Linux AG makes 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>

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends, & analysis