Bug 1860334 (CVE-2020-14403)

Summary: CVE-2020-14403 libvncserver: libvncserver/hextile.c allows out-of-bounds access via encodings
Product: [Other] Security Response Reporter: Marian Rehak <mrehak>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED WONTFIX QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: unspecifiedCC: jadahl, negativo17, oholy, rdieter
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: libvncserver 0.9.13 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-11-02 17:18:31 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1860335, 1860336, 1862183, 1862184, 1862185, 1862186    
Bug Blocks: 1860332    

Description Marian Rehak 2020-07-24 10:24:43 UTC
An issue was discovered in LibVNCServer before 0.9.13. libvncserver/hextile.c allows out-of-bounds access via encodings.

Upstream commit:

https://github.com/LibVNC/libvncserver/commit/74e8a70f2c9a5248d6718ce443e07c7ed314dfff

Comment 1 Marian Rehak 2020-07-24 10:25:31 UTC
Created libvncserver tracking bugs for this issue:

Affects: epel-7 [bug 1860335]
Affects: fedora-all [bug 1860336]

Comment 2 Todd Cullum 2020-07-30 16:47:31 UTC
in libvncserver/hextile.c's subrectEncode##bpp() rectangle encoder, there's a potential out-of-bounds read due to && operator order. The patch reverses the order. This flaw could potentially cause undefined behavior or a crash if the width (w) is incorrect.