FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, a missing bounds check in `smartcard_unpack_read_size_align()` (`libfreerdp/utils/smartcard_pack.c:1703`) allows a malicious RDP server to crash the FreeRDP client via a reachable `WINPR_ASSERT` → `abort()`. The crash occurs in upstream builds where `WITH_VERBOSE_WINPR_ASSERT=ON` (default in FreeRDP 3.22.0 / current WinPR CMake defaults). Smartcard redirection must be explicitly enabled by the user (e.g., `xfreerdp /smartcard`; `/smartcard-logon` implies `/smartcard`). Version 3.23.0 fixes the issue.
References
| Link | Resource |
|---|---|
| https://github.com/FreeRDP/FreeRDP/commit/65d59d3b3c2f630f2ea862687ecf5f95f8115244 | Patch |
| https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-7g72-39pq-4725 | Exploit Mitigation Patch Vendor Advisory |
| https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-7g72-39pq-4725 | Exploit Mitigation Patch Vendor Advisory |
Configurations
History
No history.
Information
Published : 2026-02-25 21:16
Updated : 2026-02-27 14:48
NVD link : CVE-2026-27015
Mitre link : CVE-2026-27015
CVE.ORG link : CVE-2026-27015
JSON object : View
Products Affected
freerdp
- freerdp
CWE
CWE-617
Reachable Assertion
