SecurityTracker.com
    Home    |    View Topics    |    Search    |    Contact Us    |   

SecurityTracker
Archives


 


Category:   Application (Security)  >   OpenSSL Vendors:   OpenSSL.org
(NetBSD Issues Fix) OpenSSL Has Multiple Buffer Overflows That Allow Remote Users to Execute Arbitrary Code with Root Privileges
SecurityTracker Alert ID:  1004933
SecurityTracker URL:  http://securitytracker.com/id/1004933
CVE Reference:   CVE-2002-0655, CVE-2002-0656, CVE-2002-0657, CVE-2002-0659   (Links to External Site)
Date:  Aug 2 2002
Impact:   Denial of service via network, Execution of arbitrary code via network, Root access via network, User access via network
Fix Available:  Yes  Vendor Confirmed:  Yes  
Version(s): 0.9.6d or earlier, 0.9.7-beta2 or earlier, 0.9.7 current development snapshots
Description:   Four buffer overflow conditions were reported in OpenSSL. All four may allow a remote user to execute arbitrary code.

The vendor has reported that A.L. Digital Ltd and The Bunker have uncovered multiple buffer overflows in OpenSSL, discovered during a security review.

A remote user could create a specially crafted, oversized client master key and use SSL2 to trigger an overflow on an SSL server. According to the report, this vulnerability was independently discovered by Neohapsis, which has confirmed that the overflow can be exploited to execute arbitrary code.

A remote user with an SSL server could create a specially crafted, oversized session ID and supply this ID to a target client using SSL3 to trigger an overflow.

A remote user could supply a specially crafted, oversized master key to an SSL3 server to trigger an overflow. It is reported that this flaw affects OpenSSL 0.9.7 prior to version 0.9.7-beta3 when Kerberos is enabled.

Several buffers used for ASCII representations of integers are reportedly too small on 64 bit platforms.

The report also states that other potential buffer overflows that are currently considered to be non-exploitable have been discovered.

