Freerdp FreeRDP

Do you want an email whenever new security vulnerabilities are reported in FreeRDP?

By the Year

In 2021 there have been 0 vulnerabilities in FreeRDP . Last year Freerdp had 40 security vulnerabilities published. Right now, Freerdp is on track to have less security vulnerabilities in 2021 than it did last year.

Year Vulnerabilities Average Score
2021 0 0.00
2020 40 5.03
2019 2 7.50
2018 7 9.00

It may take a day or so for new Freerdp vulnerabilities to show up. Additionally vulnerabilities may be tagged under a different product or component name.

Latest FreeRDP Security Vulnerabilities

In FreeRDP less than or equal to 2.1.2, an integer overflow exists due to missing input sanitation in rdpegfx channel

CVE-2020-15103 3.5 - Low - July 27, 2020

In FreeRDP less than or equal to 2.1.2, an integer overflow exists due to missing input sanitation in rdpegfx channel. All FreeRDP clients are affected. The input rectangles from the server are not checked against local surface coordinates and blindly accepted. A malicious server can send data that will crash the client later on (invalid length arguments to a `memcpy`) This has been fixed in 2.2.0. As a workaround, stop using command line arguments /gfx, /gfx-h264 and /network:auto

Integer Overflow to Buffer Overflow

In FreeRDP before version 2.1.2, there is a use-after-free in gdi_SelectObject

CVE-2020-4031 7.5 - High - June 22, 2020

In FreeRDP before version 2.1.2, there is a use-after-free in gdi_SelectObject. All FreeRDP clients using compatibility mode with /relax-order-checks are affected. This is fixed in version 2.1.2.

Dangling pointer

In FreeRDP before version 2.1.2, there is an out of bounds read in RLEDECOMPRESS

CVE-2020-4033 6.5 - Medium - June 22, 2020

In FreeRDP before version 2.1.2, there is an out of bounds read in RLEDECOMPRESS. All FreeRDP based clients with sessions with color depth < 32 are affected. This is fixed in version 2.1.2.

Out-of-bounds Read

In FreeRDP before version 2.1.2, there is an integer casting vulnerability in update_recv_secondary_order

CVE-2020-4032 4.3 - Medium - June 22, 2020

In FreeRDP before version 2.1.2, there is an integer casting vulnerability in update_recv_secondary_order. All clients with +glyph-cache /relax-order-checks are affected. This is fixed in version 2.1.2.

Incorrect Conversion between Numeric Types

In FreeRDP before version 2.1.2, there is an out of bounds read in TrioParse

CVE-2020-4030 6.5 - Medium - June 22, 2020

In FreeRDP before version 2.1.2, there is an out of bounds read in TrioParse. Logging might bypass string length checks due to an integer overflow. This is fixed in version 2.1.2.

Out-of-bounds Read

In FreeRDP before version 2.1.2, an out of bound reads occurs resulting in accessing a memory location

CVE-2020-11095 5.4 - Medium - June 22, 2020

In FreeRDP before version 2.1.2, an out of bound reads occurs resulting in accessing a memory location that is outside of the boundaries of the static array PRIMARY_DRAWING_ORDER_FIELD_BYTES. This is fixed in version 2.1.2.

Out-of-bounds Read

In FreeRDP before version 2.1.2, there is a global OOB read in update_read_cache_bitmap_v3_order

CVE-2020-11096 6.5 - Medium - June 22, 2020

In FreeRDP before version 2.1.2, there is a global OOB read in update_read_cache_bitmap_v3_order. As a workaround, one can disable bitmap cache with -bitmap-cache (default). This is fixed in version 2.1.2.

Out-of-bounds Read

In FreeRDP before version 2.1.2, an out of bounds read occurs resulting in accessing a memory location

CVE-2020-11097 5.4 - Medium - June 22, 2020

In FreeRDP before version 2.1.2, an out of bounds read occurs resulting in accessing a memory location that is outside of the boundaries of the static array PRIMARY_DRAWING_ORDER_FIELD_BYTES. This is fixed in version 2.1.2.

Out-of-bounds Read

In FreeRDP before version 2.1.2, there is an out-of-bound read in glyph_cache_put

CVE-2020-11098 6.5 - Medium - June 22, 2020

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.

Out-of-bounds Read

