-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 NetBSD Security Advisory 2009-002 ================================= Topic: tcpdump multiple denial of service and arbitrary code execution issues Version: NetBSD-current: affected before July 20, 2007 NetBSD 5.0: not affected NetBSD 4.0.*: not affected NetBSD 4.0: affected Severity: Denial of Service, Arbitrary Code Execution Fixed: NetBSD-current: July 20, 2007 NetBSD-4-0 branch: June 21, 2009 (4.0.2 will include the fix) NetBSD-4 branch: June 21, 2009 (4.1 will include the fix) pkgsrc: tcpdump-3.9.7 corrects the issue Please note that NetBSD releases prior to 4.0 are no longer supported. It is recommended that all users upgrade to a supported release. Abstract ======== A number of issuses exist in the version of tcpdump(1) shipped with NetBSD 4.0 allowing a remote attacker to hang or crash the application and to execute arbitrary code via specially crafted packages. Technical Details ================= An integer overflow in the BGP dissector allows remote attackers to execute arbitrary code via crafted TLVs in a BGP packet. An infinite loop error in the BGP dissector allows remote attackers to cause an application hang by sending an invalid prefix. An off-by-one error in the 802.11 dissector result printing code allows remote attackers to crash the application. An infinite loop error in the ISIS dissector allows remote attackers to cause an application hang using GRE packets of zero length. A length verification error in the RSVP dissector allows remote attackers to crash the application by sending a RSVP packet of length 4. For more details, please see CVE-2007-1218, CVE-2007-3798, CAN-2005-1267, CAN-2005-1278, CAN-2005-1279 and CAN-2005-1280. Solutions and Workarounds ========================= The 4.0.1 release of NetBSD resolves this issue, so a possible solution is to upgrade to NetBSD 4.0.1 or 5.0. As a temporary workaround disable tcpdump(1) from the base OS and use the tcpdump-3.9.7 package from pkgsrc which contains a fix. The following instructions describe how to upgrade your tcpdump binaries by updating your source tree and rebuilding and installing a new version of tcpdump. * NetBSD-current: Systems running NetBSD-current dated from before 2007-07-20 should be upgraded to NetBSD-current dated 2007-07-21 or later. The following directories need to be updated from the netbsd-current CVS branch (aka HEAD): dist/tcpdump To update from CVS, re-build, and re-install tcpdump: # cd src # cvs update -d -P dist/tcpdump # cd usr.sbin/tcpdump # make USETOOLS=no cleandir dependall # make USETOOLS=no install * NetBSD 4.0: The binary distribution of NetBSD 4.0 is vulnerable. Systems running NetBSD 4.0 sources dated from before 2009-06-21 should be upgraded from NetBSD 4.0 sources dated 2009-06-22 or later. The following directories need to be updated from the netbsd-4 CVS branch: dist/tcpdump To update from CVS, re-build, and re-install tcpdump: # cd src # cvs update -d -P -r netbsd-4-0 dist/tcpdump # cd usr.sbin/tcpdump # make USETOOLS=no cleandir dependall # make USETOOLS=no install Thanks To ========= Moritz Jodeit, mu-b of digit-labs.org and Vade79 for finding and reporting the issue. Revision History ================ 2009-06-22 Initial release 2009-06-25 Corrected the dates of the 4.0 fix More Information ================ Advisories may be updated as new information becomes available. The most recent version of this advisory (PGP signed) can be found at ftp://ftp.NetBSD.org/pub/NetBSD/security/advisories/NetBSD-SA2009-002.txt.asc Information about NetBSD and NetBSD security can be found at http://www.NetBSD.org/ and http://www.NetBSD.org/Security/. Copyright 2009, The NetBSD Foundation, Inc. All Rights Reserved. Redistribution permitted only in full, unmodified form. $NetBSD: NetBSD-SA2009-002.txt,v 1.3 2009/06/25 05:46:48 tonnerre Exp $ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (NetBSD) iQCVAwUBSkMO8T5Ru2/4N2IFAQL1LgP+Odmy+6gjq3gsVKWRdhei6V5AHopYr/ml Jb93pnUwYf3VGUQ8LTq/YPe3JcgJDDkTHx1cMRQfsXO9BQXo7xp+ghnHpRl/lAFe klhKsHx2LQMUfQdu/xacEtILBbgfIUFSU2pWhWKCGu/TKtFixrQ3dX5X2GNVim2s mx0r0PSU7HE= =Gpzo -----END PGP SIGNATURE-----