The vendor notes that Adi Stav and James Yonan independently reported that the ASN1 parser can be confused by certain invalid encodings, potentially allowing a remote user to cause denial of service conditions. An OpenSSL-based application that use the ASN1 library to parse untrusted data (including all SSL or TLS applications using S/MIME [PKCS#7] or certificate generation routines) are affected.

Impact:   A remote user acting as an SSL client could execute arbitrary code on an SSL server. A remote user acting as an SSL server could cause arbitrary code to be executed on an SSL client that is connecting to the server. In each case, the code would run with privileges of the affected implementation.

A remote user may be able cause denial of service conditions.

Solution:   NetBSD has released a fix.

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

* NetBSD-current:

Systems running NetBSD-current dated from before 2002-07-29 should be upgraded to NetBSD-current dated 2002-07-30 or later.

The following directories need to be updated from the netbsd-current CVS branch (aka HEAD):
crypto/Makefile.openssl
crypto/dist/openssl
lib/libcrypto
lib/libssl

To update from CVS, re-build, and re-install libcrypto and libssl:
# cd src
# cvs update -d -P crypto/Makefile.openssl crypto/dist/openssl \
lib/libcrypto lib/libssl

# cd lib/libcrypto
# make cleandir dependall
# make install
# cd lib/libssl
# make cleandir dependall
# make install

If you have any statically-linked binaries that linked against libcrypto and/or libssl, you need to recompile them.


* NetBSD 1.6 beta:

The advisory will be updated to include instructions to remedy this problem for systems running NetBSD-1.6 branch.


* NetBSD 1.5, 1.5.1, 1.5.2, 1.5.3:

NetBSD 1.5.3 was recently released. This is a reminder to consider upgrading if you are running anything older than NetBSD 1.5.3. Many security-related improvements have been made.

Systems running NetBSD 1.5.x dated from before 2002-08-01 should be upgraded to NetBSD 1.5 tree dated 2002-08-02 or later.

The following directories need to be updated from the netbsd-1-5 CVS branch:
crypto/Makefile.openssl
crypto/dist/openssl
lib/libcrypto
lib/libssl

To update from CVS, re-build, and re-install libcrypto and libssl:
# cd src
# cvs update -d -P -r netbsd-1-5 crypto/Makefile.openssl \
crypto/dist/openssl lib/libcrypto lib/libssl
# cd lib/libcrypto
# make cleandir dependall
# make install
# cd lib/libssl
# make cleandir dependall
# make install

If you have any statically-linked binaries that linked against libcrypto and/or libssl, you need to recompile them.


* NetBSD 1.4, 1.4.1, 1.4.2, 1.4.3:

OpenSSL was not included in the base system in NetBSD-1.4.* Follow the directions for pkgsrc if you have installed it from pkgsrc.


* pkgsrc:

The updated packages will be available shortly. This advisory will be updated to reflect their availability.

openssl-0.9.6nb2 (pkgsrc/security/openssl) and prior are vulnerable. Upgrade to openssl-0.9.6e or later.

Packages which require openssl can be found by running 'pkg_info openssl'. Depending on the method you choose to update pkgsrc packages, a rebuild of the packages on that list may be performed for you by the package system. If you update using the experimental 'make replace' target, you will need to manually update any packages which build static binaries with libssl.a and libcrypto.a

If you have statically linked binaries in pkgsrc, they have to be rebuilt. Statically linked binaries can be identified by the following command (note: be sure to include the directory you install pkgsrc binaries to, if you've changed LOCALBASE from the default of /usr/pkg)

file /usr/pkg/{bin,sbin,libexec} | grep static

Vendor URL:  www.openssl.org/news/secadv_20020730.txt (Links to External Site)
Cause:   Boundary error, Exception handling error
Underlying OS:  UNIX (NetBSD)
Underlying OS Comments:  1.6 beta, 1.5.3, 1.5.2, 1.5.1, 1.5

Message History:   This archive entry is a follow-up to the message listed below.
Jul 30 2002 OpenSSL Has Multiple Buffer Overflows That Allow Remote Users to Execute Arbitrary Code with Root Privileges



 Source Message Contents

Subject:  NetBSD Security Advisory 2002-009: Multiple vulnerabilities in OpenSSL code


-----BEGIN PGP SIGNED MESSAGE-----


		 NetBSD Security Advisory 2002-009
		 =================================

Topic:		Multiple vulnerabilities in OpenSSL code

Version:	NetBSD-current:	source prior to July 30, 2002
		NetBSD-1.6 beta: affected
		NetBSD-1.5.3:	affected
		NetBSD-1.5.2:	affected
		NetBSD-1.5.1:	affected
		NetBSD-1.5:	affected
		NetBSD-1.4.*:	not applicable
		pkgsrc:		prior to openssl-0.9.6e

Severity:	Potential for remote root exploit

Fixed:		NetBSD-current:		July 30, 2002
		NetBSD-1.6 branch:	not yet
		NetBSD-1.5 branch:	August 1, 2002 via point patch
					(1.5.4 will include the fix)
		pkgsrc:			not yet (will be openssl-0.9.6e
						 and later)


Abstract
========

There are multiple vulnerabilities found in openssl 0.9.6d and prior
releases.  There are four remotely-exploitable buffer overruns in SSL2/3
code.  The ASN1 parser can be confused by invalid encodings (SSL/TLS
code affected).

None of these services are enabled by default in NetBSD, however, by
enabling services built with these libraries, a system would become
vulnerable.

- From the OpenSSL advisory:

"Everyone using OpenSSL 0.9.6d or earlier, or 0.9.7-beta2 or earlier or
current development snapshots of 0.9.7 to provide SSL or TLS is
vulnerable, whether client or server. 0.9.6d servers on 32-bit systems
with SSL 2.0 disabled are not vulnerable."


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

http://www.openssl.org/news/secadv_20020730.txt


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

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

* NetBSD-current:

	Systems running NetBSD-current dated from before 2002-07-29
	should be upgraded to NetBSD-current dated 2002-07-30 or later.

	The following directories need to be updated from the
	netbsd-current CVS branch (aka HEAD):
		crypto/Makefile.openssl
		crypto/dist/openssl
		lib/libcrypto
		lib/libssl

	To update from CVS, re-build, and re-install libcrypto and libssl:
		# cd src
		# cvs update -d -P crypto/Makefile.openssl crypto/dist/openssl \
			lib/libcrypto lib/libssl

		# cd lib/libcrypto
		# make cleandir dependall
		# make install
		# cd lib/libssl
		# make cleandir dependall
		# make install

	If you have any statically-linked binaries that linked against
	libcrypto and/or libssl, you need to recompile them.


* NetBSD 1.6 beta:

	The advisory will be updated to include instructions to remedy
	this problem for systems running NetBSD-1.6 branch.


* NetBSD 1.5, 1.5.1, 1.5.2, 1.5.3:

	NetBSD 1.5.3 was recently released. This is a reminder to
	consider upgrading if you are running anything older than
	NetBSD 1.5.3.  Many security-related improvements have been
	made.

        Systems running NetBSD 1.5.x dated from before 2002-08-01
        should be upgraded to NetBSD 1.5 tree dated 2002-08-02 or later.

	The following directories need to be updated from the
	netbsd-1-5 CVS branch:
		crypto/Makefile.openssl
		crypto/dist/openssl
		lib/libcrypto
		lib/libssl

	To update from CVS, re-build, and re-install libcrypto and libssl:
		# cd src
		# cvs update -d -P -r netbsd-1-5 crypto/Makefile.openssl \
			crypto/dist/openssl lib/libcrypto lib/libssl
		# cd lib/libcrypto
		# make cleandir dependall
		# make install
		# cd lib/libssl
		# make cleandir dependall
		# make install

	If you have any statically-linked binaries that linked against
	libcrypto and/or libssl, you need to recompile them.


* NetBSD 1.4, 1.4.1, 1.4.2, 1.4.3:

	OpenSSL was not included in the base system in NetBSD-1.4.*
	Follow the directions for pkgsrc if you have installed it from
	pkgsrc.


* pkgsrc:

	The updated packages will be available shortly. This advisory
	will be updated to reflect their availability.

	openssl-0.9.6nb2 (pkgsrc/security/openssl) and prior are
	vulnerable. Upgrade to openssl-0.9.6e or later.

	Packages which require openssl can be found by running 'pkg_info
	openssl'. Depending on the method you choose to update pkgsrc
	packages, a rebuild of the packages on that list may be
	performed for you by the package system. If you update using the
	experimental 'make replace' target, you will need to manually
	update any packages which build static binaries with libssl.a
	and libcrypto.a

        If you have statically linked binaries in pkgsrc, they have to be
        rebuilt.  Statically linked binaries can be identified by the
        following command (note: be sure to include the directory you install
        pkgsrc binaries to, if you've changed LOCALBASE from the default of
        /usr/pkg)

                file /usr/pkg/{bin,sbin,libexec} | grep static


Thanks To
=========

A.L. Digital Ltd and John McDonald of Neohapsis.
Adi Stav and James Yonan.
CERT and the OpenSSL team.

Jun-ichiro itojun Hagino for maintenance of OpenSSL in the NetBSD
source tree, and preparing the initial advisory text.

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

	2002-08-01	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-SA2002-009.txt.asc

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


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

$NetBSD: NetBSD-SA2002-009.txt.asc,v 1.1 2002/08/01 18:05:26 david Exp $

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

iQCVAwUBPUk5mj5Ru2/4N2IFAQHSKwQAsNUW26FBno45ApgV+9/N7vgkCJp92fgF
p3VxGWvsBKUUcNBXCfeAD/2hb9PVa0vV0qmvrDE7OSCpuRK1z627jzq9QFLJZ0BC
E1d2oOhzEidlzZNXyOSzHcuEAWup+sTg7jezbboUpEZmxjxupmMYAoSh3P9Vopw1
aMi0dk2V0C8=
=jjoi
-----END PGP SIGNATURE-----


 
 


Go to the Top of This SecurityTracker Archive Page





Home   |    View Topics   |    Search   |    Contact Us

This web site uses cookies for web analytics. Learn More

Copyright 2021, SecurityGlobal.net LLC