Vulnerability in the at(1) program

Original issue date: June 12, 1997
Last revised: January 5, 1998
Updated vendor information for Silicon Graphics, Inc.

A complete revision history is at the end of this file.


The CERT Coordination Center has received reports of a buffer overflow condition in some versions of the at(1) program. By carefully specifying the data that overflows this buffer, any user can execute arbitrary commands as root.

The CERT/CC team recommends installing a vendor patch if one is available (see Section III.A). Until you can do so, we recommend disabling at(1) (see Section III.B).

We will update this advisory as we receive additional information. Please check advisory files regularly for updates that relate to your site.


I. Description

The at(1) program can be used by local users to schedule commands to be executed at a later time. When those commands are run, they are run as the user who originally ran at(1). That user will be referred to as the scheduling user.

As a precaution, the scheduling user's list of commands is stored in a file in a directory that is not writable by other users. The file's ownership is changed to that of the scheduling user, and that information is used to define the identity of the process that runs the commands when the appointed time arrives. These measures are intended to prevent other users from changing the scheduling user's list of commands or creating new lists to be executed as another user. To achieve this additional level of security, the at(1) program runs as set-user-id root.

Some versions of at(1) contain a programming defect that can result in a buffer local to at(1) being overflowed. Through the careful specification of the data that overflows this buffer, arbitrary commands can be executed with the identity of at(1) process, root in this case.

II. Impact

Any user with an account on a system that contains a defective version of at(1) can execute programs as root.

III. Solution

A. Install a patch from your vendor

Below is a list of vendors who have provided information about at. Details are in Appendix A of this advisory; we will update the appendix as we receive more information. If your vendor's name is not on this list, the CERT/CC did not hear from that vendor. Please contact your vendor directly.

Berkeley Software Design, Inc. (BSDI)
Cray Research - A Silicon Graphics Company
Data General Corporation
Digital Equipment Corporation
Hewlett-Packard Company
IBM Corporation
NCR Corporation
Santa Cruz Operation, Inc. (SCO)
Silicon Graphics, Inc.
Sun Microsystems, Inc.

B. Until you are able to install the appropriate patch, we recommend the following workaround:

Turn off at(1) by setting its mode to 0. Do the following as root:

# chmod 0 /usr/bin/at

Note that the location of at(1) varies from system to system. Consult your system's documentation for the correct location.

After you turn off the at(1) command, users will not be able to use it. As an alternative to at(1), consider using the crontab(1) command if your system provides it.


Appendix A - Vendor Information

Below is a list of the vendors who have provided information for this advisory. We will update this appendix as we receive additional information. If you do not see your vendor's name, the CERT/CC did not hear from that vendor. Please contact the vendor directly.

Berkeley Software Design, Inc. (BSDI)

No versions of BSD/OS are susceptible to this problem.

Cray Research - A Silicon Graphics Company

Neither Unicos nor Unicos/mk is believed to be vulnerable.

Data General Corporation

No versions of DG/UX are vulnerable to this problem.

Digital Equipment Corporation

Copyright (c) Digital Equipment Corporation 1997. All rights reserved.

Information about this reported problem, and subsequent attempts to reproduce the problem have been unsuccessful for Digital's ULTRIX or Digital UNIX Operating Systems Software. Should further information or testing indicate this problem can be reproduced on Digital's products, a solution will be provided accordingly. At that time Digital will provide notice of the completion/availability of the patches through AES services (DIA, DSNlink FLASH) and be available from your normal Digital Support channel.

DIGITAL EQUIPMENT CORPORATION 6 / 09 / 97

Hewlett-Packard Company

Hewlett Packard has published information relating to this problem in Security Bulletin #00023. It is available from the HP Electronic Support Center. The center's Web page is at

http://us-support.external.hp.com
(for US, Canada, Asia-Pacific, and Latin-America)

http://europe-support.external.hp.com
(for Europe)

IBM Corporation

See the appropriate release below to determine your action.

AIX 3.2

Apply the following fixes to your system:

PTF - U443452 U443486 U444191 U444206 U444213 U444243
APAR - IX60796

To determine if you have these PTFs on your system, run the following commands:

lslpp -lB U443452 U443486 U444191 U444206 U444213 U444243

AIX 4.1

Apply the following fixes to your system:

APAR - IX60894
APAR - IX60890

To determine if you have this APAR on your system, run the following commands:

instfix -ik IX60894
instfix -ik IX60890

