{"id":"CVE-2026-50538","aliases":["DEBIAN-CVE-2026-50538","EUVD-2026-64167","GHSA-v9pm-47h4-jcq8","MGASA-2026-0315","OESA-2026-3318","OESA-2026-3319","OESA-2026-3320","OESA-2026-3489","SUSE-SU-2026:23601-1","SUSE-SU-2026:3803-1","SUSE-SU-2026:4022-1","SUSE-SU-2026:4024-1","UBUNTU-CVE-2026-50538","USN-8494-1","openSUSE-SU-2026:11601-1","openSUSE-SU-2026:21735-1"],"status":"published","title":"libvncclient Tight decoder has an attacker-controlled heap out-of-bounds write","description":"LibVNCClient is a library for easy implementation of a VNC client. In versions 0.9.12 through 0.9.15, a malicious (or man-in-the-middle) VNC server can force a connecting `libvncclient` to write attacker-controlled data past the end of its framebuffer. This is an out-of-bounds heap write with attacker-controlled length, contents, and offset. It needs no authentication (the attacker\nis the server), works in a default build with default settings, and fires from a single `FramebufferUpdate` the moment the victim connects. It crashes any client unconditionally (denial of service); we also demonstrated it overwriting an application callback pointer and redirecting execution to attacker-chosen code (code execution) under the default configuration. Commit 540332be3e0acc566fa64da6f1b4680c72c724dd patches the issue.","severity":{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-11","score":0.00404,"percentile":0.35075,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-122","CWE-787"],"published":"2026-06-15T00:00:00Z","modified":"2026-10-28T11:16:37Z","fixes":[{"ecosystem":"Debian:12","package":"libvncserver","fixed_in":["0.9.14+dfsg-1+deb12u2"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"libvncserver","fixed_in":["0.9.15+dfsg-1+deb13u2"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"libvncserver","fixed_in":["0.9.15+dfsg-6"],"sources":["osv"]},{"ecosystem":"openEuler:24.03-LTS-SP1","package":"libvncserver","fixed_in":["0.9.13-6.oe2403sp1"],"sources":["osv"]},{"ecosystem":"openEuler:24.03-LTS-SP3","package":"libvncserver","fixed_in":["0.9.13-6.oe2403sp3"],"sources":["osv"]},{"ecosystem":"openEuler:22.03-LTS-SP4","package":"libvncserver","fixed_in":["0.9.13-6.oe2203sp4"],"sources":["osv"]},{"ecosystem":"openEuler:24.03-LTS-SP4","package":"libvncserver","fixed_in":["0.9.13-6.oe2403sp4"],"sources":["osv"]},{"ecosystem":"SUSE:Linux Enterprise Server 16.0","package":"LibVNCServer","fixed_in":["0.9.14-160000.6.1"],"sources":["osv"]},{"ecosystem":"SUSE:Linux Enterprise Server for SAP applications 16.0","package":"LibVNCServer","fixed_in":["0.9.14-160000.6.1"],"sources":["osv"]},{"ecosystem":"SUSE:Linux Enterprise Module for Package Hub 15 SP7","package":"LibVNCServer","fixed_in":["0.9.10-150000.4.41.1","0.9.14-150600.3.12.1"],"sources":["osv"]},{"ecosystem":"SUSE:Linux Enterprise Workstation Extension 15 SP7","package":"LibVNCServer","fixed_in":["0.9.14-150600.3.12.1"],"sources":["osv"]},{"ecosystem":"SUSE:Linux Enterprise Server 12 SP5-LTSS","package":"LibVNCServer","fixed_in":["0.9.9-17.50.1"],"sources":["osv"]},{"ecosystem":"SUSE:Linux Enterprise Server LTSS Extended Security 12 SP5","package":"LibVNCServer","fixed_in":["0.9.9-17.50.1"],"sources":["osv"]},{"ecosystem":"Ubuntu:22.04:LTS","package":"libvncserver","fixed_in":["0.9.13+dfsg-3ubuntu0.2"],"sources":["osv"]},{"ecosystem":"Ubuntu:24.04:LTS","package":"libvncserver","fixed_in":["0.9.14+dfsg-1ubuntu0.2"],"sources":["osv"]},{"ecosystem":"Ubuntu:25.10","package":"libvncserver","fixed_in":["0.9.15+dfsg-1ubuntu0.2"],"sources":["osv"]},{"ecosystem":"Ubuntu:26.04:LTS","package":"libvncserver","fixed_in":["0.9.15+dfsg-3ubuntu0.2"],"sources":["osv"]},{"ecosystem":"openSUSE:Tumbleweed","package":"LibVNCServer","fixed_in":["0.9.15-4.1"],"sources":["osv"]},{"ecosystem":"openSUSE:Leap 16.0","package":"LibVNCServer","fixed_in":["0.9.14-160000.6.1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.14+dfsg-1+deb12u2"}]}],"versions":["0.9.14+dfsg-1","0.9.14+dfsg-1+deb12u1"]},{"source":"osv","ecosystem":"Debian:13","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.15+dfsg-1+deb13u2"}]}],"versions":["0.9.15+dfsg-1","0.9.15+dfsg-1+deb13u1"]},{"source":"osv","ecosystem":"Debian:14","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.15+dfsg-6"}]}],"versions":["0.9.15+dfsg-1","0.9.15+dfsg-2","0.9.15+dfsg-3","0.9.15+dfsg-4","0.9.15+dfsg-5"]},{"source":"osv","ecosystem":"Mageia:10","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.15-2.1.mga10"}]}],"bundled":4},{"source":"osv","ecosystem":"Mageia:9","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.14-1.1.mga9"}]}],"bundled":4},{"source":"osv","ecosystem":"openEuler:24.03-LTS-SP1","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.13-6.oe2403sp1"}]}]},{"source":"osv","ecosystem":"openEuler:24.03-LTS-SP3","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.13-6.oe2403sp3"}]}]},{"source":"osv","ecosystem":"openEuler:22.03-LTS-SP4","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.13-6.oe2203sp4"}]}]},{"source":"osv","ecosystem":"openEuler:24.03-LTS-SP4","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.13-6.oe2403sp4"}]}]},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 16.0","package":"LibVNCServer","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.14-160000.6.1"}]}]},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP applications 16.0","package":"LibVNCServer","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.14-160000.6.1"}]}]},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Package Hub 15 SP7","package":"LibVNCServer","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.10-150000.4.41.1"}]}]},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Package Hub 15 SP7","package":"LibVNCServer","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.14-150600.3.12.1"}]}]},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Workstation Extension 15 SP7","package":"LibVNCServer","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.14-150600.3.12.1"}]}]},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 12 SP5-LTSS","package":"LibVNCServer","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.9-17.50.1"}]}]},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server LTSS Extended Security 12 SP5","package":"LibVNCServer","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.9-17.50.1"}]}]},{"source":"osv","ecosystem":"Ubuntu:Pro:14.04:LTS","package":"tightvnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.3.9-6.4","1.3.9-6.4ubuntu1","1.3.9-6.5+deb8u1build0.14.04.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:14.04:LTS","package":"x11vnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.13-1.1"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.10+dfsg-3","0.9.10+dfsg-3build1","0.9.10+dfsg-3ubuntu0.16.04.1","0.9.10+dfsg-3ubuntu0.16.04.2","0.9.10+dfsg-3ubuntu0.16.04.3","0.9.10+dfsg-3ubuntu0.16.04.4","0.9.10+dfsg-3ubuntu0.16.04.5","0.9.10+dfsg-3ubuntu0.16.04.6"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"vino","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.8.1-0ubuntu6","3.8.1-0ubuntu7","3.8.1-0ubuntu8","3.8.1-0ubuntu9","3.8.1-0ubuntu9.1","3.8.1-0ubuntu9.2","3.8.1-0ubuntu9.3","3.8.1-0ubuntu9.4"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"italc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:2.0.2+dfsg1-3","1:2.0.2+dfsg1-4","1:2.0.2+dfsg1-4ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"tightvnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.3.10-0ubuntu2","1.3.10-0ubuntu3"]},{"source":"osv","ecosystem":"Ubuntu:Pro:16.04:LTS","package":"x11vnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.13-1.2build1","0.9.13-1.2ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.11+dfsg-1","0.9.11+dfsg-1ubuntu1","0.9.11+dfsg-1ubuntu1.1","0.9.11+dfsg-1ubuntu1.2","0.9.11+dfsg-1ubuntu1.3","0.9.11+dfsg-1ubuntu1.4"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"vino","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.8.1-0ubuntu12","3.22.0-2ubuntu1","3.22.0-3ubuntu1","3.22.0-3ubuntu1.1","3.22.0-3ubuntu1.2"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"italc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:3.0.3+dfsg1-1","1:3.0.3+dfsg1-2","1:3.0.3+dfsg1-2build1","1:3.0.3+dfsg1-2ubuntu1","1:3.0.3+dfsg1-3","1:3.0.3+dfsg1-3ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"tightvnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.3.10-0ubuntu3","1.3.10-0ubuntu4"]},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"x11vnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.13-2","0.9.13-2build1","0.9.13-3","0.9.13-3ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.11+dfsg-1.3","0.9.12+dfsg-3ubuntu3","0.9.12+dfsg-6","0.9.12+dfsg-7","0.9.12+dfsg-8","0.9.12+dfsg-9","0.9.12+dfsg-9ubuntu0.1","0.9.12+dfsg-9ubuntu0.2","0.9.12+dfsg-9ubuntu0.3"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"vino","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.22.0-5ubuntu2","3.22.0-5ubuntu2.1","3.22.0-5ubuntu2.2"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"tightvnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.3.10-0ubuntu5"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"veyon","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.2.4+repack1-2","4.2.5+repack1-1","4.3.1+repack1-1","4.3.1+repack1-2","4.3.1+repack1-2build1","4.3.1+repack1-2build2"]},{"source":"osv","ecosystem":"Ubuntu:Pro:20.04:LTS","package":"x11vnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.13-6","0.9.16-3","0.9.16-3ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.13+dfsg-3ubuntu0.2"}]}],"versions":["0.9.13+dfsg-3","0.9.13+dfsg-3build1","0.9.13+dfsg-3build2","0.9.13+dfsg-3ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"tightvnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:1.3.10-3","1:1.3.10-5"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"veyon","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.5.3+repack1-1build1","4.5.3+repack1-1build2"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"vino","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.22.0-6ubuntu3"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"x11vnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.16-7","0.9.16-7build1","0.9.16-8"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.14+dfsg-1ubuntu0.2"}]}],"versions":["0.9.14+dfsg-1","0.9.14+dfsg-1build1","0.9.14+dfsg-1build2","0.9.14+dfsg-1ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"tightvnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:1.3.10-7","1:1.3.10-7build1","1:1.3.10-7build2","1:1.3.10-8"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"veyon","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.7.5+repack1-1build2","4.7.5+repack1-1ubuntu1","4.7.5+repack1-1ubuntu3","4.7.5+repack1-1ubuntu4","4.7.5+repack1-1ubuntu5"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"vino","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.22.0-6ubuntu3","3.22.0-6ubuntu4","3.22.0-6ubuntu5"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"x11vnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.16-9","0.9.16-9ubuntu1","0.9.16-10"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.15+dfsg-1ubuntu0.2"}]}],"versions":["0.9.14+dfsg-1build2","0.9.15+dfsg-1","0.9.15+dfsg-1ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"tightvnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:1.3.10-9","1:1.3.10-10"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"veyon","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.7.5+repack1-1ubuntu6","4.7.5+repack1-1ubuntu7","4.9.7+repack1-1"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"vino","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.22.0-7ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"x11vnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.16-10","0.9.17-1"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"tightvnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:1.3.10-10build1","1:1.3.10-11"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"veyon","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.9.7+repack1-1build1","4.9.7+repack1-1.1","4.9.7+repack1-1.1build1","4.9.7+repack1-1.1build2"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"x11vnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.17-2","0.9.17-3","0.9.17-3build1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.15+dfsg-3ubuntu0.2"}]}],"versions":["0.9.15+dfsg-1","0.9.15+dfsg-2","0.9.15+dfsg-3","0.9.15+dfsg-3ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"tightvnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:1.3.10-10","1:1.3.10-10build1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"veyon","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.9.7+repack1-1","4.9.7+repack1-1build1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"x11vnc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.17-1","0.9.17-2"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.13+dfsg-3ubuntu0.2"}]}],"versions":["0.9.13+dfsg-3","0.9.13+dfsg-3build1","0.9.13+dfsg-3build2","0.9.13+dfsg-3ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.14+dfsg-1ubuntu0.2"}]}],"versions":["0.9.14+dfsg-1","0.9.14+dfsg-1build1","0.9.14+dfsg-1build2","0.9.14+dfsg-1ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.15+dfsg-1ubuntu0.2"}]}],"versions":["0.9.14+dfsg-1build2","0.9.15+dfsg-1","0.9.15+dfsg-1ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"libvncserver","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.15+dfsg-3ubuntu0.2"}]}],"versions":["0.9.15+dfsg-1","0.9.15+dfsg-2","0.9.15+dfsg-3","0.9.15+dfsg-3ubuntu0.1"]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"LibVNCServer","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.15-4.1"}]}]},{"source":"osv","ecosystem":"openSUSE:Leap 16.0","package":"LibVNCServer","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.14-160000.6.1"}]}]}],"products":[{"vendor":"libvnc","product":"libvncserver"}],"references":[{"url":"https://github.com/LibVNC/libvncserver/security/advisories/GHSA-v9pm-47h4-jcq8","tags":["x_refsource_CONFIRM","exploit","advisory","report"]},{"url":"https://github.com/LibVNC/libvncserver/commit/540332be3e0acc566fa64da6f1b4680c72c724dd","tags":["x_refsource_MISC","fix"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/50xxx/CVE-2026-50538.json","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-50538","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-50538","tags":["advisory"]},{"url":"https://advisories.mageia.org/MGASA-2026-0315.html","tags":["advisory"]},{"url":"https://bugs.mageia.org/show_bug.cgi?id=35628","tags":["report"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/message/SULCQANWMHMI72ZJZEJWSA2YD3ZSRUKQ/","tags":["web"]},{"url":"https://github.com/LibVNC/libvncserver/security/advisories/GHSA-jcc5-8wj4-7c58","tags":["advisory"]},{"url":"https://ubuntu.com/security/notices/USN-8463-1","tags":["advisory"]},{"url":"https://github.com/LibVNC/libvncserver/security/advisories/GHSA-87q7-v983-qwcj","tags":["advisory"]},{"url":"https://github.com/LibVNC/libvncserver/security/advisories/GHSA-xjp8-4qqv-5x4x","tags":["advisory"]},{"url":"https://ubuntu.com/security/notices/USN-8494-1","tags":["advisory"]},{"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-3318","tags":["advisory"]},{"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-3319","tags":["advisory"]},{"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-3320","tags":["advisory"]},{"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-3489","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2026/suse-su-202623601-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1276218","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2026-50538","tags":["web"]},{"url":"https://www.suse.com/support/update/announcement/2026/suse-su-20263803-1/","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2026/suse-su-20264022-1/","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2026/suse-su-20264024-1/","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-50538","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-50538","tags":["report"]},{"url":"","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2026-50538","title":"libvncclient Tight decoder has an attacker-controlled heap out-of-bounds write","description":"LibVNCClient is a library for easy implementation of a VNC client. In versions 0.9.12 through 0.9.15, a malicious (or man-in-the-middle) VNC server can force a connecting `libvncclient` to write attacker-controlled data past the end of its framebuffer. This is an out-of-bounds heap write with attacker-controlled length, contents, and offset. It needs no authentication (the attacker\nis the server), works in a default build with default settings, and fires from a single `FramebufferUpdate` the moment the victim connects. It crashes any client unconditionally (denial of service); we also demonstrated it overwriting an application callback pointer and redirecting execution to attacker-chosen code (code execution) under the default configuration. Commit 540332be3e0acc566fa64da6f1b4680c72c724dd patches the issue.","status":"published","published":"2026-08-21T21:03:58.147Z","modified":"2026-08-24T19:39:57.811Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"cna"}],"cwes":["CWE-122","CWE-787"],"updated_at":"2026-11-02T14:20:08.734143Z"}],"euvd":[{"id":"EUVD-2026-64167","description":"LibVNCClient is a library for easy implementation of a VNC client. In versions 0.9.12 through 0.9.15, a malicious (or man-in-the-middle) VNC server can force a connecting `libvncclient` to write attacker-controlled data past the end of its framebuffer. This is an out-of-bounds heap write with attacker-controlled length, contents, and offset. It needs no authentication (the attacker\nis the server), works in a default build with default settings, and fires from a single `FramebufferUpdate` the moment the victim connects. It crashes any client unconditionally (denial of service); we also demonstrated it overwriting an application callback pointer and redirecting execution to attacker-chosen code (code execution) under the default configuration. Commit 540332be3e0acc566fa64da6f1b4680c72c724dd patches the issue.","status":"published","published":"2026-08-21T21:03:58Z","modified":"2026-08-24T19:39:57Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T18:01:34.230875Z"}],"nvd":[{"id":"CVE-2026-50538","description":"LibVNCClient is a library for easy implementation of a VNC client. In versions 0.9.12 through 0.9.15, a malicious (or man-in-the-middle) VNC server can force a connecting `libvncclient` to write attacker-controlled data past the end of its framebuffer. This is an out-of-bounds heap write with attacker-controlled length, contents, and offset. It needs no authentication (the attacker\nis the server), works in a default build with default settings, and fires from a single `FramebufferUpdate` the moment the victim connects. It crashes any client unconditionally (denial of service); we also demonstrated it overwriting an application callback pointer and redirecting execution to attacker-chosen code (code execution) under the default configuration. Commit 540332be3e0acc566fa64da6f1b4680c72c724dd patches the issue.","status":"published","published":"2026-08-21T21:16:59.807Z","modified":"2026-10-12T16:10:00.22Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"secondary"}],"cwes":["CWE-122","CWE-787"],"updated_at":"2026-11-02T14:12:40.665005Z"}],"osv":[{"id":"CVE-2026-50538","title":"libvncclient Tight decoder has an attacker-controlled heap out-of-bounds write","description":"LibVNCClient is a library for easy implementation of a VNC client. In versions 0.9.12 through 0.9.15, a malicious (or man-in-the-middle) VNC server can force a connecting `libvncclient` to write attacker-controlled data past the end of its framebuffer. This is an out-of-bounds heap write with attacker-controlled length, contents, and offset. It needs no authentication (the attacker\nis the server), works in a default build with default settings, and fires from a single `FramebufferUpdate` the moment the victim connects. It crashes any client unconditionally (denial of service); we also demonstrated it overwriting an application callback pointer and redirecting execution to attacker-chosen code (code execution) under the default configuration. Commit 540332be3e0acc566fa64da6f1b4680c72c724dd patches the issue.","status":"published","published":"2026-08-21T21:03:58.147Z","modified":"2026-10-28T11:16:37.21535018Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-122","CWE-787"],"updated_at":"2026-11-02T15:45:07.431113Z"},{"id":"DEBIAN-CVE-2026-50538","description":"LibVNCClient is a library for easy implementation of a VNC client. In versions 0.9.12 through 0.9.15, a malicious (or man-in-the-middle) VNC server can force a connecting `libvncclient` to write attacker-controlled data past the end of its framebuffer. This is an out-of-bounds heap write with attacker-controlled length, contents, and offset. It needs no authentication (the attacker is the server), works in a default build with default settings, and fires from a single `FramebufferUpdate` the moment the victim connects. It crashes any client unconditionally (denial of service); we also demonstrated it overwriting an application callback pointer and redirecting execution to attacker-chosen code (code execution) under the default configuration. Commit 540332be3e0acc566fa64da6f1b4680c72c724dd patches the issue.","status":"published","published":"2026-08-21T21:16:59.807Z","modified":"2026-10-13T09:47:41.803429028Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:56.877408Z"},{"id":"OESA-2026-3318","title":"libvncserver security update","description":"libvncserver is a set of programs using the RFB (Remote Frame Buffer) protocol. They are designed to \u0026amp;quot;export\u0026amp;quot; a frame buffer via net: you set up a server and can connect to it via VNC viewers. If the server supports WebSockets (which LibVNCServer does), you can also connect using an in-browser VNC viewer like noVNC. It is already in wide use for administration, but it is not that easy to program a server yourself.\r\n\r\nSecurity Fix(es):\n\nAn attacker-controlled heap out-of-bounds write vulnerability exists in the Tight decoder of libvncclient within libvncserver. An attacker can trigger a heap out-of-bounds write via crafted packets, potentially leading to denial of service or remote code execution.(CVE-2026-50538)","status":"published","published":"2026-08-13T13:57:19Z","modified":"2026-08-16T01:45:09.237404755Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:52:46.823443Z"},{"id":"OESA-2026-3319","title":"libvncserver security update","description":"libvncserver is a set of programs using the RFB (Remote Frame Buffer) protocol. They are designed to \u0026amp;quot;export\u0026amp;quot; a frame buffer via net: you set up a server and can connect to it via VNC viewers. If the server supports WebSockets (which LibVNCServer does), you can also connect using an in-browser VNC viewer like noVNC. It is already in wide use for administration, but it is not that easy to program a server yourself.\r\n\r\nSecurity Fix(es):\n\nAn attacker-controlled heap out-of-bounds write vulnerability exists in the Tight decoder of libvncclient within libvncserver. An attacker can trigger a heap out-of-bounds write via crafted packets, potentially leading to denial of service or remote code execution.(CVE-2026-50538)","status":"published","published":"2026-08-13T13:57:20Z","modified":"2026-08-16T01:45:10.726640233Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:52:46.823443Z"},{"id":"OESA-2026-3320","title":"libvncserver security update","description":"libvncserver is a set of programs using the RFB (Remote Frame Buffer) protocol. They are designed to \u0026amp;quot;export\u0026amp;quot; a frame buffer via net: you set up a server and can connect to it via VNC viewers. If the server supports WebSockets (which LibVNCServer does), you can also connect using an in-browser VNC viewer like noVNC. It is already in wide use for administration, but it is not that easy to program a server yourself.\r\n\r\nSecurity Fix(es):\n\nAn attacker-controlled heap out-of-bounds write vulnerability exists in the Tight decoder of libvncclient within libvncserver. An attacker can trigger a heap out-of-bounds write via crafted packets, potentially leading to denial of service or remote code execution.(CVE-2026-50538)","status":"published","published":"2026-08-13T13:57:21Z","modified":"2026-08-16T01:45:09.279304574Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:52:46.823443Z"},{"id":"OESA-2026-3489","title":"libvncserver security update","description":"libvncserver is a set of programs using the RFB (Remote Frame Buffer) protocol. They are designed to \u0026amp;quot;export\u0026amp;quot; a frame buffer via net: you set up a server and can connect to it via VNC viewers. If the server supports WebSockets (which LibVNCServer does), you can also connect using an in-browser VNC viewer like noVNC. It is already in wide use for administration, but it is not that easy to program a server yourself.\r\n\r\nSecurity Fix(es):\n\nAn attacker-controlled heap out-of-bounds write vulnerability exists in the Tight decoder of libvncclient within libvncserver. An attacker can trigger a heap out-of-bounds write via crafted packets, potentially leading to denial of service or remote code execution.(CVE-2026-50538)","status":"published","published":"2026-08-20T10:01:48Z","modified":"2026-08-20T10:15:10.846592494Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:52:47.217107Z"},{"id":"UBUNTU-CVE-2026-50538","description":"LibVNCClient is a library for easy implementation of a VNC client. In versions 0.9.12 through 0.9.15, a malicious (or man-in-the-middle) VNC server can force a connecting `libvncclient` to write attacker-controlled data past the end of its framebuffer. This is an out-of-bounds heap write with attacker-controlled length, contents, and offset. It needs no authentication (the attacker is the server), works in a default build with default settings, and fires from a single `FramebufferUpdate` the moment the victim connects. It crashes any client unconditionally (denial of service); we also demonstrated it overwriting an application callback pointer and redirecting execution to attacker-chosen code (code execution) under the default configuration. Commit 540332be3e0acc566fa64da6f1b4680c72c724dd patches the issue.","status":"published","published":"2026-06-15T00:00:00Z","modified":"2026-10-17T12:59:00.374285906Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T16:56:33.391918Z"},{"id":"MGASA-2026-0315","title":"Updated libvncserver packages fix security vulnerabilities","description":"The updated packages fix security vulnerabilities:\nHeap Out-of-Bounds Read in HandleUltraZipBPP due to unchecked\nsubrectangle count. (CVE-2026-32853)\nNULL pointer dereferences in httpd proxy handlers via malformed\nCONNECT/GET requests. (CVE-2026-32854)\nLibVNCClient Tight Gradient decoding allows malicious server-triggered\nheap/stack OOB writes. (CVE-2026-44988)\nAttacker-controlled heap out-of-bounds write in libvncclient Tight\ndecoder. (CVE-2026-50538)\n","status":"published","published":"2026-08-03T18:47:23Z","modified":"2026-08-03T19:00:05.507881509Z","updated_at":"2026-11-02T15:49:43.795591Z"},{"id":"openSUSE-SU-2026:11601-1","title":"LibVNCServer-devel-0.9.15-4.1 on GA media","description":"These are all security issues fixed in the LibVNCServer-devel-0.9.15-4.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2026-08-26T00:00:00Z","modified":"2026-08-27T11:01:38.288773608Z","updated_at":"2026-11-02T16:58:39.516824Z"},{"id":"openSUSE-SU-2026:21735-1","title":"Security update for LibVNCServer","description":"This update for LibVNCServer fixes the following issue:\n\n- CVE-2026-50538: malicious or MiTM VNC servers can force a connecting `libvncclient` to write attacker-controlled data\n  past the end of a framebuffer, which can lead to a crash or arbitrary code execution (bsc#1276218).\n","status":"published","published":"2026-09-02T09:40:22Z","modified":"2026-09-09T18:23:13.422053511Z","updated_at":"2026-11-02T16:58:42.426393Z"},{"id":"SUSE-SU-2026:23601-1","title":"Security update for LibVNCServer","description":"This update for LibVNCServer fixes the following issue:\n\n- CVE-2026-50538: malicious or MiTM VNC servers can force a connecting `libvncclient` to write attacker-controlled data\n  past the end of a framebuffer, which can lead to a crash or arbitrary code execution (bsc#1276218).\n","status":"published","published":"2026-09-02T09:37:55Z","modified":"2026-09-29T18:23:19.005527662Z","updated_at":"2026-11-02T15:54:03.991985Z"},{"id":"SUSE-SU-2026:3803-1","title":"Security update for LibVNCServer","description":"This update for LibVNCServer fixes the following issue:\n\n- CVE-2026-50538: a malicious (or man-in-the-middle) VNC server can force a connecting `libvncclient` to write attacker-\n  controlled data past the end of its framebuffer (bsc#1276218).\n","status":"published","published":"2026-08-25T18:48:49Z","modified":"2026-08-31T18:23:10.02676211Z","updated_at":"2026-11-02T15:54:05.392906Z"},{"id":"SUSE-SU-2026:4022-1","title":"Security update for LibVNCServer","description":"This update for LibVNCServer fixes the following issue:\n\n- CVE-2026-50538: a malicious (or man-in-the-middle) VNC server can force a connecting `libvncclient` to write attacker-\n  controlled data past the end of its framebuffer (bsc#1276218).\n","status":"published","published":"2026-09-07T07:42:44Z","modified":"2026-09-13T18:23:16.111607689Z","updated_at":"2026-11-02T15:54:05.392906Z"},{"id":"SUSE-SU-2026:4024-1","title":"Security update for LibVNCServer","description":"This update for LibVNCServer fixes the following issue:\n\n- CVE-2026-50538: a malicious (or man-in-the-middle) VNC server can force a connecting `libvncclient` to write attacker-\n  controlled data past the end of its framebuffer (bsc#1276218).\n","status":"published","published":"2026-09-07T07:43:06Z","modified":"2026-09-13T18:23:16.157356767Z","updated_at":"2026-11-02T15:54:05.392906Z"},{"id":"USN-8494-1","title":"libvncserver vulnerability","description":"It was discovered that LibVNCServer incorrectly handled the Tight decoder\nin libvncclient. A remote attacker could use this issue to cause\nLibVNCServer to crash, resulting in a denial of service, or possibly\nexecute arbitrary code.","status":"published","published":"2026-07-02T13:22:47Z","modified":"2026-08-24T10:00:16.883598277Z","updated_at":"2026-11-02T16:58:25.103481Z"}]}}
