__________________________________________________________ The U.S. Department of Energy Computer Incident Advisory Capability ___ __ __ _ ___ / | /_\ / \___ __|__ / \ \___ __________________________________________________________ INFORMATION BULLETIN Unix sendmail vulnerability January 31, 1996 15:00 GMT Number G-09 ________________________________________________________________________________ PROBLEM: Sendmail (prior to Sendmail 8.6.10) contains a vulnerability which allows local and remote users to execute privileged commands PLATFORM: All versions of "sendmail" prior to Version 8.6.10, including Sendmail 5.67+IDA-1.5 and most vendor versions DAMAGE: Local and remote users can gain privileged access SOLUTION: Upgrade to a latest version of Sendmail (current version is 8.7.3) ________________________________________________________________________________ VULNERABILITY This vulnerability is being actively exploited on the Internet ASSESSMENT: ________________________________________________________________________________ The following information has been reprinted from the Automated Systems Security Incident Support Team (ASSIST) 96-603 Bulletin. [START ASSIST BULLETIN] SUMMARY: All versions of "sendmail" prior to Version 8.6.10, including Sendmail 5.67+IDA-1.5 and most vendor versions, contain a vulnerability that could allow unauthorized root access. This vulnerability is being actively exploited on the Internet. BACKGROUND: The vulnerability is exploited through the use of the SMTP "EXPN" and "VRFY" commands offered by all versions of "sendmail." A buffer-overrun problem is present in the implementation of these commands that allows the executable code of the "sendmail" process to be overwritten. This executable code can do anything the author wants, and is run with super-user permissions. This vulnerability was fixed in Sendmail Version 8.6.10, which was released on 21 February 1995. The current version of Sendmail is 8.7.3, which was released on 3 December 1995. The versions of "sendmail" provided by most UNIX workstation vendors are based on Versions 5.64, 5.65, or 5.67. Unless the vendor has taken considerable care to secure their version of "sendmail" (most vendors have not), these versions are vulnerable to this problem. The only vendor version of "sendmail" that has been confirmed as not vulnerable to this problem is the one shipped with Solaris 2.5 (but not earlier versions of Solaris) from Sun Microsystems; this version is based on "sendmail" 8.6.12. The "IDA" version of "sendmail," a popular public domain version that offers enhanced mail delivery and user database features, is based on Version 5.67, and is thus vulnerable to this problem. IMPACT: Successful exploitation of this vulnerability allows an attacker to execute arbitrary commands on the local system with super-user ("root") permissions and gain unrestricted access to system resources. RECOMMENDED SOLUTIONS: There are four possible solutions to this problem: A. Install Sendmail Version 8.7.3. This version of "sendmail" is under active development and offers major improvements, especially in the area of security. Sendmail 8.7.3 is available via the Internet by anonymous FTP from ftp.cs.berkeley.edu (128.32.35.31) in /ucb/sendmail/sendmail.8.7.3.tar.Z. Other information resources for sendmail are the "comp.mail.sendmail" USENET newsgroup and the book "Sendmail," by Bryan Costales, Eric Allman, and Neil Rickert, published by O'Reilly & Associates (http://www.ora.com). Note: While compiling and installing a new version of sendmail is not difficult, , modifying the configuration file (the file that specifies how mail is to be delivered) to work with the new version of the program is often non-trivial. A complete rewrite of the existing configuration file may be required, and this is a process that may require several days at a minimum to complete. Option A is not recommended unless you have extensive UNIX system administration experience. B. Install the "smap" and "smapd" programs on all UNIX systems connected to the Internet. The "smap" program provides a minimal SMTP implementation that accepts mail messages from the network and stores them for later delivery. The "smapd" program periodically runs "sendmail" on these stored messages, and thus "sendmail" is no longer reachable directly from the network and its security vulnerabilities can no longer be exploited. The "smap" and "smapd" programs are part of the Trusted Information Systems (TIS) Firewall Toolkit, available from TIS, Inc. The TIS is available on the Internet via anonymous FTP, you will need the files: /pub/firewalls/toolkit/fwtk.tar.Z and fwtk-doc-only.tar.Z NOTE: Installation of "smap" and "smapd" is relatively simple, but it does represent a significant change in the way electronic mail will be handled at your site. Careful consideration should be given to requirements and installation options, and entensive testing performed prior to site-wide deployment. C. Disable the "EXPN" and "VRFY" commands in your current version of the "sendmail" command. This will prohibit an attacker from exploiting the vulnerability. 1. Sendmail versions 8.6.x or 8.7.x: Sendmail Version 8 provides the "p" configuration file option that allows you to configure the privacy and security features of your "sendmail" process. The format of the option is: Opwhat,what,what where "what" is one of several keywords that enable the various features. By listing the "noexpn" and "novrfy" keywords in this list, you can disable access to the "EXPN" and "VRFY" commands. After adding (or changing) this line in your configuration file, you must kill and restart the "sendmail" daemon. 2. Sendmail versions other than 8.6.x or 8.7.x: Prior to Version 8, there is no way to disable these commands through the configuration file or the command line. However, the commands can be disabled by patching the "sendmail" binary as follows. A. Make a backup copy of the sendmail binary, Patching binary files is not always successful and you will need to be able to recover. # cp -p /usr/lib/sendmail /usr/lib/sendmail.save # chmod 700 /usr/lib/sendmail.save B. Use the "strings" command to find the addresses of the "vrfy" and "expn" command name strings: # strings -o /usr/lib/sendmail | grep vrfy 240248 novrfy 240264 needvrfyhelo 276648 vrfy # strings -o /usr/lib/sendmail | grep expn 240256 noexpn 240280 needexpnhelo 276640 expn 280328 expn NOTE: The output you see may be different, the important information to note are the numbers in front of the "expn" and "vrfy" strings. C. Use "adb" to write a null byte on each of these commands. Note: Use the addresses output by your run of the "strings" command, not the numbers from the example above. # adb -w - /usr/lib/sendmail not core file = /usr/lib/sendmail a$d <-- converts to decimal addresses 276648/w 0 <-- writes zero byte on "vrfy" 0x438a8: 30322 = 0 276640/w 0 <-- writes zero byte on first "expn" 0x438a0: 25976 = 0 280328/w 0 <-- writes zero byte on second "expn" 0x44708: 25976 = 0 ^D <-- CTRL-D exits adb D. Verify the strings were removed: # strings -o /usr/lib/sendmail | grep vrfy 240248 novrfy 240264 needvrfyhelo # strings -o /usr/lib/sendmail | grep expn 240256 noexpn 240280 needexpnhelo E. Kill and restart the "sendmail" daemon. NOTE: Some mail user agents (the programs that users use to read and send mail) rely on the presence of the "VRFY" command which you just disabled. After performing the above steps, test all of the mail programs in use at your site to insure that they still operate correctly. D. Install the appropriate "sendmail" patch from your vendor. At the time this bulletin was issued, most major vendors were working this matter. Some will ship fixes to customers, others will issue patches that will be available for download. ASSIST will be sending out updates to this bulletin as additional information becomes available. <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ASSIST would like to thank the IBM-ERS for information contained in this bulletin. <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> [END ASSIST BULLETIN] ________________________________________________________________________________ CIAC wishes to acknowledge ASSIST and IBM-ERS for providing the information contained in this bulletin. ________________________________________________________________________________ CIAC, the Computer Incident Advisory Capability, is the computer security incident response team for the U.S. Department of Energy (DOE) and the National Institute of Health (NIH). CIAC is located at the Lawrence Livermore National Laboratory in Livermore, California. CIAC is also a founding member of FIRST, the Forum of Incident Response and Security Teams, a global organization established to foster cooperation and coordination among computer security teams worldwide. CIAC services are available to DOE, DOE contractors, and the NIH. CIAC can be contacted at: Voice: +1 510-422-8193 FAX: +1 510-423-8002 STU-III: +1 510-423-2604 E-mail: ciac@llnl.gov For emergencies and off-hour assistance, DOE, DOE contractor sites, and the NIH may contact CIAC 24-hours a day. During off hours (5PM - 8AM PST), call the CIAC voice number 510-422-8193 and leave a message, or call 800-759-7243 (800-SKY-PAGE) to send a Sky Page. CIAC has two Sky Page PIN numbers, the primary PIN number, 8550070, is for the CIAC duty person, and the secondary PIN number, 8550074 is for the CIAC Project Leader. Previous CIAC notices, anti-virus software, and other information are available from the CIAC Computer Security Archive. World Wide Web: http://ciac.llnl.gov/ Anonymous FTP: ciac.llnl.gov (128.115.19.53) Modem access: +1 (510) 423-4753 (14.4K baud) +1 (510) 423-3331 (14.4K baud) CIAC has several self-subscribing mailing lists for electronic publications: 1. CIAC-BULLETIN for Advisories, highest priority - time critical information and Bulletins, important computer security information; 2. CIAC-NOTES for Notes, a collection of computer security articles; 3. SPI-ANNOUNCE for official news about Security Profile Inspector (SPI) software updates, new features, distribution and availability; 4. SPI-NOTES, for discussion of problems and solutions regarding the use of SPI products. Our mailing lists are managed by a public domain software package called ListProcessor, which ignores E-mail header subject lines. To subscribe (add yourself) to one of our mailing lists, send the following request as the E-mail message body, substituting CIAC-BULLETIN, CIAC-NOTES, SPI-ANNOUNCE or SPI-NOTES for list-name and valid information for LastName FirstName and PhoneNumber when sending E-mail to ciac-listproc@llnl.gov: subscribe list-name LastName, FirstName PhoneNumber e.g., subscribe ciac-notes OHara, Scarlett W. 404-555-1212 x36 You will receive an acknowledgment containing address, initial PIN, and information on how to change either of them, cancel your subscription, or get help. PLEASE NOTE: Many users outside of the DOE, ESnet, and NIH computing communities receive CIAC bulletins. If you are not part of these communities, please contact your agency's response team to report incidents. Your agency's team will coordinate with CIAC. The Forum of Incident Response and Security Teams (FIRST) is a world-wide organization. A list of FIRST member organizations and their constituencies can be obtained by sending email to docserver@first.org with an empty subject line and a message body containing the line: send first-contacts. This document was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government nor the University of California nor any of their employees, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Reference herein to any specific commercial products, process, or service by trade name, trademark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement, recommendation or favoring by the United States Government or the University of California. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or the University of California, and shall not be used for advertising or product endorsement purposes. LAST 10 CIAC BULLETINS ISSUED (Previous bulletins available from CIAC) (F-27) Incorrect Permissions on /tmp (F-28) Vulnerability in SunOS 4.1.* Sendmail (-oR option) (G-1) Telnetd Vulnerability (G-2) SunOS 4.1.X Loadmodule Vulnerability (G-3) AOLGOLD Trojan Program (G-4) X Authentication Vulnerability (G-5) HP-UX FTP Vulnerability Bulletin (G-06A) Win95 Vulnerabilities (G-07) SGI Object Server Vulnerability (G-08) splitvt(1) vulnerability RECENT CIAC NOTES ISSUED (Previous Notes available from CIAC) Notes 07 - 3/29/95 A comprehensive review of SATAN Notes 08 - 4/4/95 A Courtney update Notes 09 - 4/24/95 More on the "Good Times" virus urban legend Notes 10 - 6/16/95 PKZ300B Trojan, Logdaemon/FreeBSD, vulnerability in S/Key, EBOLA Virus Hoax, and Caibua Virus Notes 11 - 7/31/95 Virus Update, Hats Off to Administrators, America On-Line Virus Scare, SPI 3.2.2 Released, The Die_Hard Virus Notes 12 - 9/12/95 Securely configuring Public Telnet Services, X Windows, beta release of Merlin, Microsoft Word Macro Viruses, Allegations of Inappropriate Data Collection in Win95 -----BEGIN PGP SIGNATURE----- Version: 2.6.2 iQCVAwUBMQ/36LnzJzdsy3QZAQEJvQQAuytcMTTvjzaTpojcTaDFPGPz53mCFkwQ i46mv5LZU32w8tED3+NNgn65fzG4VAvBXSLKC7thUzs/hnnn0RwSpmWOM6HKUwdw LiDxNZftNBpMn3CldF4VjhwVOaVfHEwkIUWBDTwMKXDULTJS01UxXCBLRaUC3cPg jgsSwjiRFow= =rhvj -----END PGP SIGNATURE----- --- "Some call him the coolest cybernetic sidewalk surfer ever to hang-ten on the shoulders of the Great Information Superhiway." --- ifmail v.2.8.lwz * Origin: Monolithic Diversified Enterprises (1:340/13@fidonet)