CVE-2015-0255
NoneCVSS
—
EPSS
4.3%
Published
Feb 13, 2015
CISA due date
—
Cloudanix analysis
A flaw in graphics server software could let remote attackers read private data from memory or make the graphical interface crash.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Data Exposure
- Component
- Application
- Class
- Information Disclosure
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The flaw permits remote attackers to read arbitrary process memory contents or trigger a crash in the X server by supplying a malicious string length field inside an XkbSetGeometry request.
Why it matters to the business
Attackers may extract sensitive data from server memory or interrupt graphical sessions, leading to information exposure and operational disruption on affected systems.
How an attack unfolds
An attacker establishes a network connection to a vulnerable X server and transmits a crafted XkbSetGeometry request containing an oversized or invalid string length value, causing the server to either return memory contents or terminate.
How to fix it
Upgrade X.Org Server to version 1.16.3 or 1.17.1 (or later releases that contain the fix). Restrict network exposure of the X11 port where possible.
How to confirm the fix worked
Verify installed xorg-server package version is 1.16.3 or newer; test that XkbSetGeometry requests with invalid lengths no longer leak data or cause crashes.
Typical attack path
- Establish TCP connection to the X11 listener
- Send crafted XkbSetGeometry request with manipulated string length
- Receive leaked memory data or observe server crash
How to detect it
Inspect network captures for X protocol packets containing XkbSetGeometry requests; examine X server logs and core dumps for unexpected crashes or memory disclosure events around the time of suspicious connections.
What your security team should do
- Apply the version upgrade to 1.16.3 or 1.17.1 across all affected hosts
- Disable or firewall X11 TCP listening ports unless explicitly required
- Review system logs for historical X server crashes that may indicate prior attempts
The record
X.Org Server (aka xserver and xorg-server) before 1.16.3 and 1.17.x before 1.17.1 allows remote attackers to obtain sensitive information from process memory or cause a denial of service (crash) via a crafted string length value in a XkbSetGeometry request.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | xorg-server | 0 | 2:1.16.4-1 |
| Debian:12 | xorg-server | 0 | 2:1.16.4-1 |
| Debian:13 | xorg-server | 0 | 2:1.16.4-1 |
| Debian:14 | xorg-server | 0 | 2:1.16.4-1 |
| Debian:6.0 | xorg-server | 0 | 2:1.7.7-18+deb6u2 |
| Debian:7 | xorg-server | 0 | 2:1.12.4-6+deb7u6 |
| Mageia:4 | x11-server | 0 | 1.14.5-2.3.mga4 |
| Red Hat:enterprise_linux:6::client | xorg-x11-server | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::client | xorg-x11-server-Xdmx | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::client | xorg-x11-server-Xephyr | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::client | xorg-x11-server-Xnest | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::client | xorg-x11-server-Xorg | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::client | xorg-x11-server-Xvfb | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::client | xorg-x11-server-common | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::client | xorg-x11-server-debuginfo | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::client | xorg-x11-server-devel | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::client | xorg-x11-server-source | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::computenode | xorg-x11-server | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::computenode | xorg-x11-server-Xdmx | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::computenode | xorg-x11-server-Xephyr | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::computenode | xorg-x11-server-Xnest | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::computenode | xorg-x11-server-Xorg | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::computenode | xorg-x11-server-Xvfb | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::computenode | xorg-x11-server-common | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::computenode | xorg-x11-server-debuginfo | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::computenode | xorg-x11-server-devel | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::computenode | xorg-x11-server-source | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::server | xorg-x11-server | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::server | xorg-x11-server-Xdmx | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::server | xorg-x11-server-Xephyr | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::server | xorg-x11-server-Xnest | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::server | xorg-x11-server-Xorg | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::server | xorg-x11-server-Xvfb | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::server | xorg-x11-server-common | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::server | xorg-x11-server-debuginfo | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::server | xorg-x11-server-devel | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::server | xorg-x11-server-source | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::workstation | xorg-x11-server | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::workstation | xorg-x11-server-Xdmx | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::workstation | xorg-x11-server-Xephyr | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::workstation | xorg-x11-server-Xnest | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::workstation | xorg-x11-server-Xorg | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::workstation | xorg-x11-server-Xvfb | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::workstation | xorg-x11-server-common | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::workstation | xorg-x11-server-debuginfo | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::workstation | xorg-x11-server-devel | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:6::workstation | xorg-x11-server-source | 0 | 0:1.15.0-26.el6_6 |
| Red Hat:enterprise_linux:7::client | xorg-x11-server | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::client | xorg-x11-server-Xdmx | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::client | xorg-x11-server-Xephyr | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::client | xorg-x11-server-Xnest | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::client | xorg-x11-server-Xorg | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::client | xorg-x11-server-Xvfb | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::client | xorg-x11-server-common | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::client | xorg-x11-server-debuginfo | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::client | xorg-x11-server-devel | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::client | xorg-x11-server-source | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::computenode | xorg-x11-server | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::computenode | xorg-x11-server-Xdmx | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::computenode | xorg-x11-server-Xephyr | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::computenode | xorg-x11-server-Xnest | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::computenode | xorg-x11-server-Xorg | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::computenode | xorg-x11-server-Xvfb | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::computenode | xorg-x11-server-common | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::computenode | xorg-x11-server-debuginfo | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::computenode | xorg-x11-server-devel | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::computenode | xorg-x11-server-source | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::server | xorg-x11-server | 0 | 0:1.15.0-33.ael7b_1 |
| Red Hat:enterprise_linux:7::server | xorg-x11-server-Xdmx | 0 | 0:1.15.0-33.ael7b_1 |
| Red Hat:enterprise_linux:7::server | xorg-x11-server-Xephyr | 0 | 0:1.15.0-33.ael7b_1 |
| Red Hat:enterprise_linux:7::server | xorg-x11-server-Xnest | 0 | 0:1.15.0-33.ael7b_1 |
| Red Hat:enterprise_linux:7::server | xorg-x11-server-Xorg | 0 | 0:1.15.0-33.ael7b_1 |
| Red Hat:enterprise_linux:7::server | xorg-x11-server-Xvfb | 0 | 0:1.15.0-33.ael7b_1 |
| Red Hat:enterprise_linux:7::server | xorg-x11-server-common | 0 | 0:1.15.0-33.ael7b_1 |
| Red Hat:enterprise_linux:7::server | xorg-x11-server-debuginfo | 0 | 0:1.15.0-33.ael7b_1 |
| Red Hat:enterprise_linux:7::server | xorg-x11-server-devel | 0 | 0:1.15.0-33.ael7b_1 |
| Red Hat:enterprise_linux:7::server | xorg-x11-server-source | 0 | 0:1.15.0-33.ael7b_1 |
| Red Hat:enterprise_linux:7::workstation | xorg-x11-server | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::workstation | xorg-x11-server-Xdmx | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::workstation | xorg-x11-server-Xephyr | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::workstation | xorg-x11-server-Xnest | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::workstation | xorg-x11-server-Xorg | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::workstation | xorg-x11-server-Xvfb | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::workstation | xorg-x11-server-common | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::workstation | xorg-x11-server-debuginfo | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::workstation | xorg-x11-server-devel | 0 | 0:1.15.0-33.el7_1 |
| Red Hat:enterprise_linux:7::workstation | xorg-x11-server-source | 0 | 0:1.15.0-33.el7_1 |
| SUSE:Linux Enterprise Desktop 12 | fltk | 0 | 1.3.2-10.2 |
| SUSE:Linux Enterprise Desktop 12 | tigervnc | 0 | 1.4.1-32.1 |
| SUSE:Linux Enterprise Desktop 12 | xorg-x11-server | 0 | 7.6_1.15.2-21.1 |
| SUSE:Linux Enterprise Server 12 | fltk | 0 | 1.3.2-10.2 |
| SUSE:Linux Enterprise Server 12 | tigervnc | 0 | 1.4.1-32.1 |
| SUSE:Linux Enterprise Server 12 | xorg-x11-server | 0 | 7.6_1.15.2-21.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | fltk | 0 | 1.3.2-10.2 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | tigervnc | 0 | 1.4.1-32.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | xorg-x11-server | 0 | 7.6_1.15.2-21.1 |
| SUSE:Linux Enterprise Software Development Kit 12 | fltk | 0 | 1.3.2-10.2 |
| SUSE:Linux Enterprise Software Development Kit 12 | xorg-x11-server | 0 | 7.6_1.15.2-21.1 |
| Ubuntu:14.04:LTS | xorg-server | 0 | 2:1.15.1-0ubuntu2.7 |
| Ubuntu:14.04:LTS | xorg-server-lts-utopic | 0 | 2:1.16.0-1ubuntu1.2~trusty2 |
| Ubuntu:18.04:LTS | vnc4 | 0 | No fix |
| Ubuntu:Pro:14.04:LTS | vnc4 | 0 | 4.1.1+xorg4.3.0-37ubuntu5.0.2+esm1 |
| Ubuntu:Pro:16.04:LTS | vnc4 | 0 | 4.1.1+xorg4.3.0-37.3ubuntu2.1+esm1 |
| Ubuntu:Pro:18.04:LTS | vnc4 | 0 | No fix |
| openSUSE:Tumbleweed | tigervnc | 0 | 1.7.0-2.1 |
Related vulnerabilities
- CVE-2024-9632 A flaw was found in the X.org server. Also affects xorg-server
- CVE-2024-31083 A use-after-free vulnerability was found in the ProcRenderAddGlyphs() function of Xorg… Also affects xorg-server
- CVE-2024-31081 A heap-based buffer over-read vulnerability was found in the X.org server's… Also affects xorg-server
- CVE-2024-31082 A heap-based buffer over-read vulnerability was found in the X.org server's… Also affects xorg-server
- CVE-2024-31080 A heap-based buffer over-read vulnerability was found in the X.org server's… Also affects xorg-server
- CVE-2024-21886 A heap buffer overflow flaw was found in the DisableDevice function in the X.Org server. Also affects xorg-server
- CVE-2024-21885 A flaw was found in X.Org server. Also affects xorg-server
- CVE-2024-0229 An out-of-bounds memory access flaw was found in the X.Org server. Also affects xorg-server