Description
FreeRDP before 3.29.0 contains a buffer over-disclosure vulnerability in the gateway WebSocket transport (libfreerdp/core/gateway/websocket.c). The client's Pong reply reuses a fixed 1024-byte response stream whose length is not sealed to the actual received Ping payload, so a malicious gateway/WebSocket peer sending a non-empty Ping control frame causes the client to reply with an overlong Pong that discloses bytes beyond the received payload (the peer receives the masking key and can unmask the reply). A zero-length Ping reaches an assertion and terminates the client (denial of service).
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| FreeRDP | FreeRDP | < 3.29.0 | 3.29.0 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | freerdp3 | 3.29.0+dfsg-1 | — |
| Debian 13 | freerdp3 | No fix yet | — |
| Debian 12 | freerdp2 | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.04 LTS | freerdp3 | 3.30.0+dfsg-0ubuntu0.26.04.1 | — |
| Ubuntu 24.04 LTS | freerdp3 | 3.30.0+dfsg-0ubuntu0.24.04.1 | — |
| Ubuntu 22.04 LTS | freerdp2 | No fix yet | — |
| Ubuntu 18.04 LTS | freerdp | No fix yet | — |
| Ubuntu 16.04 LTS | freerdp | No fix yet | — |
Show 3 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 24.04 LTS | freerdp2 | No fix yet | — |
| Ubuntu Pro 20.04 LTS | freerdp2 | No fix yet | — |
| Ubuntu Pro 18.04 LTS | freerdp2 | No fix yet | — |
References
- GitHub Security Advisory (GHSA-8v6m-2cmc-chx9) vendor-advisory
- Patch Commit patch
- VulnCheck Advisory: FreeRDP before 3.29.0 WebSocket Ping Buffer Over-disclosure third-party-advisory