In FreeRDP before 2.1.0, there is an out-of-bounds read in cliprdr_read_format_list. Clipboard format data read (by client or server) might read data out-of-bounds. This has been fixed in 2.1.0. Reference: https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-2j4w-v45m-95hf Upstream commit: https://github.com/FreeRDP/FreeRDP/commit/b73143cf7ee5fe4cdabcbf56908aa15d8a883821
Created freerdp tracking bugs for this issue: Affects: epel-6 [bug 1844164] Affects: fedora-all [bug 1844163] Created freerdp1.2 tracking bugs for this issue: Affects: epel-7 [bug 1844165] Affects: fedora-all [bug 1844162]
Note that the flaw in the files reported for this CVE does not exist in any Red Hat Enterprise Linux version. However, the flaw exists instead in cliprdr_process_format_list() in client/cliprdr_main.c and cliprdr_server_receive_format_list() in server/cliprdr_main.c for FreeRDP-2.0.0-rc4. This version is shipped in Red Hat Enterprise Linux 8 and Red Hat Enterprise Linux 7. freerdp 1.0.2, as shipped in Red Hat Enterprise Linux 6 is significantly different and this flaw does not appear to exist there. The issue is that the code: while (dataLen) { Stream_Read_UINT32(s, formats[index].formatId); /* formatId (4 bytes) */ dataLen -= 4; formats[index].formatName = NULL; if dataLen is less than 4, an out-of-bounds read is possible.
Mitigation: To mitigate this flaw in vulnerable versions, clipboard support should be disabled for freerdp sessions.
This issue has been addressed in the following products: Red Hat Enterprise Linux 7 Via RHSA-2020:4031 https://access.redhat.com/errata/RHSA-2020:4031
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-11085
This issue has been addressed in the following products: Red Hat Enterprise Linux 8 Via RHSA-2020:4647 https://access.redhat.com/errata/RHSA-2020:4647