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

SecurityTracker
Archives


 


Category:   Application (Generic)  >   X Vendors:   X.org
(NetBSD Issues Fix) X Memory Corruption Errors in Render and DBE Extensions Let Local Users Gain Root Privileges
SecurityTracker Alert ID:  1017741
SecurityTracker URL:  http://securitytracker.com/id/1017741
CVE Reference:   CVE-2006-6101, CVE-2006-6102, CVE-2006-6103   (Links to External Site)
Date:  Mar 9 2007
Impact:   Execution of arbitrary code via local system, Root access via local system
Fix Available:  Yes  Vendor Confirmed:  Yes  
Version(s): 7.1-1.1.0, possibly other versions
Description:   Several vulnerabilities were reported in X. A local user can obtain root privileges on the target system.

A local user with the ability to send commands to an affected X server can trigger a memory corruption error in the ProcRenderAddGlyphs() function of the Render extension to execute arbitrary commands on the target system, typically with root privileges [CVE-2006-6101].

A memory corruption error also resides in the ProcDbeGetVisualInfo() function of the DBE extension [CVE-2006-6102].

A memory corruption error also resides in the ProcDbeSwapBuffers() function of the DBE extension [CVE-2006-6103].

The vendor was notified on December 4, 2006.

The XFree86 X server is also affected by these vulnerabilities.

Sean Larsson of iDefense Labs discovered these vulnerability.

Impact:   A local user can obtain root privileges on the target system.
Solution:   NetBSD has released a fix.

The NetBSD advisory is available at:

ftp://ftp.NetBSD.org/pub/NetBSD/security/advisories/NetBSD-SA2007-002.txt.asc

Cause:   Access control error, Input validation error
Underlying OS:  UNIX (NetBSD)
Underlying OS Comments:  4.0_BETA2 and prior versions

Message History:   This archive entry is a follow-up to the message listed below.
Jan 10 2007 X Memory Corruption Errors in Render and DBE Extensions Let Local Users Gain Root Privileges



 Source Message Contents

Subject:  NetBSD Security Advisory 2007-002: Integer overflows in Render and DBE



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


		 NetBSD Security Advisory 2007-002
		 =================================

Topic:		Integer overflows in Render and DBE extensions

Version:	NetBSD-current:	source prior to January 10, 2007
		NetBSD 4.0_BETA2:	affected
		NetBSD 3.1:		affected
		NetBSD 3.0.*:		affected
		NetBSD 3.0:		affected
		NetBSD 2.1:		affected
		NetBSD 2.0.*:		affected
		NetBSD 2.0:		affected
		pkgsrc: 		xorg-server-6.9.0nb13 and earlier

Severity:	Potential local privilege escalation

Fixed:		NetBSD-current:		January 10, 2007
		NetBSD-4 branch:	January 11, 2007
		NetBSD-3-1 branch:	January 11, 2007
		NetBSD-3-0 branch:	January 11, 2007
		NetBSD-3   branch:	January 11, 2007
		NetBSD-2-1 branch:	January 29, 2007
		NetBSD-2-0 branch:	January 29, 2007
		NetBSD-2   branch:	January 29, 2007
		pkgsrc:			xorg-server-6.9.0nb14 corrects the issue


Abstract
========

There are integer overflows present in the Render and DBE extensions as 
supplied with both XFree86 and X11R7.0.  This can potentially lead 
to arbitrary code execution.  These vulnerabilities can be triggered 
by a user sending specifically crafted X protocol requests.

These vulnerabilities have been assigned CVE references CVE-2006-6101,
CVE-2006-6102 and CVE-2006-6103.


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

There are three separate integer overflows that are present:

* ProcRenderAddGlyphs() function in the Render extension
* ProcDbeGetVisualInfo() function in the DBE extension
* ProcDbeSwapBuffers() function in the DBE extension

Vulnerabilities present can potentially lead to arbitrary code execution.


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

