[LWN Logo]
[LWN.net]
Date:         Tue, 10 Apr 2001 21:41:12 -0500
From: Progeny Security Team <security@PROGENY.COM>
Subject:      PROGENY-SA-2001-01A: [UPDATE] execve()/ptrace() exploit in Linux
To: BUGTRAQ@SECURITYFOCUS.COM

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


 ---------------------------------------------------------------------------
 PROGENY LINUX SYSTEMS -- SECURITY ADVISORY              PROGENY-SA-2001-01A
 ---------------------------------------------------------------------------

    Topic:          execve()/ptrace() exploit in Linux kernels prior to
                    2.2.19

    Category:       kernel
    Module:         kernel-image-2.2.*
    Announced:      2001-04-10
    Credits:        Wojciech Purczynski <wp@elzabsoft.pl>
                    BUGTRAQ <BUGTRAQ@securityfocus.com>
                    Solar Designer <solar@openwall.com>
    Affects:        Progeny Debian (Linux kernels prior to 2.2.19)
                    Debian GNU/Linux (Linux kernels prior to 2.2.19)
    Vendor-Status:  New Version Released (kernel 2.2.19)
    Corrected:      2001-04-02
    Progeny Only:   NO

    $Id: PROGENY-SA-2001-01,v 1.13 2001/04/10 23:19:36 laz Exp $

 ---------------------------------------------------------------------------


UPDATE SYNOPSIS

This is an update to advisory PROGENY-SA-2001-01.  The sources.list line
specified in Step 1 of the "UPDATING VIA APT-GET" section in the previous
advisory was incorrect.  This advisory fixes the error.


SYNOPSIS

Linux kernels before 2.2.19 are vulnerable to a local root exploit.


PROBLEM DESCRIPTION

This vulnerability exploits a race condition in the 2.2.x Linux kernel
within the execve() system call.

By predicting the child-process sleep() within execve(), an attacker
can use ptrace() or similar mechanisms to subvert control of the child
process.  If the child process is setuid, the attacker can cause the
child process to execute arbitrary code at an elevated privilege.

There are also other known lesser security issues with Linux kernels prior
to 2.2.19 which have been noted as fixed in the solution listed below.
Details can be found in the Security Updates section at:

    http://www.linux.org.uk/VERSION/relnotes.2219.html


IMPACT

Local users can use available exploits to gain root privileges.


SOLUTION

Upgrade to Linux kernel 2.2.19.  You may use Progeny's kernel-image-2.2.19
package, version 1.81, for convenience.


WORKAROUND

No known workaround exists for this vulnerability.


UPDATING VIA APT-GET

 1. Ensure that your /etc/apt/sources.list file has a URI for Progeny's
    update repository:

        deb http://archive.progeny.com/progeny updates/newton/

 2. Update your cache of available packages for apt(8).

    Example:

        # apt-get update

 3. Using apt(8), install the new kernel package.  apt(8) will download
    the update, verify it's integrity with md5, and then install the
    package on your system with dpkg(8).

    Example:

        # apt-get install kernel-image-2.2.19

 4. Since this update installs a new kernel, the security fixes cannot
    take effect until you reboot the system.  When convenient, restart
    your system to start using the new kernel.

    Example:

        # shutdown -r now


UPDATING VIA DPKG

 1. Using your preferred FTP/HTTP client to retrieve the following
    updated files from Progeny's update archive at:

    http://archive.progeny.com/progeny/updates/newton/

    Filename                             MD5 Checksum
    ------------------------------------ --------------------------------
    kernel-image-2.2.19_1.81_i386.deb    f72c383e22a064ec394cff50a84ab789

    Example:

        # wget http://archive.progeny.com/progeny/updates/newton/kernel-image-2.2.19_1.81_i386.deb

 2. Use the md5sum command on the retrieved file to verify that it matches
    the md5sum provided in this advisory:

    Example:

        # md5sum kernel-image-2.2.19_1.81_i386.deb

 3. Then install the replacement package(s) using the dpkg command.

    Example:

        # dpkg --install kernel-image-2.2.19_1.81_i386.deb

 4. Since this update installs a new kernel, the security fixes cannot
    take effect until you reboot the system.  When convenient, restart
    your system to start using the new kernel.

    Example:

        # shutdown -r now


MORE INFORMATION

Linux kernels 2.4.0 and later are not affected by this problem.

 ---------------------------------------------------------------------------


pub  1024D/F92D4D1F 2001-04-04 Progeny Security Team <security@progeny.com>

- -----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.0.4 (GNU/Linux)
Comment: For info see http://www.gnupg.org

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

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.4 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iEYEARECAAYFAjrTvEQACgkQScF9I/ktTR9QMgCfZpcC4uv1T7Zx+5a43UQrs/Db
U8gAnjaNid8pyP2j+6mnIm9t489WC9QZ
=aQxQ
-----END PGP SIGNATURE-----