Two heap-based buffer overflows in LibVNCClient

Published: 2016-11-15 12:09:56
Severity Medium
Patch available YES
Number of vulnerabilities 2
CVSSv2 6.9 (AV:N/AC:M/Au:N/C:C/I:C/A:C/E:U/RL:OF/RC:C)
6.9 (AV:N/AC:M/Au:N/C:C/I:C/A:C/E:U/RL:OF/RC:C)
CVSSv3 7.2 [CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H/E:U/RL:O/RC:C]
7.2 [CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H/E:U/RL:O/RC:C]
CVE ID CVE-2016-9942
CVE-2016-9941
CWE ID CWE-119
Exploitation vector Network
Public exploit Not available
Vulnerable software LibVNCServer
Vulnerable software versions LibVNCServer 0.9.10
LibVNCServer 0.9.9
Vendor URL LibVNC
Advisory type Public

Security Advisory

1) Heap-based buffer overflow

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 ultra.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 with the Ultra type tile, such that the LZO payload decompressed length exceeds what is specified by the tile dimensions, 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

External links

https://github.com/LibVNC/libvncserver/pull/137 https://github.com/LibVNC/libvncserver/releases/tag/LibVNCServer-0.9.11

2) Heap-based buffer overflow

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.

Remediation

Update to version 0.9.11:
https://github.com/LibVNC/libvncserver/tree/LibVNCServer-0.9.11

External links

https://github.com/LibVNC/libvncserver/pull/137 https://github.com/LibVNC/libvncserver/releases/tag/LibVNCServer-0.9.11

Back to List