Bug 166857 - CAN-2005-2495 multiple integer overflows
Summary: CAN-2005-2495 multiple integer overflows
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: XFree86
Version: 3.0
Hardware: All
OS: Linux
medium
high
Target Milestone: ---
Assignee: Søren Sandmann Pedersen
QA Contact: David Lawrence
URL:
Whiteboard: impact=important,reported=20050819,pu...
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2005-08-26 14:50 UTC by Josh Bressers
Modified: 2014-06-18 09:07 UTC (History)
4 users (show)

Fixed In Version: RHSA-2005-501
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2005-09-15 08:47:49 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2005:501 0 qe-ready SHIPPED_LIVE Important: XFree86 security update 2005-09-15 04:00:00 UTC

Description Josh Bressers 2005-08-26 14:50:56 UTC
+++ This bug was initially created as a clone of Bug #166856 +++

https://bugs.freedesktop.org/show_bug.cgi?id=594

What is going on here is that an X client is trying to allocate a pixmap
of size 9GB. Because of
an integer overflow this is not caught and instead a pixmap of size 1GB
is allocated. When the
client then tries to access the pixmap we get a server crash.

This seems exploitable to me: a client could allocate a pixmap of size
4GB + 4byte, causing
the server to allocate just 4 bytes. Then the client could use
XDrawPoint() and XGetImage() to
read and write any location in the X server address space. It could
first use XGetImage to search
for the stack, then use XDrawPoint to rewrite it to return into another
pixmap the client allocated,
thus getting the X server to execute arbitrary code.


This issue was discovered by Luke Hutchison, with the security implications and
patch found by Soeren Sandmann.

Comment 1 Mark J. Cox 2005-09-13 09:51:20 UTC
Public, removing embargo

Comment 2 Red Hat Bugzilla 2005-09-15 08:47:49 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2005-501.html



Note You need to log in before you can comment on or make changes to this bug.