CVE-2018-20748
Description
LibVNC before 0.9.12 contains multiple heap out-of-bounds write vulnerabilities in libvncclient/rfbproto.c. The fix for CVE-2018-20019 was incomplete.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
LibVNC before 0.9.12 has heap out-of-bounds writes in libvncclient/rfbproto.c due to incomplete fix for CVE-2018-20019, allowing server-triggered memory corruption.
Vulnerability
LibVNC versions prior to 0.9.12 contain multiple heap out-of-bounds write vulnerabilities libvncclient/rfbproto.c. The issues stem from incomplete fixes for CVE-2018-20019, where functions like ReadReason() and InitialiseRFBConnection() fail to properly validate lengths received from a malicious VNC server. Specifically, server-sent reason strings and desktop name lengths were not bounded, allowing arbitrary large values to be used in memory allocation and subsequent writes, leading to heap corruption [1][2][3][4].
Exploitation
An attacker operating a malicious VNC server can exploit these vulnerabilities by sending oversized reason strings or desktop name lengths during the initial handshake or authentication phase. The vulnerable code does not verify the length against a safe maximum before using it in a memory allocation and then reading server-provided data into that buffer. No client authentication or special privileges are required; the attacker only needs to convince the client to connect to the malicious server [1][2][3][4].
Impact
Successful exploitation leads to heap-based out-of-bounds writes, potentially causing memory corruption. This can result in a denial of service (crash) or, in some cases, arbitrary code execution in the context of the VNC client application. The attacker does not need to be authenticated, and the vulnerability is accessible remotely over the network [1][2][3][4].
Mitigation
The issue is fixed in LibVNC version 0.9.12, released in early 2019. The fix introduces a size limit of 1 MB for reason strings and desktop name lengths, and properly validates the received lengths before allocation [1][3][4]. Users should upgrade to LibVNC 0.9.12 or later. For installations that cannot be upgraded, network-level protections, such as restricting VNC connections to trusted servers, can reduce risk, but no direct workaround is available [2].
- LibVNCClient: remove now-useless cast · LibVNC/libvncserver@a64c3b3
- security - Re: libvnc and tightvnc vulnerabilities
- LibVNCClient: ignore server-sent reason strings longer than 1MB · LibVNC/libvncserver@e34bcbb
- LibVNCClient: fail on server-sent desktop name lengths longer than 1MB · LibVNC/libvncserver@c2c4b81
AI Insight generated on May 26, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected products
23LibVNCServer-0.9.10, LibVNCServer-0.9.11, LibVNCServer-0.9.8, …+ 1 more
- (no CPE)range: LibVNCServer-0.9.10, LibVNCServer-0.9.11, LibVNCServer-0.9.8, …
- (no CPE)range: < 0.9.12
- osv-coords21 versionspkg:rpm/opensuse/LibVNCServer&distro=openSUSE%20Leap%2015.0pkg:rpm/suse/LibVNCServer&distro=SUSE%20Enterprise%20Storage%204pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Package%20Hub%2015pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Point%20of%20Sale%2011%20SP3pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%2011%20SP4pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%2012%20SP1-LTSSpkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%2012%20SP2-BCLpkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%2012%20SP2-LTSSpkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%2012%20SP3pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%2012%20SP4pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%2012-LTSSpkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2011%20SP4pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2012%20SP1pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2012%20SP2pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2012%20SP3pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2012%20SP4pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Software%20Development%20Kit%2011%20SP4pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Software%20Development%20Kit%2012%20SP3pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Software%20Development%20Kit%2012%20SP4pkg:rpm/suse/LibVNCServer&distro=SUSE%20Linux%20Enterprise%20Workstation%20Extension%2015pkg:rpm/suse/LibVNCServer&distro=SUSE%20OpenStack%20Cloud%207
< 0.9.10-lp150.3.6.1+ 20 more
- (no CPE)range: < 0.9.10-lp150.3.6.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.10-4.6.1
- (no CPE)range: < 0.9.1-160.9.1
- (no CPE)range: < 0.9.1-160.9.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.1-160.9.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.1-160.9.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.9-17.11.1
- (no CPE)range: < 0.9.10-4.6.1
- (no CPE)range: < 0.9.9-17.11.1
Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
12- usn.ubuntu.com/3877-1/mitrevendor-advisoryx_refsource_UBUNTU
- usn.ubuntu.com/4547-1/mitrevendor-advisoryx_refsource_UBUNTU
- usn.ubuntu.com/4587-1/mitrevendor-advisoryx_refsource_UBUNTU
- cert-portal.siemens.com/productcert/pdf/ssa-390195.pdfmitrex_refsource_CONFIRM
- github.com/LibVNC/libvncserver/commit/a64c3b37af9a6c8f8009d7516874b8d266b42baemitrex_refsource_MISC
- github.com/LibVNC/libvncserver/commit/c2c4b81e6cb3b485fb1ec7ba9e7defeb889f6ba7mitrex_refsource_MISC
- github.com/LibVNC/libvncserver/commit/c5ba3fee85a7ecbbca1df5ffd46d32b92757bc2amitrex_refsource_MISC
- github.com/LibVNC/libvncserver/commit/e34bcbb759ca5bef85809967a268fdf214c1ad2cmitrex_refsource_MISC
- github.com/LibVNC/libvncserver/issues/273mitrex_refsource_MISC
- lists.debian.org/debian-lts-announce/2019/01/msg00029.htmlmitremailing-listx_refsource_MLIST
- lists.debian.org/debian-lts-announce/2019/10/msg00042.htmlmitremailing-listx_refsource_MLIST
- www.openwall.com/lists/oss-security/2018/12/10/8mitrex_refsource_MISC
News mentions
0No linked articles in our index yet.