This issue affects Clients only: Integer underflow leading to DOS (e.g.
abort due to WINPR_ASSERT
with default compilation flags). When an
insufficient blockLen is provided, and proper length validation is not
performed, an Integer Underflow occurs, leading to a Denial of Service
(DOS) vulnerability. (CVE-2023-39350)
Affected versions of FreeRDP are subject to a Null Pointer Dereference
leading a crash in the RemoteFX (rfx) handling. Inside the
rfx_process_message_tileset
function, the program allocates tiles
using rfx_allocate_tiles
for the number of numTiles. If the
initialization process of tiles is not completed for various reasons,
tiles will have a NULL pointer. Which may be accessed in further
processing and would cause a program crash. (CVE-2023-39351)
Affected versions are subject to a missing offset validation leading to
Out Of Bound Read. In the libfreerdp/codec/rfx.c
file there is no offset validation in tile->quantIdxY
, tile->quantIdxCb
, and
tile->quantIdxCr
. As a result crafted input can lead to an out of
bounds read access which in turn will cause a crash. (CVE-2023-39353)
Affected versions are subject to an Out-Of-Bounds Read in the
nsc_rle_decompress_data
function. The Out-Of-Bounds Read occurs
because it processes context->Planes
without checking if it contains
data of sufficient length. Should an attacker be able to leverage this
vulnerability they may be able to cause a crash. (CVE-2023-39354)
Affected versions are subject to an Integer-Underflow leading to
Out-Of-Bound Read in the zgfx_decompress_segment
function. In the
context of CopyMemory
, it's possible to read data beyond the
transmitted packet range and likely cause a crash. (CVE-2023-40181)
Affected versions are subject to an IntegerOverflow leading to
Out-Of-Bound Write Vulnerability in the gdi_CreateSurface
function.
This issue affects FreeRDP based clients only. FreeRDP proxies are not
affected as image decoding is not done by a proxy. (CVE-2023-40186)
Affected versions are subject to an Out-Of-Bounds Read in the
general_LumaToYUV444
function. This Out-Of-Bounds Read occurs because
processing is done on the in
variable without checking if it contains
data of sufficient length. Insufficient data for the in
variable may
cause errors or crashes. (CVE-2023-40188)
Affected versions are subject to an Out-Of-Bounds Write in the
clear_decompress_bands_data
function in which there is no offset
validation. Abuse of this vulnerability may lead to an out of bounds
write. (CVE-2023-40567)
Affected versions are subject to an Out-Of-Bounds Write in the
progressive_decompress
function. This issue is likely down to
incorrect calculations of the nXSrc
and nYSrc
variables.
(CVE-2023-40569)
In affected versions there is a Global-Buffer-Overflow in the ncrush_decompress function. Feeding crafted input into this function can trigger the overflow which has only been shown to cause a crash. (CVE-2023-40589)