SB2024011224 - Gentoo update for FreeRDP



SB2024011224 - Gentoo update for FreeRDP

Published: January 12, 2024

Security Bulletin ID SB2024011224
CSH Severity
High
Patch available
YES
Number of vulnerabilities 24
Exploitation vector Remote access
Highest impact Code execution

Breakdown by Severity

High 21% Medium 58% Low 21%
  • Low
  • Medium
  • High
  • Critical

Description

This security bulletin contains information about 24 vulnerabilities.


1) Use-after-free (CVE-ID: CVE-2023-39355)

CWE-ID: CWE-416 - Use After Free

CVSSv4: 8.7 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to compromise vulnerable system.

The vulnerability exists due to a use-after-free error in RDPGFX_CMDID_RESETGRAPHICS. A remote attacker can cause unexpected behavior.


2) Buffer overflow (CVE-ID: CVE-2023-40589)

CWE-ID: CWE-119 - Memory corruption

CVSSv4: 8.7 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to perform a denial of service (DoS) attack.

The vulnerability exists due to a boundary error in ncrush_decompress. A remote attacker can trigger memory corruption and cause a denial of service condition on the target system.


3) Out-of-bounds read (CVE-ID: CVE-2023-40576)

CWE-ID: CWE-125 - Out-of-bounds read

CVSSv4: 6.9 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to perform a denial of service (DoS) attack.

The vulnerability exists due to a boundary condition in RleDecompress. A remote attacker can trigger an out-of-bounds read error and cause a denial of service condition on the system.


4) Out-of-bounds read (CVE-ID: CVE-2023-40575)

CWE-ID: CWE-125 - Out-of-bounds read

CVSSv4: 6.9 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to perform a denial of service (DoS) attack.

The vulnerability exists due to a boundary condition in general_YUV444ToRGB_8u_P3AC4R_BGRX. A remote attacker can trigger an out-of-bounds read error and cause a denial of service condition on the target system.


5) Out-of-bounds write (CVE-ID: CVE-2023-40574)

CWE-ID: CWE-787 - Out-of-bounds write

CVSSv4: 9.3 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to compromise vulnerable system.

The vulnerability exists due to a boundary error when processing untrusted input in general_YUV444ToRGB_8u_P3AC4R_BGRX. A remote attacker can trigger an out-of-bounds write and execute arbitrary code on the target system.


6) Out-of-bounds write (CVE-ID: CVE-2023-40569)

CWE-ID: CWE-787 - Out-of-bounds write

CVSSv4: 9.3 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to compromise vulnerable system.

The vulnerability exists due to a boundary error when processing untrusted input in progressive_decompress. A remote attacker can trigger an out-of-bounds write and execute arbitrary code on the target system.


7) Out-of-bounds write (CVE-ID: CVE-2023-40567)

CWE-ID: CWE-787 - Out-of-bounds write

CVSSv4: 9.3 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to compromise vulnerable system.

The vulnerability exists due to a boundary error when processing untrusted input in clear_decompress_bands_data. A remote attacker can trigger an out-of-bounds write and execute arbitrary code on the target system.


8) Out-of-bounds read (CVE-ID: CVE-2023-40188)

CWE-ID: CWE-125 - Out-of-bounds read

CVSSv4: 6.9 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to perform a denial of service (DoS) attack.

The vulnerability exists due to a boundary condition in general_LumaToYUV444. A remote attacker can trigger an out-of-bounds read error and cause a denial of service condition on the target system.


9) Use-after-free (CVE-ID: CVE-2023-40187)

CWE-ID: CWE-416 - Use After Free

CVSSv4: 6.9 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to compromise vulnerable system.

The vulnerability exists due to a use-after-free error in avc420_ensure_buffer, avc444_ensure_buffer. A remote attacker can cause unexpected behavior.


10) Integer overflow (CVE-ID: CVE-2023-40186)

CWE-ID: CWE-190 - Integer overflow

CVSSv4: 9.3 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The vulnerability exists due to integer overflow within the gdi_CreateSurface() function in libfreerdp/gdi/gfx.c. A remote attacker can pass specially crafted data to the application, trigger an integer overflow and execute arbitrary code on the target system.


11) Integer underflow (CVE-ID: CVE-2023-40181)

CWE-ID: CWE-191 - Integer underflow

CVSSv4: 6.9 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to perform a denial of service (DoS) attack.

The vulnerability exists due to integer underflow in zgfx_decompress_segment. A remote attacker can send a specially crafted request to the affected application, trigger integer underflow and cause a denial of service condition on the target system.


12) Out-of-bounds read (CVE-ID: CVE-2023-39356)

CWE-ID: CWE-125 - Out-of-bounds read

CVSSv4: 8.7 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to perform denial of service (DoS) attack.

The vulnerability exists due to a boundary condition within the gdi_multi_opaque_rect() function. A remote attacker can send specially crafted packets to the application, trigger an out-of-bounds read error and perform a denial of service (DoS) attack.


