MGASA-2023-0318 - Updated freerdp packages fix security vulnerabilities

Publication date: 15 Nov 2023
URL: https://advisories.mageia.org/MGASA-2023-0318.html
Type: security
Affected Mageia releases: 8, 9
CVE: CVE-2023-39350,
     CVE-2023-39351,
     CVE-2023-39353,
     CVE-2023-39354,
     CVE-2023-40181,
     CVE-2023-40186,
     CVE-2023-40188,
     CVE-2023-40567,
     CVE-2023-40569,
     CVE-2023-40589

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)

References:
- https://bugs.mageia.org/show_bug.cgi?id=32360
- https://ubuntu.com/security/notices/USN-6401-1
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39350
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39351
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39353
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39354
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40181
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40186
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40188
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40567
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40569
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40589

SRPMS:
- 9/core/freerdp-2.10.0-2.1.mga9
- 8/core/freerdp-2.9.0-1.2.mga8

Mageia 2023-0318: freerdp security update

This issue affects Clients only: Integer underflow leading to DOS (e.g

Summary

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)

References

- https://bugs.mageia.org/show_bug.cgi?id=32360

- https://ubuntu.com/security/notices/USN-6401-1

- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39350

- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39351

- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39353

- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39354

- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40181

- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40186

- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40188

- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40567

- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40569

- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-40589

Resolution

MGASA-2023-0318 - Updated freerdp packages fix security vulnerabilities

SRPMS

- 9/core/freerdp-2.10.0-2.1.mga9

- 8/core/freerdp-2.9.0-1.2.mga8

Severity
Publication date: 15 Nov 2023
URL: https://advisories.mageia.org/MGASA-2023-0318.html
Type: security
CVE: CVE-2023-39350, CVE-2023-39351, CVE-2023-39353, CVE-2023-39354, CVE-2023-40181, CVE-2023-40186, CVE-2023-40188, CVE-2023-40567, CVE-2023-40569, CVE-2023-40589

Related News