In FreeRDP before version 2.1.2, there is an out of bounds read in license_read_new_or_upgrade_license_packet

CVE-2020-11099 6.5 - Medium - June 22, 2020

In FreeRDP before version 2.1.2, there is an out of bounds read in license_read_new_or_upgrade_license_packet. A manipulated license packet can lead to out of bound reads to an internal buffer. This is fixed in version 2.1.2.

Out-of-bounds Read

In FreeRDP less than or equal to 2.0.0, there is an out-of-bounds read in rfx_process_message_tileset

CVE-2020-11043 2.7 - Low - May 29, 2020

In FreeRDP less than or equal to 2.0.0, there is an out-of-bounds read in rfx_process_message_tileset. Invalid data fed to RFX decoder results in garbage on screen (as colors). This has been patched in 2.1.0.

Out-of-bounds Read

In FreeRDP before 2.1.0

CVE-2020-11089 5.5 - Medium - May 29, 2020

In FreeRDP before 2.1.0, there is an out-of-bound read in irp functions (parallel_process_irp_create, serial_process_irp_create, drive_process_irp_write, printer_process_irp_write, rdpei_recv_pdu, serial_process_irp_write). This has been fixed in 2.1.0.

Out-of-bounds Read

In FreeRDP less than or equal to 2.0.0, there is an out-of-bound read in ntlm_read_NegotiateMessage

CVE-2020-11088 5.4 - Medium - May 29, 2020

In FreeRDP less than or equal to 2.0.0, there is an out-of-bound read in ntlm_read_NegotiateMessage. This has been fixed in 2.1.0.

Out-of-bounds Read

In FreeRDP less than or equal to 2.0.0, there is an out-of-bound read in ntlm_read_AuthenticateMessage

CVE-2020-11087 5.4 - Medium - May 29, 2020

In FreeRDP less than or equal to 2.0.0, there is an out-of-bound read in ntlm_read_AuthenticateMessage. This has been fixed in 2.1.0.

Out-of-bounds Read

In FreeRDP less than or equal to 2.0.0, there is an out-of-bound read in ntlm_read_ntlm_v2_client_challenge

CVE-2020-11086 5.4 - Medium - May 29, 2020

In FreeRDP less than or equal to 2.0.0, there is an out-of-bound read in ntlm_read_ntlm_v2_client_challenge that reads up to 28 bytes out-of-bound to an internal structure. This has been fixed in 2.1.0.

Out-of-bounds Read

In FreeRDP before 2.1.0, there is an out-of-bounds read in cliprdr_read_format_list

CVE-2020-11085 3.5 - Low - May 29, 2020

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.

Out-of-bounds Read

In FreeRDP less than or equal to 2.0.0, there is an out-of-bound data read

CVE-2020-11040 2.7 - Low - May 29, 2020

In FreeRDP less than or equal to 2.0.0, there is an out-of-bound data read from memory in clear_decompress_subcode_rlex, visualized on screen as color. This has been patched in 2.1.0.

Out-of-bounds Read

In FreeRDP less than or equal to 2.0.0, an Integer Overflow to Buffer Overflow exists

CVE-2020-11038 5.4 - Medium - May 29, 2020

In FreeRDP less than or equal to 2.0.0, an Integer Overflow to Buffer Overflow exists. When using /video redirection, a manipulated server can instruct the client to allocate a buffer with a smaller size than requested due to an integer overflow in size calculation. With later messages, the server can manipulate the client to write data out of bound to the previously allocated buffer. This has been patched in 2.1.0.

Memory Corruption

In FreeRDP less than or equal to 2.0.0

CVE-2020-11041 2.7 - Low - May 29, 2020

In FreeRDP less than or equal to 2.0.0, an outside controlled array index is used unchecked for data used as configuration for sound backend (alsa, oss, pulse, ...). The most likely outcome is a crash of the client instance followed by no or distorted sound or a session disconnect. If a user cannot upgrade to the patched version, a workaround is to disable sound for the session. This has been patched in 2.1.0.

out-of-bounds array index

In FreeRDP less than or equal to 2.0.0, when using a manipulated server with USB redirection enabled (nearly) arbitrary memory

CVE-2020-11039 6.8 - Medium - May 29, 2020

