-----BEGIN PGP SIGNED MESSAGE----- ============================================================================= CERT* Advisory CA-97.23 Original issue date: September 16, 1997 Last revised: September 19, 1997 Appendix A - Added information for OpenBSD and Silicon Graphics, Inc. A complete revision history is at the end of this file. Topic: Buffer Overflow Problem in rdist - ----------------------------------------------------------------------------- The CERT Coordination Center has received reports of a vulnerability in rdist that enables anyone with access to a local account to gain root privileges. This is not the same vulnerability as the one discussed in CA-96.14. Section III.A contains instructions on how to determine if your site is vulnerable. If your implementation of rdist is vulnerable, the CERT/CC team encourages you to follow your vendor's instructions (Sec. III.B and Appendix A) or install a freely available version of the rdist program that is not installed as set-user-id root and is, therefore, not susceptible to the exploitation described in this advisory (Sec. III.C). For information on the earlier problem with rdist, see ftp://info.cert.org/pub/cert_advisories/CA-96.14.rdist_vul We will update this advisory as we receive additional information. Please check our advisory files regularly for updates that relate to your site. - ----------------------------------------------------------------------------- I. Description The rdist program is a UNIX Operating System utility used to distribute files from one host to another. On some systems, rdist opens network connections using a privileged port as the source port. This requires root privileges, and to attain these privileges rdist on such systems is installed set-user-id root. A new vulnerability has been found in some set-user-id root implementations of rdist. The vulnerability lies in the function expstr(), where macros supplied as arguments are expanded using sprintf(). It is possible to overwrite stack frames and call specially pre-crafted native machine code. If the appropriate machine code is supplied, an attacker can execute arbitrary programs (such as the shell) with set-user-id root privileges. Note that this vulnerability is distinct from that discussed in CERT advisory CA-96.14. II. Impact On systems with a vulnerable copy of rdist, anyone with access to a local account can gain root access. III. Solution We urge you to follow the steps in Section A to determine if your system is vulnerable and, if it is, to turn off rdist while you decide how to proceed. If your system is vulnerable and you need the functionality that rdist provides, you should install a vendor patch (Section B). Until you can do so, you may want to use a freely available version of rdist that does not need to be installed as set-user-id root and is, therefore, not susceptible to the exploitation described in this advisory (Section C). A. How to check for set-user-id root versions of rdist To find set-user-id root versions of rdist and to disable the programs that are possibly vulnerable, use the following find command or a variant. Consult your local system documentation to determine how to tailor the find program on your system. You will need to run the find command on each system you maintain because the command examines files on the local disk only. Substitute the names of your local file systems for FILE_SYSTEM_NAMES in the example. Example local file system names are /, /usr, and /var. You must do this as root. Note that this is one long command, though we have separated it onto three lines using backslashes. find FILE_SYSTEM_NAMES -xdev -type f -user root \ -name '*rdist*' -perm -04000 -exec ls -l '{}' \; \ -ok chmod 0500 '{}' \; This command will find all files on a system that - are only in the file system you name (FILE_SYSTEM_NAMES -xdev) - are regular files (-type f) - are owned by root (-user root) - have "rdist" as a component of the name (-name '*rdist*') - are setuid (-perm -04000) Once found, those files will - have their names and details printed (-exec ls -l '{}') - have the setuid mode removed (making the file available only to root) but only if you type `y' in response to the prompt (-ok chmod 0500 '{}' \;) B. Obtain and install the appropriate patch Below is a list of vendors who have provided information for this advisory. Details are in Appendix A, and we will update the appendix as we receive more information. Berkeley Software Design, Inc. (BSDI) Digital Equipment Corp. FreeBSD, Inc. Hewlett-Packard Company IBM Corporation NEC Corporation The Santa Cruz Operation, Inc. (SCO) Siemens-Nixdorf Silicon Graphics Inc. (SGI) Sun Microsystems, Inc. If your vendor's name is not on this list, please contact the vendor directly. C. If you need the functionality that rdist provides but a patched version is not yet available from your vendor, consider installing rdist-6.1.3, which is freely available from ftp://usc.edu/pub/rdist/rdist-6.1.3.tar.gz MD5 (rdist-6.1.3.tar.gz) = 8a76b880b023c5e648b7cb77b9608b9f The README file in the distribution explains how to configure and install this version of rdist. We recommend that you configure this version of rdist to use rsh instead of rcmd. Here is the relevant text from the README: By default rdist uses rsh(1c) to make connections to remote hosts. This has the advantage that rdist does not need to be setuid to "root". This eliminates most potential security holes. It has the disadvantage that it takes slightly more time for rdist to connect to a remote host due to the added overhead of doing a fork() and then running the rsh(1c) command. Some sites with sufficient expertise use the ssh program in conjunction with rdist, instead of using rcmd or rsh. If you have the expertise, you may want to implement this configuration. For further details on this option see "Ssh (Secure Shell) FAQ - Frequently asked questions," Section 4.4, "Can I use rdist with ssh?" It is available from http://www.uni-karlsruhe.de/~ig25/ssh-faq/ssh-faq-4.html For details on how to obtain ssh, see FAQ Section 3.4, "Where can I obtain ssh?" This section can be found in http://www.uni-karlsruhe.de/~ig25/ssh-faq/ssh-faq-3.html ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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) ===================================== BSDI shipped a patch for this for our 2.1 release (U210-018) when the original Bugtraq advisory was released. The 3.0 version of rdist is not vulnerable and in fact is no longer even setuid. Digital Equipment Corp. ======================= This reported problem is not present for Digital's ULTRIX or Digital UNIX Operating Systems Software. DIGITAL EQUIPMENT CORPORATION ----------------------------- FreeBSD, Inc. ============= 2.1.0 is vulnerable. 2.1.5, 2.1.6 and 2.1.7 are and 2.1-stable are not. In any case, upgrading to 2.1.7 or even better, 2.1-stable should be considered. If there is demand, we'll release a patch for 2.1.0 All 2.2 releases, 2.2-stable and FreeBSD-current are not vulnerable. Hewlett-Packard Company ======================= HP is -not- vulnerable; the problem didn't exist in 9.X, and has been fixed in 10.X with Security Bulletin #36 (HPSBUX9608-036) last year. Patch numbers change frequently because of cumulative patching, so please check current patch ID information either by bulletin or by platform/release at our HP Electronic Support Center in the "Security Patch Matrix," which is updated every 24 hours. 1) From your Web browser, access the URL: http://us-support.external.hp.com (US,Canada,Asia-Pacific, and Latin-America) http://europe-support.external.hp.com (Europe) 2) On the HP Electronic Support Center main screen, select the hyperlink "Support Information Digests". 3) On the "Welcome to HP's Support Information Digests" screen, under the heading "Register Now", select the appropriate hyperlink "Americas and Asia-Pacific", or "Europe". 4) On the "New User Registration" screen, fill in the fields for the User Information and Password and then select the button labeled "Submit New User". 5) On the "User ID Assigned" screen, select the hyperlink "Support Information Digests". **Note what your assigned user ID and password are for future reference. 6) You should now be on the "HP Support Information Digests Main" screen. You might want to verify that your email address is correct as displayed on the screen. From this screen, you may also view/subscribe to the digests, including the security bulletins digest. To get a patch matrix of current HP-UX and BLS security patches referenced by either Security Bulletin or Platform/OS, click on following screens in order: Technical Knowledge Database Browse the HP Security Bulletins Archive HP-UX Security Patch Matrix IBM Corporation =============== All versions of AIX are vulnerable to this buffer overflow. There is no 3.2 fix. It is recommended that 3.2 customers upgrade to a higher level. The following APARs will be available for AIX version 4 soon. AIX 3.2: upgrade to 4.1.5 or higher AIX 4.1: IX70876 AIX 4.2: IX70875 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. NEC Corporation =============== The following systems are NOT affected by this vulnerability: UX/4800 UX/4800(64) EWS-UX/V(Rel4.2MP) EWS-UX/V(Rel4.2) UP-UX/V(Rel4.2MP) To report a new vulnerability, contact . OpenBSD ======= OpenBSD does not have this problem. None of the versions of rdist distributed are setuid or setgid. The Santa Cruz Operation, Inc. (SCO) ==================================== SCO has determined that the following SCO operating systems are not vulnerable: - SCO CMW+ 3.0 - SCO Open Desktop/Open Server 3.0 - SCO OpenServer 5.0 - SCO UnixWare 2.1 Siemens-Nixdorf Informationssysteme AG ====================================== Siemens-Nixdorf does not ship rdist. Silicon Graphics Inc. (SGI) =========================== Silicon Graphics Inc. issued Security Advisory, "IRIX ordist Buffer Overrun Vulnerability," 19970509-02-PX, August 5, 1997. Patches are available via anonymous FTP and your service/support provider. 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. For subscribing to the wiretap mailing list and other SGI security related information, please refer to the Silicon Graphics Security Headquarters website located at: http://www.sgi.com/Support/security/security.html Sun Microsystems, Inc. ====================== We are producing patches. - ----------------------------------------------------------------------------- The CERT Coordination Center thanks Hiroshi Nakano of Ryukoku University, Japan for reporting this problem. We also thank Wolfgang Ley of DFN-CERT for his assistance with the Solutions section of the advisory. - ----------------------------------------------------------------------------- If you believe that your system has been compromised, contact the CERT Coordination Center or your representative in the Forum of Incident Response and Security Teams (see http://www.first.org/team-info/). CERT/CC Contact Information - ---------------------------- Email cert@cert.org Phone +1 412-268-7090 (24-hour hotline) CERT personnel answer 8:30-5:00 p.m. EST(GMT-5) / EDT(GMT-4) and are on call for emergencies during other hours. Fax +1 412-268-6989 Postal address CERT Coordination Center Software Engineering Institute Carnegie Mellon University Pittsburgh PA 15213-3890 USA Using encryption We strongly urge you to encrypt sensitive information sent by email. We can support a shared DES key or PGP. Contact the CERT/CC for more information. Location of CERT PGP key ftp://info.cert.org/pub/CERT_PGP.key Getting security information CERT publications and other security information are available from http://www.cert.org/ ftp://info.cert.org/pub/ CERT advisories and bulletins are also posted on the USENET newsgroup comp.security.announce To be added to our mailing list for advisories and bulletins, send email to cert-advisory-request@cert.org In the subject line, type SUBSCRIBE your-email-address - --------------------------------------------------------------------------- Copyright 1997 Carnegie Mellon University. Conditions for use, disclaimers, and sponsorship information can be found in http://www.cert.org/legal_stuff.html and ftp://info.cert.org/pub/legal_stuff . If you do not have FTP or web access, send mail to cert@cert.org with "copyright" in the subject line. *CERT is registered in the U.S. Patent and Trademark Office. - --------------------------------------------------------------------------- This file: ftp://info.cert.org/pub/cert_advisories/CA-97.23.rdist http://www.cert.org click on "CERT Advisories" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Revision history Sept. 15, 1997 - Appendix A - added information for OpenBSD and Silicon Graphics, Inc. -----BEGIN PGP SIGNATURE----- Version: 2.6.2 iQCVAwUBNCK8EnVP+x0t4w7BAQHlOAQApwzrHvv0g8Cp4zH/KjduVJtEsFBxVa6Z umUXZLPvVK53GzHozFsEubwC8WG++pG9jdv24xcsRt6PYqu0hLk9lJurVRrPzqkw xTExe4iePnsTaCUN3V71kipcw9oWMkmbQys/QcfnMm2NkFd8OJSxzFdeGoCrqNgu X4hbOsk/4yw= =Lyta -----END PGP SIGNATURE-----