Double Free Affecting freerdp/freerdp package, versions [,3.32.0)


Severity

Recommended
0.0
high
0
10

CVSS assessment by Snyk's Security Team. Learn more

Threat Intelligence

Exploit Maturity
Proof of Concept
EPSS
0.32% (24th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Double Free vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-UNMANAGED-FREERDPFREERDP-20848909
  • published13 Oct 2026
  • disclosed12 Oct 2026
  • creditkimaiden1984-boop

Introduced: 12 Oct 2026

NewCVE-2026-109257  (opens in a new tab)
CWE-415  (opens in a new tab)

How to fix?

Upgrade freerdp/freerdp to version 3.32.0 or higher.

Overview

Affected versions of this package are vulnerable to Double Free via nsc_context_initialize_encode() in libfreerdp/codec/nsc_encode.c, which grows five aligned plane buffers sequentially and immediately publishes each successful replacement into the context. When a later allocation in the loop fails, the error path frees every plane buffer without setting the stored pointers to NULL or restoring a coherent previous state. Subsequent context teardown via nsc_context_free() calls winpr_aligned_free() on the already-freed (dangling) plane pointers, causing a double free and crashing the server with SIGSEGV. A remote client can trigger this by negotiating NSCodec and requesting a desktop geometry that causes a partial plane-buffer growth failure under bounded server memory.

References

CVSS Base Scores

version 4.0
version 3.1