In FreeRDP less than or equal to 2.0.0, when using a manipulated server with USB redirection enabled (nearly) arbitrary memory can be read and written due to integer overflows in length checks. This has been patched in 2.1.0.

Integer Overflow or Wraparound

In FreeRDP less than or equal to 2.0.0

CVE-2020-11019 6.5 - Medium - May 29, 2020

In FreeRDP less than or equal to 2.0.0, when running with logger set to "WLOG_TRACE", a possible crash of application could occur due to a read of an invalid array index. Data could be printed as string to local terminal. This has been fixed in 2.1.0.

Out-of-bounds Read

In FreeRDP less than or equal to 2.0.0, a possible resource exhaustion vulnerability can be performed

CVE-2020-11018 6.5 - Medium - May 29, 2020

In FreeRDP less than or equal to 2.0.0, a possible resource exhaustion vulnerability can be performed. Malicious clients could trigger out of bound reads causing memory allocation with random size. This has been fixed in 2.1.0.

Out-of-bounds Read

In FreeRDP less than or equal to 2.0.0, by providing manipulated input a malicious client

CVE-2020-11017 6.5 - Medium - May 29, 2020

In FreeRDP less than or equal to 2.0.0, by providing manipulated input a malicious client can create a double free condition and crash the server. This is fixed in version 2.1.0.

Double-free

An issue was discovered in FreeRDP before 2.1.1

CVE-2020-13398 8.3 - High - May 22, 2020

An issue was discovered in FreeRDP before 2.1.1. An out-of-bounds (OOB) write vulnerability has been detected in crypto_rsa_common in libfreerdp/crypto/crypto.c.

Memory Corruption

An issue was discovered in FreeRDP before 2.1.1

CVE-2020-13397 5.5 - Medium - May 22, 2020

An issue was discovered in FreeRDP before 2.1.1. An out-of-bounds (OOB) read vulnerability has been detected in security_fips_decrypt in libfreerdp/core/security.c due to an uninitialized value.

Out-of-bounds Read

An issue was discovered in FreeRDP before 2.1.1

CVE-2020-13396 7.1 - High - May 22, 2020

An issue was discovered in FreeRDP before 2.1.1. An out-of-bounds (OOB) read vulnerability has been detected in ntlm_read_ChallengeMessage in winpr/libwinpr/sspi/NTLM/ntlm_message.c.

Out-of-bounds Read

libfreerdp/codec/interleaved.c in FreeRDP versions > 1.0 through 2.0.0-rc4 has an Out-of-bounds Write.

CVE-2020-11524 6.6 - Medium - May 15, 2020

libfreerdp/codec/interleaved.c in FreeRDP versions > 1.0 through 2.0.0-rc4 has an Out-of-bounds Write.

Memory Corruption

libfreerdp/gdi/region.c in FreeRDP versions > 1.0 through 2.0.0-rc4 has an Integer Overflow.

CVE-2020-11523 6.6 - Medium - May 15, 2020

libfreerdp/gdi/region.c in FreeRDP versions > 1.0 through 2.0.0-rc4 has an Integer Overflow.

Integer Overflow or Wraparound

libfreerdp/gdi/gdi.c in FreeRDP > 1.0 through 2.0.0-rc4 has an Out-of-bounds Read.

CVE-2020-11522 6.5 - Medium - May 15, 2020

libfreerdp/gdi/gdi.c in FreeRDP > 1.0 through 2.0.0-rc4 has an Out-of-bounds Read.

Out-of-bounds Read

libfreerdp/codec/planar.c in FreeRDP version > 1.0 through 2.0.0-rc4 has an Out-of-bounds Write.

CVE-2020-11521 6.6 - Medium - May 15, 2020

libfreerdp/codec/planar.c in FreeRDP version > 1.0 through 2.0.0-rc4 has an Out-of-bounds Write.

Integer Overflow or Wraparound

libfreerdp/cache/bitmap.c in FreeRDP versions > 1.0 through 2.0.0-rc4 has an Out of bounds read.

CVE-2020-11525 2.2 - Low - May 15, 2020

libfreerdp/cache/bitmap.c in FreeRDP versions > 1.0 through 2.0.0-rc4 has an Out of bounds read.

Out-of-bounds Read

libfreerdp/core/update.c in FreeRDP versions > 1.1 through 2.0.0-rc4 has an Out-of-bounds Read.

