Two heap-based buffer overflows in LibVNCClient



Published: 2016-11-15
Risk Medium
Patch available YES
Number of vulnerabilities 2
CVE-ID CVE-2016-9942
CVE-2016-9941
CWE-ID CWE-119
Exploitation vector Network
Public exploit N/A
Vulnerable software
Subscribe
LibVNCServer
Server applications / Remote management servers, RDP, SSH

Vendor LibVNC

Security Bulletin

This security bulletin contains information about 2 vulnerabilities.

1) Heap-based buffer overflow

EUVDB-ID: #VU3077

Risk: Medium

CVSSv3.1: 7.2 [CVSS:3.1/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

CWE-ID: CWE-119 - Memory corruption

Exploit availability: No

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.

Mitigation

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

Vulnerable software versions

LibVNCServer: 0.9.9 - 0.9.10

External links

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


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

How the attacker can exploit this vulnerability?

The attacker would have to send a specially crafted request to the affected application in order to exploit this vulnerability.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

2) Heap-based buffer overflow

EUVDB-ID: #VU3076

Risk: Medium

CVSSv3.1: 7.2 [CVSS:3.1/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-9941

CWE-ID: CWE-119 - Memory corruption

Exploit availability: No

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.

Mitigation

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

Vulnerable software versions

LibVNCServer: 0.9.9 - 0.9.10

External links

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


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

How the attacker can exploit this vulnerability?

The attacker would have to send a specially crafted request to the affected application in order to exploit this vulnerability.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.



###SIDEBAR###