#VU3076 Heap-based buffer overflow in LibVNCServer - CVE-2016-9941
Published: December 31, 2016 / Updated: January 2, 2017
Vulnerability identifier: #VU3076
Vulnerability risk: Medium
CVSSv4.0: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/U:Green
CVE-ID: CVE-2016-9941
CWE-ID: CWE-119
Exploitation vector: Remote access
Exploit availability:
No public exploit available
Vulnerable software:
LibVNCServer
LibVNCServer
Software vendor:
LibVNC
LibVNC
Description
The vulnerability allows a remote attacker to execute arbitrary code on vulnerable client system.
A heap-based buffer overflow vulnerability exists due to boundary error in rfbproto.c in LibVNCClient software, which is bundled with LibVNCServer. A remote attacker can trick the victim to connect to malicious VNC server, send a specially crafted FramebufferUpdate message containing a subrectangle outside of the client drawing area and trigger buffer overflow.
Successful exploitation of the vulnerability may allow an attacker to execute arbitrary code on vulnerable VNC client.
A heap-based buffer overflow vulnerability exists due to boundary error in rfbproto.c in LibVNCClient software, which is bundled with LibVNCServer. A remote attacker can trick the victim to connect to malicious VNC server, send a specially crafted FramebufferUpdate message containing a subrectangle outside of the client drawing area and trigger buffer overflow.
Successful exploitation of the vulnerability may allow an attacker to execute arbitrary code on vulnerable VNC client.
Remediation
Update to version 0.9.11:
https://github.com/LibVNC/libvncserver/tree/LibVNCServer-0.9.11
https://github.com/LibVNC/libvncserver/tree/LibVNCServer-0.9.11