CVE-2012-1699: Buffer Overflow
From the upstream announcement [1]:
A vulnerability has been found in the X11R6 font server code in the handling of the SetEventMask request in xfs - if an invalid mask is specified, it passes that bad mask to the SendErrToClient() function for returning to the client in the error message. Unfortunately, SendErrToClient() expects a pointer, but was being passed the raw mask value, causing it to use the mask as a pointer, either segfaulting (if that happened to be an invalid pointer), or returning whatever data happened to be accessible in the 4 bytes at the address specified by the mask value.
X11R6 through X11R6.6 appear to be vulnerable. The fix shown below was introduced by XFree86 in their 3.3.3 release as part of the commit for: Prototype/ansification cleanup for Xserver/XIE, xfs, fontlib, mkfontdir, and fix some bugs found along the way (#2103, Thomas Dickey).
X11R6.7 incorporated the XFree86 changes, and thus X11R6.7 and later releases from X.Org are not vulnerable.
[1] http://lists.freedesktop.org/archives/xorg-announce/2012-July/002040.html
Statement:
Not vulnerable. This issue did not affect the versions of xorg-x11-xfs as shipped with Red Hat Enterprise Linux 5. It does not affect Red Hat Enterprise Linux 6 as it no longer uses or provides the XFS font server.
Other sources
The ProcSetEventMask function in difs/events.c in the xfs font server for X.Org X11R6 through X11R6.6 and XFree86 before 3.3.3 calls the SendErrToClient function with a mask value instead of a pointer, which allows local users to cause a denial of service (memory corruption and crash) or obtain potentially sensitive information from memory via a SetEventMask request that triggers an invalid pointer dereference.
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2012-1699?
CVE-2012-1699 is considered to have a moderate severity due to the potential for denial of service attacks.
How do I fix CVE-2012-1699?
To fix CVE-2012-1699, you should update the X11 X Server Utilities to a patched version that addresses this vulnerability.
What versions of software are affected by CVE-2012-1699?
CVE-2012-1699 affects specific versions of X11 X Server Utilities including 6.0, 6.1, 6.3, 6.4, 6.5.1, and 6.6, as well as XFree86 versions up to 3.3.2.
What type of vulnerability is CVE-2012-1699?
CVE-2012-1699 is a vulnerability related to improper handling of the SetEventMask request in the X11R6 font server.
Can CVE-2012-1699 lead to security risks?
Yes, CVE-2012-1699 can lead to security risks such as denial of service, making it crucial to apply recommended security updates.