Or run the following commands:

lslpp -h bos.rte.cron
lslpp -h bos.rte.libc

Your version of bos.rte.cron should be 4.1.4.8 or later.
Your version of bos.rte.libc should be 4.1.4.18 or later.

AIX 4.2

Apply the following fixes to your system:

APAR - IX60892
APAR - IX61125

To determine if you have this APAR on your system, run the following commands:

instfix -ik IX60892
instfix -ik IX61125

Or run the following commands:

lslpp -h bos.rte.cron
lslpp -h bos.rte.libc

Your version of bos.rte.cron should be 4.2.0.1 or later.
Your version of bos.rte.libc should be 4.2.0.5 or later.

To Order

APARs may be ordered using Electronic Fix Distribution (via FixDist) or from the IBM Support Center. For more information on FixDist, reference URL:

http://service.software.ibm.com/aixsupport/

or send e-mail to aixserv@austin.ibm.com with a subject of "FixDist".

IBM and AIX are registered trademarks of International Business Machines Corporation.

NCR Corporation

The at binary that ships with some NCR MP-RAS SVR4 releases contains a vulnerability that could allow a user to execute random commands as root.

NCR is delivering a set of operating system dependent patches which contain a new version of the at command. Accompanying each patch is a README file which discusses the general purpose of the patch and describes how to apply it to your system.

Recommended solution:

Apply one of the following patches based on your operating system revision:



MP-RAS 3.00.x                  - PBASEI300 (Version after 8/18-97)
MP-RAS 3.01.x                  - PBASEE300 (Version after 8/26-97)
MP-RAS 3.02.x and later        - Not vulnerable

The patches described above provide a new version of the at executable, which fixes the vulnerability.

Santa Cruz Operation, Inc. (SCO)

All SCO operating systems are vulnerable. SCO has made an interim fix available for anonymous ftp:

ftp://ftp.sco.com/SSE/sse007.ltr.Z - cover letter
ftp://ftp.sco.com/SSE/sse007.tar.Z - replacement binaries

The fix includes binaries for the following SCO operating systems:

- SCO CMW+ 3.0
- SCO Open Desktop/Open Server 3.0, SCO UNIX 3.2v4
- SCO OpenServer 5.0
- SCO UnixWare 2.1

Silicon Graphics, Inc.

Silicon Graphics Inc. has investigated the issue and recommends the following steps for neutralizing the exposure. It is HIGHLY RECOMMENDED that these measures be implemented on ALL SGI systems. This issue will be corrected in future releases of IRIX.

For further information, please refer to Silicon Graphics Inc. Security Advisory Number: 19971102-01-PX, "Vulnerability in at(1) program."

The SGI anonymous FTP site is sgigate.sgi.com (204.94.209.1) or its mirror, ftp.sgi.com. Security information and patches can be found in the ~ftp/security and ~ftp/patches directories, respectfully.

Sun Microsystems, Inc.

 
Bulletin Number:        #00160
Date:                   December 3, 1997

Sun security bulletins are available via World Wide Web at:
http://sunsolve.sun.com/sunsolve/secbulletins

The following patches are available in relation to the at problem.

    OS version          Patch ID
    ---------------     ---------
    SunOS 5.5.1         103690-05
    SunOS 5.5.1_x86     103691-05
    SunOS 5.5           103723-05
    SunOS 5.5_x86       103724-05
    SunOS 5.4           102693-05     
    SunOS 5.4_x86       102694-05     
    SunOS 5.3           101572-08

Technical information for this advisory was drawn in part from a posting by Don Farmer to the bugtraq mailing list.
Thanks to Wolfgang Ley of DFN-CERT for his help in developing this advisory.


Copyright 1997 Carnegie Mellon University.


Revision History
Jan. 5, 1998  Updated vendor information for Silicon Graphics, Inc.
Dec. 5, 1997  Updated vendor information for NCR Corporation and Sun
Microsystems, Inc.
Sep. 30, 1997 Updated copyright statement
Aug. 28, 1997 Section III and Appendix A - added vendor information
for NCR Corporation.
Aug. 16, 1997 Appendix A - added Data General information.
July 14, 1997 Appendix A - updated Hewlett-Packard information.
June 25, 1997 Section IIIA and Appendix A - Added vendor information
for Berkeley Software Design, Inc. (BSDI).
June 12, 1997 Section IIIA and Appendix A - Added vendor information
for Digital Equipment Corporation.