CVE-2026-29774
FreeRDP has a heap-buffer-overflow in avc420_yuv_to_rgb via OOB regionRects
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the allocated heap region. This vulnerability is fixed in 3.24.0.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- Low
Exploit likelihood
What each source reports
CVE List Score used
5.3
FreeRDP has a heap-buffer-overflow in avc420_yuv_to_rgb via OOB regionRects
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the allocated heap region. This vulnerability is fixed in 3.24.0.
- Record
CVE-2026-29774- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - Weakness
- CWE-787
- Updated
- 2026-11-02
EUVDEUVD-2026-12055
5.3
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the allocated heap region. This vulnerability is fixed in 3.24.0.
- Record
EUVD-2026-12055- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - Updated
- 2026-11-02
NVD
5.3
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the allocated heap region. This vulnerability is fixed in 3.24.0.
- Record
CVE-2026-29774- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - CVSS 3.1
- 8.2 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H - Weakness
- CWE-787
- Updated
- 2026-11-02
OSVALPINE-CVE-2026-29774
8.2
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the allocated heap region. This vulnerability is fixed in 3.24.0.
- Record
ALPINE-CVE-2026-29774- CVSS 3.1
- 8.2 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H - Updated
- 2026-11-03
OSV
5.3
FreeRDP has a heap-buffer-overflow in avc420_yuv_to_rgb via OOB regionRects
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the allocated heap region. This vulnerability is fixed in 3.24.0.
- Record
CVE-2026-29774- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - Weakness
- CWE-787
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-29774
8.2
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the allocated heap region. This vulnerability is fixed in 3.24.0.
- Record
DEBIAN-CVE-2026-29774- CVSS 3.1
- 8.2 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H - Updated
- 2026-11-02
Show 16 moreShow less
OSVOESA-2026-2439
9.1
freerdp security update
FreeRDP is a client implementation of the Remote Desktop Protocol (RDP) that follows Microsoft's open specifications. This package provides the client applications xfreerdp.
Security Fix(es):
A malicious server can trigger a client-side global buffer overflow, causing a crash (denial of service)(CVE-2026-25942)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, a heap-use-after-free vulnerability exists in the X11 client backend. Specifically, the xf_SetWindowMinMaxInfo function dereferences a freed xfAppWindow pointer. This occurs because xf_rail_get_window within xf_rail_server_min_max_info returns an unprotected pointer from the railWindows hash table. The main thread can concurrently delete the window (via a window delete order) while the RAIL channel thread is still using the pointer, leading to a dangling pointer. A malicious server can exploit this to trigger a client-side crash (Denial of Service) and potentially cause heap corruption with a risk of code execution, depending on allocator behavior and surrounding heap layout.(CVE-2026-25952)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the xf_AppUpdateWindowFromSurface function reads from a freed xfAppWindow object. This occurs because the RDPGFX DVC thread obtains a bare pointer via xf_rail_get_window without any lifetime protection, while the main thread can concurrently delete the window through a fastpath window-delete order, resulting in a use-after-free condition. A malicious server can exploit this vulnerability to trigger a client-side heap use-after-free, causing a crash (Denial of Service) and potentially leading to heap corruption with a risk of code execution, depending on allocator behavior and surrounding heap layout.(CVE-2026-25953)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the xf_rail_server_local_move_size function dereferences a freed xfAppWindow pointer. This occurs because xf_rail_get_window returns an unprotected pointer from the railWindows hash table, and the main thread can concurrently delete the window (via a window delete order) while the RAIL channel thread is still using the pointer. A malicious server can trigger this client-side heap use-after-free, causing a crash (Denial of Service) and potential heap corruption with code-execution risk depending on allocator behavior and surrounding heap layout.(CVE-2026-25954)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the function Stream_EnsureCapacity contains an integer overflow vulnerability that can create an endless blocking loop. This may affect all client and server implementations using FreeRDP. For practical exploitation, this will only work on 32-bit systems where the available physical memory is greater than or equal to SIZE_MAX.(CVE-2026-27951)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the…
- Record
OESA-2026-2439- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H - Updated
- 2026-11-02
OSVOESA-2026-2440
9.1
freerdp security update
FreeRDP is a client implementation of the Remote Desktop Protocol (RDP) that follows Microsoft's open specifications. This package provides the client applications xfreerdp.
Security Fix(es):
A malicious server can trigger a client-side global buffer overflow, causing a crash (denial of service)(CVE-2026-25942)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, a heap-use-after-free vulnerability exists in the X11 client backend. Specifically, the xf_SetWindowMinMaxInfo function dereferences a freed xfAppWindow pointer. This occurs because xf_rail_get_window within xf_rail_server_min_max_info returns an unprotected pointer from the railWindows hash table. The main thread can concurrently delete the window (via a window delete order) while the RAIL channel thread is still using the pointer, leading to a dangling pointer. A malicious server can exploit this to trigger a client-side crash (Denial of Service) and potentially cause heap corruption with a risk of code execution, depending on allocator behavior and surrounding heap layout.(CVE-2026-25952)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the xf_AppUpdateWindowFromSurface function reads from a freed xfAppWindow object. This occurs because the RDPGFX DVC thread obtains a bare pointer via xf_rail_get_window without any lifetime protection, while the main thread can concurrently delete the window through a fastpath window-delete order, resulting in a use-after-free condition. A malicious server can exploit this vulnerability to trigger a client-side heap use-after-free, causing a crash (Denial of Service) and potentially leading to heap corruption with a risk of code execution, depending on allocator behavior and surrounding heap layout.(CVE-2026-25953)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the xf_rail_server_local_move_size function dereferences a freed xfAppWindow pointer. This occurs because xf_rail_get_window returns an unprotected pointer from the railWindows hash table, and the main thread can concurrently delete the window (via a window delete order) while the RAIL channel thread is still using the pointer. A malicious server can trigger this client-side heap use-after-free, causing a crash (Denial of Service) and potential heap corruption with code-execution risk depending on allocator behavior and surrounding heap layout.(CVE-2026-25954)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the function Stream_EnsureCapacity contains an integer overflow vulnerability that can create an endless blocking loop. This may affect all client and server implementations using FreeRDP. For practical exploitation, this will only work on 32-bit systems where the available physical memory is greater than or equal to SIZE_MAX.(CVE-2026-27951)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the…
- Record
OESA-2026-2440- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H - Updated
- 2026-11-02
OSVOESA-2026-2441
9.1
freerdp security update
FreeRDP is a client implementation of the Remote Desktop Protocol (RDP) that follows Microsoft's open specifications. This package provides the client applications xfreerdp.
Security Fix(es):
A malicious server can trigger a client-side global buffer overflow, causing a crash (denial of service)(CVE-2026-25942)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, a heap-use-after-free vulnerability exists in the X11 client backend. Specifically, the xf_SetWindowMinMaxInfo function dereferences a freed xfAppWindow pointer. This occurs because xf_rail_get_window within xf_rail_server_min_max_info returns an unprotected pointer from the railWindows hash table. The main thread can concurrently delete the window (via a window delete order) while the RAIL channel thread is still using the pointer, leading to a dangling pointer. A malicious server can exploit this to trigger a client-side crash (Denial of Service) and potentially cause heap corruption with a risk of code execution, depending on allocator behavior and surrounding heap layout.(CVE-2026-25952)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the xf_AppUpdateWindowFromSurface function reads from a freed xfAppWindow object. This occurs because the RDPGFX DVC thread obtains a bare pointer via xf_rail_get_window without any lifetime protection, while the main thread can concurrently delete the window through a fastpath window-delete order, resulting in a use-after-free condition. A malicious server can exploit this vulnerability to trigger a client-side heap use-after-free, causing a crash (Denial of Service) and potentially leading to heap corruption with a risk of code execution, depending on allocator behavior and surrounding heap layout.(CVE-2026-25953)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the xf_rail_server_local_move_size function dereferences a freed xfAppWindow pointer. This occurs because xf_rail_get_window returns an unprotected pointer from the railWindows hash table, and the main thread can concurrently delete the window (via a window delete order) while the RAIL channel thread is still using the pointer. A malicious server can trigger this client-side heap use-after-free, causing a crash (Denial of Service) and potential heap corruption with code-execution risk depending on allocator behavior and surrounding heap layout.(CVE-2026-25954)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the function Stream_EnsureCapacity contains an integer overflow vulnerability that can create an endless blocking loop. This may affect all client and server implementations using FreeRDP. For practical exploitation, this will only work on 32-bit systems where the available physical memory is greater than or equal to SIZE_MAX.(CVE-2026-27951)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the…
- Record
OESA-2026-2441- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H - Updated
- 2026-11-02
OSVOESA-2026-2442
9.1
freerdp security update
FreeRDP is a client implementation of the Remote Desktop Protocol (RDP) that follows Microsoft's open specifications. This package provides the client applications xfreerdp.
Security Fix(es):
A malicious server can trigger a client-side global buffer overflow, causing a crash (denial of service)(CVE-2026-25942)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, a heap-use-after-free vulnerability exists in the X11 client backend. Specifically, the xf_SetWindowMinMaxInfo function dereferences a freed xfAppWindow pointer. This occurs because xf_rail_get_window within xf_rail_server_min_max_info returns an unprotected pointer from the railWindows hash table. The main thread can concurrently delete the window (via a window delete order) while the RAIL channel thread is still using the pointer, leading to a dangling pointer. A malicious server can exploit this to trigger a client-side crash (Denial of Service) and potentially cause heap corruption with a risk of code execution, depending on allocator behavior and surrounding heap layout.(CVE-2026-25952)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the xf_AppUpdateWindowFromSurface function reads from a freed xfAppWindow object. This occurs because the RDPGFX DVC thread obtains a bare pointer via xf_rail_get_window without any lifetime protection, while the main thread can concurrently delete the window through a fastpath window-delete order, resulting in a use-after-free condition. A malicious server can exploit this vulnerability to trigger a client-side heap use-after-free, causing a crash (Denial of Service) and potentially leading to heap corruption with a risk of code execution, depending on allocator behavior and surrounding heap layout.(CVE-2026-25953)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the xf_rail_server_local_move_size function dereferences a freed xfAppWindow pointer. This occurs because xf_rail_get_window returns an unprotected pointer from the railWindows hash table, and the main thread can concurrently delete the window (via a window delete order) while the RAIL channel thread is still using the pointer. A malicious server can trigger this client-side heap use-after-free, causing a crash (Denial of Service) and potential heap corruption with code-execution risk depending on allocator behavior and surrounding heap layout.(CVE-2026-25954)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the function Stream_EnsureCapacity contains an integer overflow vulnerability that can create an endless blocking loop. This may affect all client and server implementations using FreeRDP. For practical exploitation, this will only work on 32-bit systems where the available physical memory is greater than or equal to SIZE_MAX.(CVE-2026-27951)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the…
- Record
OESA-2026-2442- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H - Updated
- 2026-11-02
OSVOESA-2026-2540
9.1
freerdp security update
FreeRDP is a client implementation of the Remote Desktop Protocol (RDP) that follows Microsoft's open specifications. This package provides the client applications xfreerdp.
Security Fix(es):
A malicious server can trigger a client-side global buffer overflow, causing a crash (denial of service)(CVE-2026-25942)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, a heap-use-after-free vulnerability exists in the X11 client backend. Specifically, the xf_SetWindowMinMaxInfo function dereferences a freed xfAppWindow pointer. This occurs because xf_rail_get_window within xf_rail_server_min_max_info returns an unprotected pointer from the railWindows hash table. The main thread can concurrently delete the window (via a window delete order) while the RAIL channel thread is still using the pointer, leading to a dangling pointer. A malicious server can exploit this to trigger a client-side crash (Denial of Service) and potentially cause heap corruption with a risk of code execution, depending on allocator behavior and surrounding heap layout.(CVE-2026-25952)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the xf_AppUpdateWindowFromSurface function reads from a freed xfAppWindow object. This occurs because the RDPGFX DVC thread obtains a bare pointer via xf_rail_get_window without any lifetime protection, while the main thread can concurrently delete the window through a fastpath window-delete order, resulting in a use-after-free condition. A malicious server can exploit this vulnerability to trigger a client-side heap use-after-free, causing a crash (Denial of Service) and potentially leading to heap corruption with a risk of code execution, depending on allocator behavior and surrounding heap layout.(CVE-2026-25953)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the xf_rail_server_local_move_size function dereferences a freed xfAppWindow pointer. This occurs because xf_rail_get_window returns an unprotected pointer from the railWindows hash table, and the main thread can concurrently delete the window (via a window delete order) while the RAIL channel thread is still using the pointer. A malicious server can trigger this client-side heap use-after-free, causing a crash (Denial of Service) and potential heap corruption with code-execution risk depending on allocator behavior and surrounding heap layout.(CVE-2026-25954)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, the function Stream_EnsureCapacity contains an integer overflow vulnerability that can create an endless blocking loop. This may affect all client and server implementations using FreeRDP. For practical exploitation, this will only work on 32-bit systems where the available physical memory is greater than or equal to SIZE_MAX.(CVE-2026-27951)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the…
- Record
OESA-2026-2540- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-29774
5.3
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, a client-side heap buffer overflow occurs in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path due to missing horizontal bounds validation of H.264 metablock regionRects coordinates. In yuv.c, the clamp() function (line 347) only validates top/bottom against the surface/YUV height, but never checks left/right against the surface width. When avc420_yuv_to_rgb (line 67) computes destination and source pointers using rect->left, it performs unchecked pointer arithmetic that can reach far beyond the allocated surface buffer. A malicious server sends a WIRE_TO_SURFACE_PDU_1 with AVC420 codec containing a regionRects entry where left greatly exceeds the surface width (e.g., left=60000 on a 128px surface). The H.264 bitstream decodes successfully, then yuv420_process_work_callback calls avc420_yuv_to_rgb which computes pDstPoint = pDstData + rect->top * nDstStep + rect->left * 4, writing 16-byte SSE vectors 1888+ bytes past the allocated heap region. This vulnerability is fixed in 3.24.0.
- Record
UBUNTU-CVE-2026-29774- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - CVSS 3.1
- 8.2 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H - Updated
- 2026-11-02
OSVCLSA-2026-1774438942 No score
freerdp: Fix of 3 CVEs
- CVE-2026-29774: heap buffer overflow in H.264 AVC420/AVC444 YUV-to-RGB conversion
- CVE-2026-31884: division by zero in ADPCM decoders when nBlockAlign is 0
- CVE-2026-29775: off-by-one in bitmap_cache_put
- Record
CLSA-2026-1774438942- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:10408-1 No score
freerdp-3.24.1-1.1 on GA media
These are all security issues fixed in the freerdp-3.24.1-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:10408-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:20657-1 No score
Security update for freerdp
This update for freerdp fixes the following issues:
Update to version 3.24.2.
Security issues fixed:
- CVE-2026-25941: out-of-bounds read in the FreeRDP client RDPGFX channel (bsc#1258919).
- CVE-2026-25942: buffer overflow of global array in
xf_rail_server_execute_result(bsc#1258920). - CVE-2026-25952: heap use-after-free in
xf_SetWindowMinMaxInfo(bsc#1258921). - CVE-2026-25953: heap use-after-free in
xf_AppUpdateWindowFromSurface(bsc#1258923). - CVE-2026-25954: heap use-after-free in
xf_rail_server_local_move_size(bsc#1258924). - CVE-2026-25955: heap use-after-free in
xf_AppUpdateWindowFromSurface(bsc#1258973). - CVE-2026-25959: heap use-after-free in
xf_cliprdr_provide_data_(bsc#1258976). - CVE-2026-25997: heap use-after-free in
xf_clipboard_format_equal(bsc#1258977). - CVE-2026-26271: buffer overread in FreeRDP icon processing (bsc#1258979).
- CVE-2026-26955: out-of-bounds write in FreeRDP clients using the GDI surface pipeline (bsc#1258982).
- CVE-2026-26965: out-of-bounds write in FreeRDP client RLE planar decode path (bsc#1258985).
- CVE-2026-29774: heap buffer overflow in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path (bsc#1259689).
- CVE-2026-29775: out-of-bounds access in the FreeRDP client bitmap cache subsystem (bsc#1259684).
- CVE-2026-29776: integer underflow in
update_read_cache_bitmap_order(bsc#1259692). - CVE-2026-31806: heap buffer overflow in
nsc_process_message(bsc#1259653). - CVE-2026-31883: heap buffer overwrite due to a
size_tunderflow in the IMA-ADPCM and MS-ADPCM audio decoders (bsc#1259679). - CVE-2026-31884: division by zero in MS-ADPCM and IMA-ADPCM decoders (bsc#1259680).
- CVE-2026-31885: out-of-bounds read in MS-ADPCM and IMA-ADPCM decoders (bsc#1259686).
- CVE-2026-31897: out-of-bounds read in
freerdp_bitmap_decompress_planar(bsc#1259693). - CVE-2026-33952: client-side crash due to
WINPR_ASSERT()failure inrts_read_auth_verifier_no_checks()(bsc#1261196). - CVE-2026-33977: client-side crash due to
WINPR_ASSERT()failure in IMA ADPCM audio decoder (bsc#1261198). - CVE-2026-33982: heap buffer overread in in
winpr_aligned_offset_recalloc(bsc#1261222). - CVE-2026-33983: undefined behavior and resource exhaustion via 80 billion iteration loop in
progressive_decompress_tile_upgrade(bsc#1261200). - CVE-2026-33984: heap buffer overflow in ClearCodec
resize_vbar_entry(bsc#1261211). - CVE-2026-33985: heap out-of-bounds read in
clear_decompress_glyph_data(bsc#1261217). - CVE-2026-33986: heap out-of-bounds write due to H.264 YUV buffer dimension desync (bsc#1261223).
- CVE-2026-33987: heap out-of-bounds write due to persistent cache bmpSize desync (bsc#1261226).
- CVE-2026-33995: double-free vulnerability in
kerberos_AcceptSecurityContextandkerberos_InitializeSecurityContextA(bsc#1261227).
Other updates and bugfixes:
-
Version 3.24.2:
- [channels,video] fix wrong cast (#12511)
- [codec,openh264] reject encoder ABI mismatch on runtime-loaded library (#12510)
- [client,sdl] create a copy of rdpPointer (#12512)
- [codec,video] properly pass intermediate format (#12518)
- [utils, signal] lazily initialize Windows CRITICAL_SECTION to match POSIX static mutex behavior (#12520) winpr: improve libunwind backtraces (#12530)
- [server,shadow] remember selected caps (#12528)
- Zero credential data before free in NLA and NTLM context (#12532)
- [server,proxy] ignore missing client in input channel (#12536)
- [server,proxy] ignore rdpdr messages (#12537)
- [winpr,sspi] improve kerberos logging (#12538)
- Codec fixes (#12542)
-
Version 3.24.1:
- [warnings] fix various sign and cast warnings (#12480)
- [client,x11] start with xfc->remote_app = TRUE; (#12491)
- Sam file read regression fix (#12484)
- [ncrypt,smartcardlogon] support ECC keys in PKCS#11 smartcard enumeration (#12490)
- Fix: memory leak in rdp_client_establish_keys() (#12494)
- Fix memory leak in freerdp_settings_int_buffer_copy() on…
- Record
openSUSE-SU-2026:20657-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:1632-1 No score
Security update for freerdp
This update for freerdp fixes the following issues:
- CVE-2026-25941: Out-of-Bounds Read in client RDPGFX channel via crafted
WIRE_TO_SURFACE_2PDU (bsc#1258919). - CVE-2026-25942: Global-buffer-overflow in
xf_rail_server_execute_result(bsc#1258920). - CVE-2026-25952: Heap-use-after-free in
xf_SetWindowMinMaxInfo(bsc#1258921). - CVE-2026-25953: Heap-use-after-free in
xf_AppUpdateWindowFromSurface(bsc#1258923). - CVE-2026-25954: Heap-use-after-free in
xf_rail_server_local_move_size(bsc#1258924). - CVE-2026-25997: Heap-use-after-free in
xf_clipboard_format_equal(bsc#1258977). - CVE-2026-26986: Heap-use-after-free in
rail_window_free(bsc#1258967). - CVE-2026-27015: Smartcard NDR alignment padding triggers reachable
WINPR_ASSERTabort (bsc#1258987). - CVE-2026-27951: Denial of service via endless blocking loop in
Stream_EnsureCapacity(bsc#1258939). - CVE-2026-29774: Missing bounds validation can cause a client-side heap buffer overflow (bsc#1259689).
- CVE-2026-29775: Malicious server can trigger a client-side heap out-of-bounds access (bsc#1259684).
- CVE-2026-29776: Missing length check can lead to an integer underflow (bsc#1259692).
- CVE-2026-31897: Missing length check can cause an out-of-bounds read (bsc#1259693).
- Record
SUSE-SU-2026:1632-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:1633-1 No score
Security update for freerdp
This update for freerdp fixes the following issues:
- CVE-2026-25941: Out-of-Bounds Read in client RDPGFX channel via crafted
WIRE_TO_SURFACE_2PDU (bsc#1258919). - CVE-2026-25942: Global-buffer-overflow in
xf_rail_server_execute_result(bsc#1258920). - CVE-2026-25952: Heap-use-after-free in
xf_SetWindowMinMaxInfo(bsc#1258921). - CVE-2026-25953: Heap-use-after-free in
xf_AppUpdateWindowFromSurface(bsc#1258923). - CVE-2026-25954: Heap-use-after-free in
xf_rail_server_local_move_size(bsc#1258924). - CVE-2026-25955: Heap-use-after-free in
xf_AppUpdateWindowFromSurface(bsc#1258973). - CVE-2026-25959: Heap-use-after-free in
xf_cliprdr_provide_data_(bsc#1258976). - CVE-2026-25997: Heap-use-after-free in
xf_clipboard_format_equal(bsc#1258977). - CVE-2026-26986: Heap-use-after-free in
rail_window_free(bsc#1258967). - CVE-2026-27015: Smartcard NDR alignment padding triggers reachable
WINPR_ASSERTabort (bsc#1258987). - CVE-2026-27950: Denial of service due to incomplete fix for heap-use-after-free vulnerability (bsc#1258941).
- CVE-2026-27951: Denial of service via endless blocking loop in
Stream_EnsureCapacity(bsc#1258939). - CVE-2026-29774: Missing bounds validation can cause a client-side heap buffer overflow (bsc#1259689).
- CVE-2026-29775: Malicious server can trigger a client-side heap out-of-bounds access (bsc#1259684).
- CVE-2026-29776: Missing length check can lead to an integer underflow (bsc#1259692).
- CVE-2026-31897: Missing length check can cause an out-of-bounds read (bsc#1259693).
- Record
SUSE-SU-2026:1633-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:1634-1 No score
Security update for freerdp
This update for freerdp fixes the following issues:
- CVE-2026-25941: Out-of-Bounds Read in client RDPGFX channel via crafted
WIRE_TO_SURFACE_2PDU (bsc#1258919). - CVE-2026-25942: Global-buffer-overflow in
xf_rail_server_execute_result(bsc#1258920). - CVE-2026-25952: Heap-use-after-free in
xf_SetWindowMinMaxInfo(bsc#1258921). - CVE-2026-25953: Heap-use-after-free in
xf_AppUpdateWindowFromSurface(bsc#1258923). - CVE-2026-25954: Heap-use-after-free in
xf_rail_server_local_move_size(bsc#1258924). - CVE-2026-25997: Heap-use-after-free in
xf_clipboard_format_equal(bsc#1258977). - CVE-2026-26986: Heap-use-after-free in
rail_window_free(bsc#1258967). - CVE-2026-27015: Smartcard NDR alignment padding triggers reachable
WINPR_ASSERTabort (bsc#1258987). - CVE-2026-27951: Denial of service via endless blocking loop in
Stream_EnsureCapacity(bsc#1258939). - CVE-2026-29774: Missing bounds validation can cause a client-side heap buffer overflow (bsc#1259689).
- CVE-2026-29775: Malicious server can trigger a client-side heap out-of-bounds access (bsc#1259684).
- CVE-2026-29776: Missing length check can lead to an integer underflow (bsc#1259692).
- CVE-2026-31897: Missing length check can cause an out-of-bounds read (bsc#1259693).
- Record
SUSE-SU-2026:1634-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:1635-1 No score
Security update for freerdp
This update for freerdp fixes the following issues:
- CVE-2026-25941: Out-of-Bounds Read in client RDPGFX channel via crafted
WIRE_TO_SURFACE_2PDU (bsc#1258919). - CVE-2026-25942: Global-buffer-overflow in
xf_rail_server_execute_result(bsc#1258920). - CVE-2026-25952: Heap-use-after-free in
xf_SetWindowMinMaxInfo(bsc#1258921). - CVE-2026-25953: Heap-use-after-free in
xf_AppUpdateWindowFromSurface(bsc#1258923). - CVE-2026-25954: Heap-use-after-free in
xf_rail_server_local_move_size(bsc#1258924). - CVE-2026-25997: Heap-use-after-free in
xf_clipboard_format_equal(bsc#1258977). - CVE-2026-26986: Heap-use-after-free in
rail_window_free(bsc#1258967). - CVE-2026-27015: Smartcard NDR alignment padding triggers reachable
WINPR_ASSERTabort (bsc#1258987). - CVE-2026-27951: Denial of service via endless blocking loop in
Stream_EnsureCapacity(bsc#1258939). - CVE-2026-29774: Missing bounds validation can cause a client-side heap buffer overflow (bsc#1259689).
- CVE-2026-29775: Malicious server can trigger a client-side heap out-of-bounds access (bsc#1259684).
- CVE-2026-29776: Missing length check can lead to an integer underflow (bsc#1259692).
- CVE-2026-31897: Missing length check can cause an out-of-bounds read (bsc#1259693).
- Record
SUSE-SU-2026:1635-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:1640-1 No score
Security update for freerdp2
This update for freerdp2 fixes the following issues:
- CVE-2026-25941: Out-of-Bounds Read in client RDPGFX channel via crafted
WIRE_TO_SURFACE_2PDU (bsc#1258919). - CVE-2026-25942: Global-buffer-overflow in
xf_rail_server_execute_result(bsc#1258920). - CVE-2026-25952: Heap-use-after-free in
xf_SetWindowMinMaxInfo(bsc#1258921). - CVE-2026-25953: Heap-use-after-free in
xf_AppUpdateWindowFromSurface(bsc#1258923). - CVE-2026-25954: Heap-use-after-free in
xf_rail_server_local_move_size(bsc#1258924). - CVE-2026-25997: Heap-use-after-free in
xf_clipboard_format_equal(bsc#1258977). - CVE-2026-26986: Heap-use-after-free in
rail_window_free(bsc#1258967). - CVE-2026-27015: Smartcard NDR alignment padding triggers reachable
WINPR_ASSERTabort (bsc#1258987). - CVE-2026-27951: Denial of Service via endless blocking loop in
Stream_EnsureCapacity(bsc#1258939). - CVE-2026-29774: Missing bounds validation can cause a client-side heap buffer overflow (bsc#1259689).
- CVE-2026-29775: Malicious server can trigger a client-side heap out-of-bounds access (bsc#1259684).
- CVE-2026-29776: Missing length check can lead to an integer underflow (bsc#1259692).
- CVE-2026-31897: Missing length check can cause an out-of-bounds read (bsc#1259693).
- Record
SUSE-SU-2026:1640-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:21436-1 No score
Security update for freerdp
This update for freerdp fixes the following issues:
Update to version 3.24.2.
Security issues fixed:
- CVE-2026-25941: out-of-bounds read in the FreeRDP client RDPGFX channel (bsc#1258919).
- CVE-2026-25942: buffer overflow of global array in
xf_rail_server_execute_result(bsc#1258920). - CVE-2026-25952: heap use-after-free in
xf_SetWindowMinMaxInfo(bsc#1258921). - CVE-2026-25953: heap use-after-free in
xf_AppUpdateWindowFromSurface(bsc#1258923). - CVE-2026-25954: heap use-after-free in
xf_rail_server_local_move_size(bsc#1258924). - CVE-2026-25955: heap use-after-free in
xf_AppUpdateWindowFromSurface(bsc#1258973). - CVE-2026-25959: heap use-after-free in
xf_cliprdr_provide_data_(bsc#1258976). - CVE-2026-25997: heap use-after-free in
xf_clipboard_format_equal(bsc#1258977). - CVE-2026-26271: buffer overread in FreeRDP icon processing (bsc#1258979).
- CVE-2026-26955: out-of-bounds write in FreeRDP clients using the GDI surface pipeline (bsc#1258982).
- CVE-2026-26965: out-of-bounds write in FreeRDP client RLE planar decode path (bsc#1258985).
- CVE-2026-29774: heap buffer overflow in the FreeRDP client's AVC420/AVC444 YUV-to-RGB conversion path (bsc#1259689).
- CVE-2026-29775: out-of-bounds access in the FreeRDP client bitmap cache subsystem (bsc#1259684).
- CVE-2026-29776: integer underflow in
update_read_cache_bitmap_order(bsc#1259692). - CVE-2026-31806: heap buffer overflow in
nsc_process_message(bsc#1259653). - CVE-2026-31883: heap buffer overwrite due to a
size_tunderflow in the IMA-ADPCM and MS-ADPCM audio decoders (bsc#1259679). - CVE-2026-31884: division by zero in MS-ADPCM and IMA-ADPCM decoders (bsc#1259680).
- CVE-2026-31885: out-of-bounds read in MS-ADPCM and IMA-ADPCM decoders (bsc#1259686).
- CVE-2026-31897: out-of-bounds read in
freerdp_bitmap_decompress_planar(bsc#1259693). - CVE-2026-33952: client-side crash due to
WINPR_ASSERT()failure inrts_read_auth_verifier_no_checks()(bsc#1261196). - CVE-2026-33977: client-side crash due to
WINPR_ASSERT()failure in IMA ADPCM audio decoder (bsc#1261198). - CVE-2026-33982: heap buffer overread in in
winpr_aligned_offset_recalloc(bsc#1261222). - CVE-2026-33983: undefined behavior and resource exhaustion via 80 billion iteration loop in
progressive_decompress_tile_upgrade(bsc#1261200). - CVE-2026-33984: heap buffer overflow in ClearCodec
resize_vbar_entry(bsc#1261211). - CVE-2026-33985: heap out-of-bounds read in
clear_decompress_glyph_data(bsc#1261217). - CVE-2026-33986: heap out-of-bounds write due to H.264 YUV buffer dimension desync (bsc#1261223).
- CVE-2026-33987: heap out-of-bounds write due to persistent cache bmpSize desync (bsc#1261226).
- CVE-2026-33995: double-free vulnerability in
kerberos_AcceptSecurityContextandkerberos_InitializeSecurityContextA(bsc#1261227).
Other updates and bugfixes:
-
Version 3.24.2:
- [channels,video] fix wrong cast (#12511)
- [codec,openh264] reject encoder ABI mismatch on runtime-loaded library (#12510)
- [client,sdl] create a copy of rdpPointer (#12512)
- [codec,video] properly pass intermediate format (#12518)
- [utils, signal] lazily initialize Windows CRITICAL_SECTION to match POSIX static mutex behavior (#12520) winpr: improve libunwind backtraces (#12530)
- [server,shadow] remember selected caps (#12528)
- Zero credential data before free in NLA and NTLM context (#12532)
- [server,proxy] ignore missing client in input channel (#12536)
- [server,proxy] ignore rdpdr messages (#12537)
- [winpr,sspi] improve kerberos logging (#12538)
- Codec fixes (#12542)
-
Version 3.24.1:
- [warnings] fix various sign and cast warnings (#12480)
- [client,x11] start with xfc->remote_app = TRUE; (#12491)
- Sam file read regression fix (#12484)
- [ncrypt,smartcardlogon] support ECC keys in PKCS#11 smartcard enumeration (#12490)
- Fix: memory leak in rdp_client_establish_keys() (#12494)
- Fix memory leak in freerdp_settings_int_buffer_copy() on…
- Record
SUSE-SU-2026:21436-1- Updated
- 2026-11-02
OSVUSN-8561-1 No score
freerdp3 vulnerabilities
It was discovered that FreeRDP contained multiple security issues. An attacker could possibly use these issues to obtain sensitive information, cause FreeRDP to crash, resulting in a denial of service, or execute arbitrary code.
- Record
USN-8561-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
freerdpAlpine:v3.23 |
before 3.24.0-r0 | 3.24.0-r0 |
freerdpAlpine:v3.24 |
before 3.24.0-r0 | 3.24.0-r0 |
freerdpTuxCare:CentOS:7 From an advisory covering 3 CVEs |
before 2.1.1-5.el7_9.tuxcare.els18 | 2.1.1-5.el7_9.tuxcare.els18 |
freerdp-develTuxCare:CentOS:7 From an advisory covering 3 CVEs |
before 2.1.1-5.el7_9.tuxcare.els18 | 2.1.1-5.el7_9.tuxcare.els18 |
freerdp-libsTuxCare:CentOS:7 From an advisory covering 3 CVEs |
before 2.1.1-5.el7_9.tuxcare.els18 | 2.1.1-5.el7_9.tuxcare.els18 |
libwinprTuxCare:CentOS:7 From an advisory covering 3 CVEs |
before 2.1.1-5.el7_9.tuxcare.els18 | 2.1.1-5.el7_9.tuxcare.els18 |
libwinpr-develTuxCare:CentOS:7 From an advisory covering 3 CVEs |
before 2.1.1-5.el7_9.tuxcare.els18 | 2.1.1-5.el7_9.tuxcare.els18 |
freerdp2Debian:12 |
All versions, plus listed versions 2.10.0+dfsg1-12.10.0+dfsg1-1.12.11.2+dfsg1-12.11.2+dfsg1-1.1~exp12.11.2+dfsg1-1.1~exp2 Show 8 moreShow less2.11.5+dfsg1-12.11.7+dfsg1-12.11.7+dfsg1-22.11.7+dfsg1-32.11.7+dfsg1-42.11.7+dfsg1-52.11.7+dfsg1-62.11.7+dfsg1-6~deb12u1 |
None known |
freerdp3Debian:13 |
before 3.15.0+dfsg-2.1+deb13u2, plus listed versions 3.15.0+dfsg-2.13.15.0+dfsg-2.1+deb13u1 |
3.15.0+dfsg-2.1+deb13u2 |
freerdp3Debian:14 |
before 3.24.0+dfsg-1, plus listed versions 3.15.0+dfsg-2.13.16.0+dfsg-13.16.0+dfsg-23.17.0+dfsg-13.17.1+dfsg-1 Show 16 moreShow less3.17.1+dfsg-23.17.2+dfsg-13.17.2+dfsg-23.17.2+dfsg-33.18.0+dfsg-13.19.0+dfsg-13.19.1+dfsg-13.20.0+dfsg-13.20.2+dfsg-13.21.0+dfsg-13.22.0+dfsg-13.22.0+dfsg-1~bpo13+03.22.0+dfsg-1~bpo13+13.22.0+dfsg-33.23.0+dfsg-13.23.0+dfsg-1~bpo13+1 |
3.24.0+dfsg-1 |
Show 16 moreShow less
| Package | Affected | Fixed |
|---|---|---|
freerdpopenEuler:24.03-LTS-SP3 From an advisory covering 10 CVEs |
before 2.11.8-5.oe2403sp3 | 2.11.8-5.oe2403sp3 |
freerdpopenEuler:20.03-LTS-SP4 From an advisory covering 10 CVEs |
before 2.11.8-5.oe2003sp4 | 2.11.8-5.oe2003sp4 |
freerdpopenEuler:22.03-LTS-SP4 From an advisory covering 10 CVEs |
before 2.11.8-5.oe2203sp4 | 2.11.8-5.oe2203sp4 |
freerdpopenEuler:24.03-LTS From an advisory covering 10 CVEs |
before 2.11.8-5.oe2403 | 2.11.8-5.oe2403 |
freerdpopenEuler:24.03-LTS-SP1 From an advisory covering 10 CVEs |
before 2.11.8-5.oe2403sp1 | 2.11.8-5.oe2403sp1 |
freerdpUbuntu:16.04:LTS |
All versions, plus listed versions 1.1.0~git20140921.1.440916e+dfsg1-5ubuntu11.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.21.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.31.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4 |
None known |
freerdp2Ubuntu:Pro:18.04:LTS |
All versions, plus listed versions 2.0.0~git20170725.1.1648deb+dfsg1-12.0.0~git20170725.1.1648deb+dfsg1-52.0.0~git20170725.1.1648deb+dfsg1-5ubuntu12.0.0~git20170725.1.1648deb+dfsg1-5ubuntu22.0.0~git20170725.1.1648deb+dfsg1-6 Show 14 moreShow less2.0.0~git20170725.1.1648deb+dfsg1-6build12.0.0~git20170725.1.1648deb+dfsg1-72.0.0~git20170725.1.1648deb+dfsg1-7ubuntu0.12.1.1+dfsg1-0ubuntu0.18.04.12.2.0+dfsg1-0ubuntu0.18.04.12.2.0+dfsg1-0ubuntu0.18.04.22.2.0+dfsg1-0ubuntu0.18.04.32.2.0+dfsg1-0ubuntu0.18.04.42.2.0+dfsg1-0ubuntu0.18.04.4+esm12.2.0+dfsg1-0ubuntu0.18.04.4+esm22.2.0+dfsg1-0ubuntu0.18.04.4+esm32.2.0+dfsg1-0ubuntu0.18.04.4+esm42.2.0+dfsg1-0ubuntu0.18.04.4+esm52.2.0+dfsg1-0ubuntu0.18.04.4+esm6 |
None known |
freerdpUbuntu:18.04:LTS |
All versions, plus listed versions 1.1.0~git20140921.1.440916e+dfsg1-15ubuntu11.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.11.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2 |
None known |
freerdp2Ubuntu:Pro:20.04:LTS |
All versions, plus listed versions 2.0.0~git20190204.1.2693389a+dfsg1-12.0.0~git20190204.1.2693389a+dfsg1-22.0.0~git20190204.1.2693389a+dfsg1-2build12.0.0~git20190204.1.2693389a+dfsg1-2build22.1.1+dfsg1-0ubuntu0.20.04.1 Show 12 moreShow less2.2.0+dfsg1-0ubuntu0.20.04.12.2.0+dfsg1-0ubuntu0.20.04.22.2.0+dfsg1-0ubuntu0.20.04.32.2.0+dfsg1-0ubuntu0.20.04.42.2.0+dfsg1-0ubuntu0.20.04.52.2.0+dfsg1-0ubuntu0.20.04.62.6.1+dfsg1-0ubuntu0.20.04.12.6.1+dfsg1-0ubuntu0.20.04.22.6.1+dfsg1-0ubuntu0.20.04.2+esm12.6.1+dfsg1-0ubuntu0.20.04.2+esm22.6.1+dfsg1-0ubuntu0.20.04.2+esm32.6.1+dfsg1-0ubuntu0.20.04.2+esm4 |
None known |
freerdp2Ubuntu:22.04:LTS |
All versions, plus listed versions 2.3.0+dfsg1-2build12.3.0+dfsg1-2ubuntu12.3.0+dfsg1-2ubuntu22.4.1+dfsg1-12.4.1+dfsg1-1ubuntu1 Show 18 moreShow less2.4.1+dfsg1-1ubuntu22.5.0+dfsg1-12.6.0+dfsg1-12.6.1+dfsg1-12.6.1+dfsg1-32.6.1+dfsg1-3ubuntu12.6.1+dfsg1-3ubuntu22.6.1+dfsg1-3ubuntu2.12.6.1+dfsg1-3ubuntu2.22.6.1+dfsg1-3ubuntu2.32.6.1+dfsg1-3ubuntu2.42.6.1+dfsg1-3ubuntu2.52.6.1+dfsg1-3ubuntu2.62.6.1+dfsg1-3ubuntu2.72.6.1+dfsg1-3ubuntu2.82.6.1+dfsg1-3ubuntu2.92.6.1+dfsg1-3ubuntu2.102.6.1+dfsg1-3ubuntu2.11 |
None known |
freerdp3Ubuntu:24.04:LTS |
before 3.30.0+dfsg-0ubuntu0.24.04.1, plus listed versions 3.4.0+dfsg1-0ubuntu23.4.0+dfsg1-0ubuntu33.4.0+dfsg1-0ubuntu43.5.0+dfsg1-0ubuntu13.5.1+dfsg1-0ubuntu1 Show 5 moreShow less3.5.1+dfsg1-0ubuntu1.13.5.1+dfsg1-0ubuntu1.23.5.1+dfsg1-0ubuntu1.43.5.1+dfsg1-0ubuntu1.53.5.1+dfsg1-0ubuntu1.6 |
3.30.0+dfsg-0ubuntu0.24.04.1 |
freerdp2Ubuntu:Pro:24.04:LTS |
All versions, plus listed versions 2.10.0+dfsg1-1.1ubuntu12.11.2+dfsg1-12.11.2+dfsg1-1build12.11.2+dfsg1-1build32.11.5+dfsg1-1build1 Show 7 moreShow less2.11.5+dfsg1-1build22.11.5+dfsg1-1ubuntu0.1~esm12.11.5+dfsg1-1ubuntu0.1~esm22.11.5+dfsg1-1ubuntu0.1~esm32.11.5+dfsg1-1ubuntu0.1~esm42.11.5+dfsg1-1ubuntu0.1~esm52.11.5+dfsg1-1ubuntu0.1~esm6 |
None known |
freerdp3Ubuntu:25.10 |
All versions, plus listed versions 3.14.0+dfsg-1ubuntu13.15.0+dfsg-2.13.16.0+dfsg-1ubuntu13.16.0+dfsg-23.16.0+dfsg-2ubuntu0.13.16.0+dfsg-2ubuntu0.33.16.0+dfsg-2ubuntu0.43.16.0+dfsg-2ubuntu0.5 |
None known |
freerdp3Ubuntu:24.04:LTS From an advisory covering 34 CVEs |
before 3.30.0+dfsg-0ubuntu0.24.04.1, plus listed versions 3.4.0+dfsg1-0ubuntu23.4.0+dfsg1-0ubuntu33.4.0+dfsg1-0ubuntu43.5.0+dfsg1-0ubuntu13.5.1+dfsg1-0ubuntu1 Show 5 moreShow less3.5.1+dfsg1-0ubuntu1.13.5.1+dfsg1-0ubuntu1.23.5.1+dfsg1-0ubuntu1.43.5.1+dfsg1-0ubuntu1.53.5.1+dfsg1-0ubuntu1.6 |
3.30.0+dfsg-0ubuntu0.24.04.1 |
freerdp3Ubuntu:26.04:LTS From an advisory covering 34 CVEs |
before 3.30.0+dfsg-0ubuntu0.26.04.1, plus listed versions 3.16.0+dfsg-23.18.0+dfsg-1ubuntu13.19.0+dfsg-13.19.1+dfsg-13.20.0+dfsg-1 Show 6 moreShow less3.20.2+dfsg-13.21.0+dfsg-13.22.0+dfsg-13.24.1+dfsg-1ubuntu13.24.2+dfsg-1ubuntu13.24.2+dfsg-1ubuntu1.1 |
3.30.0+dfsg-0ubuntu0.26.04.1 |
freerdpopenSUSE:Tumbleweed From an advisory covering 19 CVEs |
before 3.24.1-1.1 | 3.24.1-1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| affected, aliases, references | OSV | |
| aliases, published | EUVD | |
| first indexed | CVE List, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-29774 is a medium vulnerability (CVSS 5.3) in Freerdp, published March 13, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.34%, the 27th percentile. Fixed in freerdp 3.24.0-r0.
References
github.com/FreeRDP/FreeRDP/security/advisories/GHSA-5q35-hv9x-7794
github.com/FreeRDP/FreeRDP/commit/6482b7a92fff3959582cef052d1967ad6bde3738
security.alpinelinux.org/vuln/CVE-2026-29774
errata.tuxcare.com/els_os/centos7els/CLSA-2026-1774438942.html
github.com/CVEProject/cvelistV5/tree/main/cves/2026/29xxx/CVE-2026-29774.json
nvd.nist.gov/vuln/detail/CVE-2026-29774
Show 122 moreShow less
security-tracker.debian.org/tracker/CVE-2026-29774
openeuler.org/zh/security/security-bulletins/detail?id=openEuler-SA-2026-2439
nvd.nist.gov/vuln/detail/CVE-2026-25942
nvd.nist.gov/vuln/detail/CVE-2026-25952
nvd.nist.gov/vuln/detail/CVE-2026-25953
nvd.nist.gov/vuln/detail/CVE-2026-25954
nvd.nist.gov/vuln/detail/CVE-2026-27951
nvd.nist.gov/vuln/detail/CVE-2026-29775
nvd.nist.gov/vuln/detail/CVE-2026-31884
nvd.nist.gov/vuln/detail/CVE-2026-31897
nvd.nist.gov/vuln/detail/CVE-2026-33985
openeuler.org/zh/security/security-bulletins/detail?id=openEuler-SA-2026-2440
openeuler.org/zh/security/security-bulletins/detail?id=openEuler-SA-2026-2441
openeuler.org/zh/security/security-bulletins/detail?id=openEuler-SA-2026-2442
openeuler.org/zh/security/security-bulletins/detail?id=openEuler-SA-2026-2540
suse.com/support/update/announcement/2026/suse-su-20261632-1
bugzilla.suse.com/1258919
bugzilla.suse.com/1258920
bugzilla.suse.com/1258921
bugzilla.suse.com/1258923
bugzilla.suse.com/1258924
bugzilla.suse.com/1258939
bugzilla.suse.com/1258967
bugzilla.suse.com/1258977
bugzilla.suse.com/1258987
bugzilla.suse.com/1259680
bugzilla.suse.com/1259684
bugzilla.suse.com/1259689
bugzilla.suse.com/1259692
bugzilla.suse.com/1259693
bugzilla.suse.com/1261848
suse.com/security/cve/CVE-2026-25941
suse.com/security/cve/CVE-2026-25942
suse.com/security/cve/CVE-2026-25952
suse.com/security/cve/CVE-2026-25953
suse.com/security/cve/CVE-2026-25954
suse.com/security/cve/CVE-2026-25997
suse.com/security/cve/CVE-2026-26986
suse.com/security/cve/CVE-2026-27015
suse.com/security/cve/CVE-2026-27951
suse.com/security/cve/CVE-2026-29774
suse.com/security/cve/CVE-2026-29775
suse.com/security/cve/CVE-2026-29776
suse.com/security/cve/CVE-2026-31884
suse.com/security/cve/CVE-2026-31897
suse.com/support/update/announcement/2026/suse-su-20261633-1
bugzilla.suse.com/1258941
bugzilla.suse.com/1258973
bugzilla.suse.com/1258976
suse.com/security/cve/CVE-2026-25955
suse.com/security/cve/CVE-2026-25959
suse.com/security/cve/CVE-2026-27950
suse.com/support/update/announcement/2026/suse-su-20261634-1
suse.com/support/update/announcement/2026/suse-su-20261635-1
suse.com/support/update/announcement/2026/suse-su-20261640-1
bugzilla.suse.com/1259653
suse.com/security/cve/CVE-2026-31806
suse.com/support/update/announcement/2026/suse-su-202621436-1
bugzilla.suse.com/1258979
bugzilla.suse.com/1258982
bugzilla.suse.com/1258985
bugzilla.suse.com/1259679
bugzilla.suse.com/1259686
bugzilla.suse.com/1261196
bugzilla.suse.com/1261198
bugzilla.suse.com/1261200
bugzilla.suse.com/1261211
bugzilla.suse.com/1261217
bugzilla.suse.com/1261222
bugzilla.suse.com/1261223
bugzilla.suse.com/1261226
bugzilla.suse.com/1261227
suse.com/security/cve/CVE-2026-26271
suse.com/security/cve/CVE-2026-26955
suse.com/security/cve/CVE-2026-26965
suse.com/security/cve/CVE-2026-31883
suse.com/security/cve/CVE-2026-31885
suse.com/security/cve/CVE-2026-33952
suse.com/security/cve/CVE-2026-33977
suse.com/security/cve/CVE-2026-33982
suse.com/security/cve/CVE-2026-33983
suse.com/security/cve/CVE-2026-33984
suse.com/security/cve/CVE-2026-33985
suse.com/security/cve/CVE-2026-33986
suse.com/security/cve/CVE-2026-33987
suse.com/security/cve/CVE-2026-33995
ubuntu.com/security/CVE-2026-29774
cve.org/CVERecord?id=CVE-2026-29774
ubuntu.com/security/notices/USN-8561-1
ubuntu.com/security/CVE-2026-27951
ubuntu.com/security/CVE-2026-29775
ubuntu.com/security/CVE-2026-29776
ubuntu.com/security/CVE-2026-31806
ubuntu.com/security/CVE-2026-31883
ubuntu.com/security/CVE-2026-31884
ubuntu.com/security/CVE-2026-31885
ubuntu.com/security/CVE-2026-31897
ubuntu.com/security/CVE-2026-33952
ubuntu.com/security/CVE-2026-33977
ubuntu.com/security/CVE-2026-33982
ubuntu.com/security/CVE-2026-33983
ubuntu.com/security/CVE-2026-33984
ubuntu.com/security/CVE-2026-33985
ubuntu.com/security/CVE-2026-33986
ubuntu.com/security/CVE-2026-33987
ubuntu.com/security/CVE-2026-33995
ubuntu.com/security/CVE-2026-40033
ubuntu.com/security/CVE-2026-40254
ubuntu.com/security/CVE-2026-44420
ubuntu.com/security/CVE-2026-44421
ubuntu.com/security/CVE-2026-44422
ubuntu.com/security/CVE-2026-55191
ubuntu.com/security/CVE-2026-55192
ubuntu.com/security/CVE-2026-55193
ubuntu.com/security/CVE-2026-55194
ubuntu.com/security/CVE-2026-55564
ubuntu.com/security/CVE-2026-55648
ubuntu.com/security/CVE-2026-55827
ubuntu.com/security/CVE-2026-56297
ubuntu.com/security/CVE-2026-57156
ubuntu.com/security/CVE-2026-57157
ubuntu.com/security/CVE-2026-57158
Left out here: the rest of 7 source descriptions. The JSON record has them.