Safeguard
Vulnerability Analysis•

CVE-2026-24677: Critical Out-of-Bounds Read in FreeRDP Camera Channel

CVE-2026-24677 is a critical out-of-bounds read in FreeRDP's camera redirection H.264 encoder, fixed in 3.22.0. Upgrade FreeRDP and rebuild dependents.

Safeguard Security Team
4 min read

CVE-2026-24677 is a critical (CVSS 9.1) out-of-bounds read in the FreeRDP client's camera redirection code. It trusts dimensions sent by the server. Versions up to 3.21.0 are affected and 3.22.0 fixes it. Upgrade FreeRDP, and rebuild anything that bundles it.

What's affected

The GitHub advisory lists FreeRDP 3.21.0 and earlier as affected, with 3.22.0 as the patched version.

The flaw is in ecam_encoder_compress_h264. It trusts server controlled dimensions and does not validate the source buffer size, which leads to an out-of-bounds read in sws_scale. The risk applies to the client, when it connects to a malicious or compromised RDP server with camera redirection in play.

A sibling flaw in the USB redirection code, CVE-2026-24679, is fixed in the same release.

How to check if you're exposed

Check the FreeRDP version:

xfreerdp /version

Also check your package manager for libfreerdp. Many remote desktop clients and gateways embed FreeRDP, so look at your software inventory for tools that bundle it, including Linux remote desktop clients and container images.

For a quick look at your own dependencies, Safeguard's free in-browser dependency scan at https://gold.safeguard.sh/scan checks them against known CVEs in your browser.

What to do now

  1. Upgrade FreeRDP to 3.22.0 or later.
  2. Update applications that bundle FreeRDP and wait for their vendors' releases if you cannot rebuild them.
  3. Connect only to RDP servers you trust.
  4. Turn off camera redirection if you do not need it.

Why it matters

The record lists CWE-416, use after free, while the advisory describes an out-of-bounds read. Either way the program reads memory it should not, based on sizes a remote party controls. Reads of this kind can crash the client or leak memory contents.

The unusual part is the direction. In most RDP stories the server is the target, but here the client trusts the server. People who connect to servers outside their control, such as customer or lab machines, carry the risk. The CVE is not in CISA's Known Exploited Vulnerabilities catalog.

Clients that trust servers

Security teams usually think of remote desktop as a service to defend, with the server as the target. The FreeRDP advisories flip that. Here the client reads values sent by the server, such as image dimensions and interface numbers, and uses them without checking. A server that is malicious or compromised can send values that make the client read memory it should not.

That changes who should care. People who connect to machines they do not fully control carry the risk: support staff reaching customer systems, researchers connecting to lab honeypots, administrators on jump hosts that reach many networks. A compromised server inside your own network can also become a way to reach those users.

Where FreeRDP hides

FreeRDP is a library as well as a command line client. Many Linux remote desktop applications, gateways and virtual desktop tools link against it, and some bundle their own copy. Updating the system package does not update a bundled copy. To find them, list installed packages that depend on libfreerdp, check container images for remote desktop tools, and ask vendors of any such appliance which FreeRDP version they ship.

A sensible order of work

First, update FreeRDP on workstations and jump hosts that connect outward. Second, rebuild images that carry a client. Third, ask vendors of bundled products for a patched release and note the date you asked. While you wait, disable channels you do not need, such as camera and USB redirection, and connect only to servers you trust.

Keep it in proportion

The CVSS vector has no privileges and no user interaction, but it describes the attack from the server toward a client that has to connect first. That is a smaller population than a flaw reachable by anyone on the internet. It is still a good reason to patch in the normal cycle, and sooner for high exposure users.

Quick check

Is it the server or the client that is vulnerable?

The client. The flaw is in how the FreeRDP client handles data sent by the server.

Which version fixes it?

FreeRDP 3.22.0.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.