13) Out-of-bounds read (CVE-ID: CVE-2022-39316)

CWE-ID: CWE-125 - Out-of-bounds read

CVSSv4: 7.5 [CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to gain access to potentially sensitive information.

The vulnerability exists due to a boundary condition in ZGFX decoder. A malicious server can trick a FreeRDP based client to read out of bound data and try to decode it.

Successful exploitation of the vulnerability may allows remote code execution.


14) Out-of-bounds read (CVE-ID: CVE-2023-39354)

CWE-ID: CWE-125 - Out-of-bounds read

CVSSv4: 5.3 [CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N]


The vulnerability allows a remote user to perform a denial of service (DoS) attack.

The vulnerability exists due to a boundary condition in nsc_rle_decompress_data() function in libfreerdp/codec/nsc.c. A remote user can send specially crafted data to the application, trigger an out-of-bounds read error and perform a denial of service (DoS) attack.


15) Out-of-bounds read (CVE-ID: CVE-2023-39353)

CWE-ID: CWE-125 - Out-of-bounds read

CVSSv4: 8.7 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to perform a denial of service (DoS) attack.

The vulnerability exists due to a boundary condition in libfreerdp/codec/rfx.c. A remote attacker can trigger an out-of-bounds read error and perform a denial of service (DoS) attack.


16) Out-of-bounds write (CVE-ID: CVE-2023-39352)

CWE-ID: CWE-787 - Out-of-bounds write

CVSSv4: 9.3 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to compromise vulnerable system.

The vulnerability exists due to a boundary error in libfreerdp/gdi/gfx.c. A remote attacker can send specially crafted data to the application, trigger an out-of-bounds write and execute arbitrary code on the target system.


17) NULL pointer dereference (CVE-ID: CVE-2023-39351)

CWE-ID: CWE-476 - NULL Pointer Dereference

CVSSv4: 8.7 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to perform a denial of service (DoS) attack.

The vulnerability exists due to a NULL pointer dereference error within the rfx_process_message_tileset() function in libfreerdp/codec/rfx.c in RemoteFX. A remote attacker can pass specially crafted data to the application and perform a denial of service (DoS) attack.


18) Integer underflow (CVE-ID: CVE-2023-39350)

CWE-ID: CWE-191 - Integer underflow

CVSSv4: 8.7 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to perform a denial of service (DoS) attack.

The vulnerability exists due to integer underflow caused by incorrect offset calculation. A remote attacker can send specially crafted data to the affected application, trigger an integer underflow and perform a denial of service (DoS) attack.


19) Out-of-bounds read (CVE-ID: CVE-2022-41877)

CWE-ID: CWE-125 - Out-of-bounds read

CVSSv4: 2.1 [CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to gain access to potentially sensitive information.

The vulnerability exists due to a boundary condition within the drive channel. A malicious server can trick a FreeRDP based client to read out of bound data and send it back to the server.


20) Absolute Path Traversal (CVE-ID: CVE-2022-39347)

CWE-ID: CWE-36 - Absolute Path Traversal

CVSSv4: 5.9 [CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to gain access to sensitive information.

The vulnerability exists due to missing path canonicalization and base path check for drive channel. A malicious server can trick the FreeRDP client to read files outside the shared directory.


21) Out-of-bounds read (CVE-ID: CVE-2022-39320)

CWE-ID: CWE-125 - Out-of-bounds read

CVSSv4: 2.1 [CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to gain access to potentially sensitive information.

The vulnerability exists due to a boundary condition within the urbdrc channel. A malicious server can trick the FreeRDP based client to read out of bound data and send it back to the server.


22) Out-of-bounds read (CVE-ID: CVE-2022-39319)

CWE-ID: CWE-125 - Out-of-bounds read

CVSSv4: 2.1 [CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to gain access to potentially sensitive information.

The vulnerability exists due to a boundary condition in urbdrc channel.  A malicious server can trick a FreeRDP based client to read out of bound data and send it back to the server.


23) Division by zero (CVE-ID: CVE-2022-39318)

CWE-ID: CWE-369 - Divide By Zero

CVSSv4: 2.1 [CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to perform a denial of service attack.

The vulnerability exists due to a division by zero error in urbdrc channel. A malicious server can pass specially crafted data to the application and crash it.


24) Improper Validation of Array Index (CVE-ID: CVE-2022-39317)

CWE-ID: CWE-129 - Improper Validation of Array Index

CVSSv4: 7.5 [CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N]


The vulnerability allows a remote attacker to compromise the affected system.

The vulnerability exists due to a missing range check for input offset index in ZGFX decoder. A malicious server can trick a FreeRDP based client to read out of bound data and try to decode it.

Successful exploitation of the vulnerability may allows remote code execution.


Remediation

Install update from vendor's website.