CVE-2020-11526 2.2 - Low - May 15, 2020

libfreerdp/core/update.c in FreeRDP versions > 1.1 through 2.0.0-rc4 has an Out-of-bounds Read.

Integer Overflow or Wraparound

In FreeRDP after 1.1 and before 2.0.0, a stream out-of-bounds seek in rdp_read_font_capability_set could lead to a later out-of-bounds read

CVE-2020-11058 2.2 - Low - May 12, 2020

In FreeRDP after 1.1 and before 2.0.0, a stream out-of-bounds seek in rdp_read_font_capability_set could lead to a later out-of-bounds read. As a result, a manipulated client or server might force a disconnect due to an invalid data read. This has been fixed in 2.0.0.

Out-of-bounds Read

In FreeRDP after 1.1 and before 2.0.0, there is an out-of-bounds read in autodetect_recv_bandwidth_measure_results

CVE-2020-11047 5.9 - Medium - May 07, 2020

In FreeRDP after 1.1 and before 2.0.0, there is an out-of-bounds read in autodetect_recv_bandwidth_measure_results. A malicious server can extract up to 8 bytes of client memory with a manipulated message by providing a short input and reading the measurement result data. This has been patched in 2.0.0.

Out-of-bounds Read

In FreeRDP after 1.0 and before 2.0.0, there is an out-of-bounds read

CVE-2020-11048 2.2 - Low - May 07, 2020

In FreeRDP after 1.0 and before 2.0.0, there is an out-of-bounds read. It only allows to abort a session. No data extraction is possible. This has been fixed in 2.0.0.

Out-of-bounds Read

In FreeRDP after 1.1 and before 2.0.0, there is an out-of-bound read of client memory that is then passed on to the protocol parser

CVE-2020-11049 2.2 - Low - May 07, 2020

In FreeRDP after 1.1 and before 2.0.0, there is an out-of-bound read of client memory that is then passed on to the protocol parser. This has been patched in 2.0.0.

Out-of-bounds Read

In FreeRDP after 1.0 and before 2.0.0, there is an out-of-bound read in in update_read_bitmap_data

CVE-2020-11045 3.3 - Low - May 07, 2020

In FreeRDP after 1.0 and before 2.0.0, there is an out-of-bound read in in update_read_bitmap_data that allows client memory to be read to an image buffer. The result displayed on screen as colour.

Out-of-bounds Read

In FreeRDP greater than 1.1 and before 2.0.0, there is an out-of-bounds read in update_read_icon_info

CVE-2020-11042 5.9 - Medium - May 07, 2020

In FreeRDP greater than 1.1 and before 2.0.0, there is an out-of-bounds read in update_read_icon_info. It allows reading a attacker-defined amount of client memory (32bit unsigned -> 4GB) to an intermediate buffer. This can be used to crash the client or store information for later retrieval. This has been patched in 2.0.0.

Out-of-bounds Read

In FreeRDP after 1.0 and before 2.0.0, there is a stream out-of-bounds seek in update_read_synchronize

CVE-2020-11046 2.2 - Low - May 07, 2020

In FreeRDP after 1.0 and before 2.0.0, there is a stream out-of-bounds seek in update_read_synchronize that could lead to a later out-of-bounds read.

Out-of-bounds Read

In FreeRDP greater than 1.2 and before 2.0.0, a double free in update_read_cache_bitmap_v3_order crashes the client application if corrupted data

CVE-2020-11044 2.2 - Low - May 07, 2020

In FreeRDP greater than 1.2 and before 2.0.0, a double free in update_read_cache_bitmap_v3_order crashes the client application if corrupted data from a manipulated server is parsed. This has been patched in 2.0.0.

Double-free