While X11R7.0 from X.Org is in both the HEAD and netbsd-4 branches it
is currently not integrated fully into the base distribution.  No NetBSD
releases contain X11R7.0 binaries and as such it is not necessary to 
rebuild anything from source.  The instructions below will patch the 
relevant X11R7.0 source files so that if users are experimenting with 
X11R7.0 it will contain the necessary security fixes.

A possible temporary workaround for this issue is to disable the DBE
and render extensions in your X Server configuration.  To do this under 
the Modules section of the X Server configuration file comment out the 
lines containing:
	
	Load "DBE"
	Load "render"

For X.Org the configuration file will be xorg.conf and for XFree86
it will be XF86config.  This may impact the appearance of applications
run in X Windows.

XFree86-based X servers are included in the NetBSD base distribution,
and will need to be rebuilt.  The following instructions describe how
to upgrade your XFree86 binaries by updating your source tree and
rebuilding and installing a new version of XFree86.

* NetBSD-current:

	Systems running NetBSD-current dated from before 2007-01-10
	should be upgraded to NetBSD-current dated 2007-01-11 or later.

	The following files need to be updated from CVS HEAD:
		xfree/xc/programs/Xserver/dbe/dbe.c
		xfree/xc/programs/Xserver/render/render.c
		xorg/xserver/xorg/dbe/dbe.c
		xorg/xserver/xorg/render/render.c

	To update from CVS, re-build, and re-install XFree86:

		# cd xsrc
		# cvs update xfree/xc/programs/Xserver/dbe/dbe.c
		# cvs update xfree/xc/programs/Xserver/render/render.c
		# cvs update xorg/xserver/xorg/dbe/dbe.c
		# cvs update xorg/xserver/xorg/render/render.c
		# make build

* NetBSD 3.*:

	Systems running NetBSD 3.* sources dated from before
	2007-01-11 should be upgraded from NetBSD 3.* sources dated
	2007-01-12 or later.

	The following files need to be updated from the
	netbsd-3, netbsd-3-0 or netbsd-3-1 CVS branch:
		xfree/xc/programs/Xserver/dbe/dbe.c
		xfree/xc/programs/Xserver/render/render.c

	To update from CVS, re-build, and re-install XFree86:

		# cd xsrc
		# cvs update -r <branch_name> \
			xfree/xc/programs/Xserver/dbe/dbe.c
		# cvs update -r <branch_name> \
			xfree/xc/programs/Xserver/render/render.c
		# make build

* NetBSD 2.*:

	Systems running NetBSD 2.* sources dated from before
	2007-01-29 should be upgraded from NetBSD 2.* sources dated
	2007-01-30 or later.

	The following files need to be updated from the
	netbsd-2, netbsd-2-0 or netbsd-2-1 CVS branch:
		xfree/xc/programs/Xserver/dbe/dbe.c
		xfree/xc/programs/Xserver/render/render.c

	To update from CVS, re-build, and re-install XFree86:

		# cd xsrc
		# cvs update -r <branch_name> \
			xfree/xc/programs/Xserver/dbe/dbe.c
		# cvs update -r <branch_name> \
			xfree/xc/programs/Xserver/render/render.c
		# make build


Thanks To
=========

Sean Larsson of iDefense Labs is credited with the discovery of these issues.


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

	2007-03-08	Initial release


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-SA2007-002.txt.asc

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


Copyright 2007, The NetBSD Foundation, Inc.  All Rights Reserved.
Redistribution permitted only in full, unmodified form.

$NetBSD: NetBSD-SA2007-002.txt,v 1.1 2007/03/05 23:33:14 adrianp Exp $

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (NetBSD)

iQCVAwUBRe1o4j5Ru2/4N2IFAQIgVgP/fsn9JSi36RNyO7XBQgyHl4BN4cfNK15Q
/gr0Lkmp9j/FFj0kxWAZrjxe+eOG9SjMu4K8ifpy+a6PkaOKp7VRPutB6psk5SOa
PdmlU7Rotbnc/aTaOLnIstvlKLApat1hrSMRPoFvLq4rk3k6k+c305Pozqq6r6Wd
Zn/xuygFeVo=
=QkF5
-----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 2019, SecurityGlobal.net LLC