-----BEGIN PGP SIGNED MESSAGE----- __________________________________________________________ The U.S. Department of Energy Computer Incident Advisory Capability ___ __ __ _ ___ / | /_\ / \___ __|__ / \ \___ __________________________________________________________ INFORMATION BULLETIN FreeBSD - dhclient vulnerable to malicious dhcp server August 16, 2000 01:00 GMT Number K-067 ______________________________________________________________________________ PROBLEM: The DHCP client does not correctly validate input from the server, allowing a malicious DHCP server to execute arbitrary commands as root on the client. PLATFORM: All releases of FreeBSD after FreeBSD 3.2-RELEASE and prior to the correction date (including FreeBSD 4.0 and 3.5, but not 4.1) Ports collection prior to the correction date. DAMAGE: An attacker who gains control of a DHCP server may gain additional root access. SOLUTION: For FreeBSD verions 3.x either upgrade to FreeBSD 4.1, disable the use of DHCP as described in the workaround, or upgrade to the dhclient binary from the isc-dhcp2 port dated after to correction date. For FreeBSD 4.0 follow the instructions for upgrading in the attached advisory. ______________________________________________________________________________ VULNERABILITY The risk is MEDIUM. The vulnerability has been discussed in ASSESSMENT: public forums. ______________________________________________________________________________ [****** Start FreeBSD Security Advisory ******] - -----BEGIN PGP SIGNED MESSAGE----- ============================================================================= FreeBSD-SA-00:34 Security Advisory FreeBSD, Inc. Topic: dhclient vulnerable to malicious dhcp server Category: core, ports Module: dhclient, isc-dhcp2 (ports), isc-dhcp3 (ports) Announced: 2000-08-14 Affects: All releases of FreeBSD after FreeBSD 3.2-RELEASE and prior to the correction date (including FreeBSD 4.0 and 3.5, but not 4.1) Ports collection prior to the correction date. Credits: OpenBSD Vendor status: Updated version released Corrected: 2000-07-20 [FreeBSD 4.0 base system] 2000-08-01 [isc-dhcp2 port] 2000-07-21 [isc-dhcp3 port] FreeBSD only: NO I. Background ISC-DHCP is an implementation of the DHCP protocol containing client and server. FreeBSD 3.2 and above includes the version 2 client by default in the base system, and the version 2 and version 3 clients and servers in the Ports Collection. II. Problem Description The dhclient utility (DHCP client), versions 2.0pl2 and before (for the version 2.x series), and versions 3.0b1pl16 and before (for the version 3.x series) does not correctly validate input from the server, allowing a malicious DHCP server to execute arbitrary commands as root on the client. DHCP may be enabled if your system was initially configured from a DHCP server at install-time, or if you have specifically enabled it after installation. FreeBSD 4.1 is not affected by this problem since it contains the 2.0pl3 client. III. Impact An attacker who has or gains control of a DHCP server may gain additional root access to DHCP clients running vulnerable versions of ISC-DHCP. If you are not using dhclient to configure client machines via DHCP, or your DHCP server is "trusted" according to your local security policy, then this vulnerability does not apply to you. IV. Workaround Disable the use of DHCP for configuring client machines: remove the case-insensitive string "dhcp" from the "ifconfig_" directives in /etc/rc.conf and replace it with appropriate static interface configuration according to the rc.conf(5) manpage. An example of a DHCP-enabled interface is the following line in /etc/rc.conf: ifconfig_xl0="DHCP" V. Solution NOTE: At this time the FreeBSD 3.x branch has not yet been patched, due to logistical difficulties. Users running a vulnerable 3.x system are advised to either upgrade to FreeBSD 4.1, disable the use of DHCP as described above, or use the dhclient binary from the isc-dhcp2 port dated after the correction date. 1) Upgrade your vulnerable FreeBSD 4.0 system to a version dated after the correction date. See http://www.freebsd.org/handbook/makeworld.html for instructions on how to upgrade and recompile your FreeBSD system from source, or perform a binary upgrade, e.g. to FreeBSD 4.1-RELEASE, described here: http://www.freebsd.org/releases/4.1R/notes.html 2) (If using the isc-dhcp2 or isc-dhcp3 ports) One of the following: 2a) Upgrade your entire ports collection and rebuild the isc-dhcp2 or isc-dhcp3 port. 2b) Deinstall the old package and install a new package dated after the correction date, obtained from: [isc-dhcp3] ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-3-stable/net/isc-dhcp3-3.0.b1.17.tgz ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/net/isc-dhcp3-3.0.b1.17.tgz ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-4-stable/net/isc-dhcp3-3.0.b1.17.tgz ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/net/isc-dhcp3-3.0.b1.17.tgz ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-5-current/net/isc-dhcp3-3.0.b1.17.tgz NOTE: The isc-dhcp2 port is not available as a package. 2c) download a new port skeleton for the isc-dhcp2 or isc-dhcp3 port from: http://www.freebsd.org/ports/ and use it to rebuild the port. 2d) Use the portcheckout utility to automate option (3) above. The portcheckout port is available in /usr/ports/devel/portcheckout or the package can be obtained from: ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-3-stable/devel/portcheckout-2.0.tgz ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/devel/portcheckout-2.0.tgz ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-4-stable/devel/portcheckout-2.0.tgz ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/devel/portcheckout-2.0.tgz ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-5-current/devel/portcheckout-2.0.tgz - -----BEGIN PGP SIGNATURE----- Version: 2.6.2 iQCVAwUBOZh3J1UuHi5z0oilAQHXBQQAmCLlTUfikHbgBelFd22agjTo/AVwR933 El0AMRHakiBJAHTMseZ4Nj+HyGUgVzD3oRMgmjx1u+HUCQM2/akuXXZdSHlur5Jc OyEGxcwxyzYXnNzWAL1vh6MYrpkGDfh74bHircLdO16d6uC1d+0VFmkxUOOFN4zb g7yK3m2ZOxo= =qTwd - -----END PGP SIGNATURE----- [****** End FreeBSD Security Advisory ******] _______________________________________________________________________________ CIAC wishes to acknowledge the contributions of FreeBSD for 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 emergency backup response team for the National Institutes 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 925-422-8193 FAX: +1 925-423-8002 STU-III: +1 925-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), use one of the following methods to contact CIAC: 1. Call the CIAC voice number 925-422-8193 and leave a message, or 2. Call 888-449-8369 to send a Sky Page to the CIAC duty person or 3. Send e-mail to 4498369@skytel.com, or 4. Call 800-201-9288 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://www.ciac.org/ (or http://ciac.llnl.gov -- they're the same machine) Anonymous FTP: ftp.ciac.org (or ciac.llnl.gov -- they're the same machine) Modem access: +1 (925) 423-4753 (28.8K baud) +1 (925) 423-3331 (28.8K baud) 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 via WWW at http://www.first.org/. 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) K-065: Microsoft "Specialized Header" Vulnerability K-063: Netscape Java Vulnerability K-062: Vulnerabilities in Lotus Notes Domino Aired at DefCon 8 K-061: Microsoft Office HTML and IE Script Vulnerabilities K-060: Microsoft's Malformed E-Mail Header Vulnerability K-059: Microsoft DTS Password Vulnerability K-058: OpenSSH UseLogin Vulnerability K-057: Microsoft Active Setup Download Vulnerability K-056: IRIX WorkShop cvconnect(1M) Vulnerability K-055: HP Web JetAdmin Vulnerability K-054: Vulnerability in Linux wu-ftpd -----BEGIN PGP SIGNATURE----- Version: 4.0 Business Edition iQCVAwUBOZrdQrnzJzdsy3QZAQE6cAP9Hawkz08WNbmw1m2ulNFff+EK1lXLziv8 jMemAWD+q9YRYQDI+zwOpcoFJ12qRNiZfvYfavHyaQjvDUZ6rxqytpkiN/oCbQUn NcPBiqCLxgeyO9Z9d8QsIRaRYBpXylE9VyM+eHrW+4YeC3TvHMFzT42kyIHdUEwV QECccREFus4= =zSP2 -----END PGP SIGNATURE-----