FreeBSD VuXML: Documenting security issues in FreeBSD and the FreeBSD Ports Collection

xorg -- protocol handling issues in X Window System client libraries

Affected packages
libX11 < 1.6.0
libXext < 1.3.2
libXfixes < 5.0.1
libXi < 1.7_1
libXinerama < 1.1.3
libXp < 1.0.2
libXrandr < 1.4.1
libXrender < 0.9.7_1
libXres < 1.0.7
libXtst < 1.2.2
libXv < 1.0.8
libXvMC < 1.0.7_1
libXxf86dga < 1.1.4
libdmx < 1.1.3
libxcb < 1.9.1
libGL < 7.6.1_4
7.8.0 < libGL < 8.0.5_4
xf86-video-openchrome < 0.3.3
libFS < 1.0.5
libXxf86vm < 1.1.3
libXt < 1.1.4
libXcursor < 1.1.14

Details

VuXML ID 2eebebff-cd3b-11e2-8f09-001b38c3836c
Discovery 2013-05-23
Entry 2013-06-04

freedesktop.org reports:

Ilja van Sprundel, a security researcher with IOActive, has discovered a large number of issues in the way various X client libraries handle the responses they receive from servers, and has worked with X.Org's security team to analyze, confirm, and fix these issues.

Most of these issues stem from the client libraries trusting the server to send correct protocol data, and not verifying that the values will not overflow or cause other damage. Most of the time X clients & servers are run by the same user, with the server more privileged from the clients, so this is not a problem, but there are scenarios in which a privileged client can be connected to an unprivileged server, for instance, connecting a setuid X client (such as a screen lock program) to a virtual X server (such as Xvfb or Xephyr) which the user has modified to return invalid data, potentially allowing the user to escalate their privileges.

The vulnerabilities include:

Integer overflows calculating memory needs for replies.

Sign extension issues calculating memory needs for replies.

Buffer overflows due to not validating length or offset values in replies.

Integer overflows parsing user-specified files.

Unbounded recursion parsing user-specified files.

Memory corruption due to unchecked return values.

References

CVE Name CVE-2013-1981
CVE Name CVE-2013-1982
CVE Name CVE-2013-1983
CVE Name CVE-2013-1984
CVE Name CVE-2013-1985
CVE Name CVE-2013-1986
CVE Name CVE-2013-1987
CVE Name CVE-2013-1988
CVE Name CVE-2013-1989
CVE Name CVE-2013-1990
CVE Name CVE-2013-1991
CVE Name CVE-2013-1992
CVE Name CVE-2013-1993
CVE Name CVE-2013-1994
CVE Name CVE-2013-1995
CVE Name CVE-2013-1996
CVE Name CVE-2013-1997
CVE Name CVE-2013-1998
CVE Name CVE-2013-1999
CVE Name CVE-2013-2000
CVE Name CVE-2013-2001
CVE Name CVE-2013-2002
CVE Name CVE-2013-2003
CVE Name CVE-2013-2004
CVE Name CVE-2013-2005
CVE Name CVE-2013-2062
CVE Name CVE-2013-2063
CVE Name CVE-2013-2064
CVE Name CVE-2013-2066