Subject: NetBSD Security Advisory 2003-008: faulty length checks in xdrmem_getbytes
To: None <tech-security@netbsd.org, current-users@netbsd.org>
From: NetBSD Security Officer <security-officer@netbsd.org>
List: current-users
Date: 03/26/2003 13:54:19
-----BEGIN PGP SIGNED MESSAGE-----


		 NetBSD Security Advisory 2003-008
		 =================================

Topic:		faulty length checks in xdrmem_getbytes

Version:	NetBSD-current:	 source prior to March 21, 2003
		NetBSD-1.6.1:	 not affected
		NetBSD-1.6:	 affected
		NetBSD-1.5.3:	 affected
		NetBSD-1.5.2:	 affected
		NetBSD-1.5.1:	 affected
		NetBSD-1.5:	 affected
		NetBSD-1.4*:	 affected

Severity:	buffer overrun

Fixed:		NetBSD-current:		March 21, 2003
		NetBSD-1.6 branch:	March 21, 2003
		NetBSD-1.5 branch:	not yet


Abstract
========

The xdrmem_*() routines in libc are susceptible to integer overflows,
that affect memory allocation in their local buffers.  Processes
that use these functions may be coerced to execute code, or to
return private memory of the vulnerable process to the caller.


Technical Details
=================

These URLs also describe another set of vulnerabilities which did not
affect NetBSD due to strong data typing changes made many years ago.

The relevant problem is described in the following URLs:

    http://www.cert.org/advisories/CA-2003-10.html
    http://www.securityfocus.com/archive/1/315641
    http://web.mit.edu/kerberos/www/advisories/MITKRB5-SA-2003-003-xdr.txt


Solutions and Workarounds
=========================

The following instructions describe how to upgrade your libc
binaries by updating your source tree and rebuilding and installing
a new version of libc.

Be sure to restart running instances of programs that use the libc rpc
library after upgrading.

If you have any statically-linked binaries that linked against a
vulnerable libc and uses rpc, you need to recompile them.


* NetBSD-current:

	Systems running NetBSD-current dated from before 2003-03-20
	should be upgraded to NetBSD-current dated 2003-03-20 or later.

	The following file needs to be updated from the
	netbsd-current CVS branch (aka HEAD):
		lib/libc/rpc

	To update from CVS, re-build, and re-install libc:
		# cd src
		# cvs update -d -P lib/libc/rpc
		# cd lib/libc
		# make USETOOLS=no cleandir dependall includes
		# make USETOOLS=no install


* NetBSD 1.6:

	The binary distribution of NetBSD 1.6 is vulnerable.

	If a source-based point upgrade is required, sources from the
	NetBSD 1.6 branch dated 2003-03-xx or later should be used.

	The following file needs to be updated from the
	netbsd-1-6 CVS branch:
		lib/libc/rpc

	To update from CVS, re-build, and re-install libc:
		# cd src
		# cvs update -d -P -r netbsd-1-6 lib/libc/rpc
		# cd lib/libc
		# make USETOOLS=no cleandir dependall includes
		# make USETOOLS=no install


* NetBSD 1.5, 1.5.1, 1.5.2, 1.5.3:

	The binary distribution of NetBSD 1.5.3 is vulnerable.

	Systems running NetBSD-1.5.x dated from before 2003-03-xx
	should be upgraded to NetBSD-1.5 branch dated 2003-03-xx or later.

	The following file needs to be updated from the
	netbsd-1-5 CVS branch:
		lib/libc/rpc

	To update from CVS, re-build, and re-install libc:
		# cd src
		# cvs update -d -P -r netbsd-1-5 lib/libc/rpc
		# cd lib/libc
		# make cleandir dependall includes
		# make install


Thanks To
=========

eEye and CERT for notification.

Christos Zoulas for patches.


Revision History
================

	2003-03-26	Initial release

More Information
================

An up-to-date PGP signed copy of this release will be maintained at
  ftp://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2003-008.txt.asc

Information about NetBSD and NetBSD security can be found at
http://www.NetBSD.ORG/ and http://www.NetBSD.ORG/Security/.


Copyright 2003, The NetBSD Foundation, Inc.  All Rights Reserved.

$NetBSD: NetBSD-SA2003-008.txt,v 1.5 2003/03/26 06:03:30 david Exp $

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (NetBSD)
Comment: For info see http://www.gnupg.org

iQCVAwUBPoHN1T5Ru2/4N2IFAQEcWwQAnMcFSaZEL2q36Cm7dA/VCTv1VXqnlCfZ
Ult3G9Q7IMMEGEpgL1x9fqLSJQxvzP2sGyzkQKQKQzvKbbKmFeD8MmVivx+lAQY3
ZEqSrZqDutbcaWP79+xSXPuOj6C9jlrDmMZ+7em2+WI7EC/Q7ctWoJYqWmRvX6Lc
5TKr0rXvwX8=
=+eFn
-----END PGP SIGNATURE-----