304.88, 310.44, and 313.30: fixes for CVE-2013-0131

CVE-2013-0131: NVIDIA UNIX GPU Driver ARGB Cursor Buffer Overflow in "NoScanout" Mode.

When the NVIDIA driver for the X Window System is operated in "NoScanout" mode,
and an X client installs an ARGB cursor that is larger than the expected size
(64x64 or 256x256, depending on the driver version), the driver will overflow a
buffer. This can cause a denial of service (e.g., an X server segmentation
fault), or could be exploited to achieve arbitrary code execution. Because the X
server runs as setuid root in many configurations, an attacker could potentially
use this vulnerability in those configurations to gain root privileges.  To
install an ARGB cursor, an application would require a connection to a running X
server. Normally, X servers are configured to only accept authenticated
connections from the local host, but some X servers may be configured to more
permissively allow connections, and/or to allow connections over a network.

"NoScanout" mode is enabled implicitly on NVIDIA products which lack display
output connectors, and can be enabled explicitly on some other configurations
with the X configuration option:

  Option "UseDisplayDevice" "none"

NVIDIA GPU drivers for OSes other than Linux, FreeBSD, VMware ESX, and Solaris
are not affected.

This vulnerability has been present since NVIDIA driver version 195.22. The
overflow is fixed in 304.88, 310.44, 313.30, and all drivers newer than those
versions.  NVIDIA recommends that users upgrade to a fixed driver version, or
disable NoScanout mode, where possible.

This vulnerability was identified by NVIDIA. There are no known reports of
exploits of this vulnerability in the wild.

Security issues pertaining to NVIDIA's UNIX GPU Drivers can be reported through
unix-security@nvidia.com or the web form available from
http://www.nvidia.com/object/product-security.html