libfreerdp/codec/region.c in FreeRDP through 1.1.x and 2.x through 2.0.0-rc4 has memory leaks because a supplied realloc pointer (i.e

CVE-2019-17177 7.5 - High - October 04, 2019

libfreerdp/codec/region.c in FreeRDP through 1.1.x and 2.x through 2.0.0-rc4 has memory leaks because a supplied realloc pointer (i.e., the first argument to realloc) is also used for a realloc return value.

Missing Release of Resource after Effective Lifetime

HuffmanTree_makeFromFrequencies in lodepng.c in LodePNG through 2019-09-28, as used in WinPR in FreeRDP and other products, has a memory leak

CVE-2019-17178 7.5 - High - October 04, 2019

HuffmanTree_makeFromFrequencies in lodepng.c in LodePNG through 2019-09-28, as used in WinPR in FreeRDP and other products, has a memory leak because a supplied realloc pointer (i.e., the first argument to realloc) is also used for a realloc return value.

Missing Release of Resource after Effective Lifetime

FreeRDP FreeRDP 2.0.0-rc3 released version before commit 205c612820dac644d665b5bb1cdf437dc5ca01e3 contains a Other/Unknown vulnerability in channels/drdynvc/client/drdynvc_main.c, drdynvc_process_capability_request

CVE-2018-1000852 6.5 - Medium - December 20, 2018

FreeRDP FreeRDP 2.0.0-rc3 released version before commit 205c612820dac644d665b5bb1cdf437dc5ca01e3 contains a Other/Unknown vulnerability in channels/drdynvc/client/drdynvc_main.c, drdynvc_process_capability_request that can result in The RDP server can read the client's memory.. This attack appear to be exploitable via RDPClient must connect the rdp server with echo option. This vulnerability appears to have been fixed in after commit 205c612820dac644d665b5bb1cdf437dc5ca01e3.

Out-of-bounds Read

FreeRDP prior to version 2.0.0-rc4 contains several Out-Of-Bounds Reads in the NTLM Authentication module

CVE-2018-8789 7.5 - High - November 29, 2018

FreeRDP prior to version 2.0.0-rc4 contains several Out-Of-Bounds Reads in the NTLM Authentication module that results in a Denial of Service (segfault).

Out-of-bounds Read

FreeRDP prior to version 2.0.0-rc4 contains an Out-Of-Bounds Write of up to 4 bytes in function nsc_rle_decode()

CVE-2018-8788 9.8 - Critical - November 29, 2018

FreeRDP prior to version 2.0.0-rc4 contains an Out-Of-Bounds Write of up to 4 bytes in function nsc_rle_decode() that results in a memory corruption and possibly even a remote code execution.

Memory Corruption

FreeRDP prior to version 2.0.0-rc4 contains an Integer Overflow

CVE-2018-8787 9.8 - Critical - November 29, 2018

FreeRDP prior to version 2.0.0-rc4 contains an Integer Overflow that leads to a Heap-Based Buffer Overflow in function gdi_Bitmap_Decompress() and results in a memory corruption and probably even a remote code execution.

Integer Overflow or Wraparound

FreeRDP prior to version 2.0.0-rc4 contains an Integer Truncation

CVE-2018-8786 9.8 - Critical - November 29, 2018

FreeRDP prior to version 2.0.0-rc4 contains an Integer Truncation that leads to a Heap-Based Buffer Overflow in function update_read_bitmap_update() and results in a memory corruption and probably even a remote code execution.

Buffer Overflow

FreeRDP prior to version 2.0.0-rc4 contains a Heap-Based Buffer Overflow in function zgfx_decompress()

CVE-2018-8785 9.8 - Critical - November 29, 2018

FreeRDP prior to version 2.0.0-rc4 contains a Heap-Based Buffer Overflow in function zgfx_decompress() that results in a memory corruption and probably even a remote code execution.

Buffer Overflow

FreeRDP prior to version 2.0.0-rc4 contains a Heap-Based Buffer Overflow in function zgfx_decompress_segment()

CVE-2018-8784 9.8 - Critical - November 29, 2018

FreeRDP prior to version 2.0.0-rc4 contains a Heap-Based Buffer Overflow in function zgfx_decompress_segment() that results in a memory corruption and probably even a remote code execution.

Buffer Overflow

Integer overflow in the license_read_scope_list function in libfreerdp/core/license.c in FreeRDP through 1.0.2

CVE-2014-0791 - January 03, 2014

Integer overflow in the license_read_scope_list function in libfreerdp/core/license.c in FreeRDP through 1.0.2 allows remote RDP servers to cause a denial of service (application crash) or possibly have unspecified other impact via a large ScopeCount value in a Scope List in a Server License Request packet.

Numeric Errors

Stay on top of Security Vulnerabilities

Want an email whenever new vulnerabilities are published for FreeRDP or by FreeRDP? Click the Watch button to subscribe.

subscribe