Bug 1854843 (CVE-2020-11098)

Summary: CVE-2020-11098 freerdp: out-of-bound read in glyph_cache_put
Product: [Other] Security Response Reporter: Dhananjay Arunesh <darunesh>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: unspecifiedCC: mads, negativo17, oholy, pahan
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: freerdp 2.1.2 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-05-18 20:34:03 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: 1854844, 1854845, 1855864, 1855865    
Bug Blocks: 1854906    

Description Dhananjay Arunesh 2020-07-08 11:07:57 UTC
In FreeRDP before version 2.1.2, there is an out-of-bound read in glyph_cache_put. This affects all FreeRDP clients with `+glyph-cache` option enabled This is fixed in version 2.1.2.

References:
http://www.freerdp.com/2020/06/22/2_1_2-released
https://github.com/FreeRDP/FreeRDP/commit/c0fd449ec0870b050d350d6d844b1ea6dad4bc7d
https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-jr57-f58x-hjmv

Comment 1 Dhananjay Arunesh 2020-07-08 11:10:11 UTC
Created freerdp tracking bugs for this issue:

Affects: epel-all [bug 1854845]
Affects: fedora-all [bug 1854844]

Comment 3 Todd Cullum 2020-07-10 18:06:13 UTC
glyph_cache_put() in libfreerdp/cache/glyph.c has an off-by-one indexing error which allows glyphCache->glyphCache[id].entries[index] to be indexed out-of-bounds. The patch ensures that index is less than glyphCache->glyphCache[id].number which avoids the out-of-bounds read. Marking this as Low because the feature is disabled by default and there is a low risk to availability in the freerdp client only.

Comment 4 Todd Cullum 2020-07-10 18:15:48 UTC
Mitigation:

Do not use the +glyph_cache option in the freerdp client, which is disabled by default in freerdp-2.0.0.rc4 (shipped with Red Hat Enterprise Linux 7 and 8), but required to connect to xrdp.

Comment 6 errata-xmlrpc 2021-05-18 15:34:08 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 8

Via RHSA-2021:1849 https://access.redhat.com/errata/RHSA-2021:1849

Comment 7 Product Security DevOps Team 2021-05-18 20:34:03 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2020-11098