
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-24683 is a heap use-after-free vulnerability in FreeRDP's ainput_send_input_event function, classified as Heap-use-after-free in ainput_send_input_event. It affects all FreeRDP versions prior to 3.22.0 and was disclosed on February 9, 2026. The flaw arises from a race condition between the input event handler and a concurrent channel close operation. It carries a CVSS v3.1 base score of 7.5 (High) and a CVSS v4.0 base score of 8.7 (High) (GitHub Advisory, Red Hat CVE).
The root cause is a missing synchronization primitive (CWE-416: Use After Free; CWE-825: Expired Pointer Dereference) in channels/ainput/client/ainput_main.c. The function ainput_send_input_event reads ainput->base.listener_callback->channel_callback into a local variable and subsequently calls callback->channel->Write() without holding any lock. Concurrently, ainput_on_close — triggered by a server-initiated channel close via drdynvc_process_close_request — calls free(callback) on the same pointer. If the close races with the write, the freed memory is accessed, producing a heap-use-after-free. The fix (commit d9ca272) introduces a CRITICAL_SECTION lock in the AINPUT_PLUGIN struct, acquired in both ainput_send_input_event and ainput_on_close to serialize access (GitHub Commit, GitHub Advisory).
A malicious RDP server can trigger this race condition on a connecting FreeRDP client, causing a crash (denial of service) due to heap corruption. Depending on allocator behavior and heap layout, the use-after-free could theoretically be escalated to arbitrary code execution on the client system, though the primary confirmed impact is availability loss. Confidentiality and integrity are not directly impacted under the standard CVSS assessment, but heap corruption primitives carry inherent code-execution risk in practice (GitHub Advisory, Red Hat CVE).
No public proof-of-concept exploit code is known to exist, and there is no evidence of in-the-wild exploitation as of the time of this report. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. The EPSS score is approximately 0.042%, reflecting low near-term exploitation probability. Exploitation requires the attacker to control or impersonate an RDP server and to win a timing race between channel close and input event processing, adding practical complexity (GitHub Advisory, Feedly).
GENERIC_CHANNEL_CALLBACK for the channel.CLOSE_REQUEST for the AINPUT channel from the server side (via drdynvc_process_close_request), which causes the client's ainput_on_close to call free(callback) on the channel callback structure.ainput_send_input_event, which reads the now-freed channel_callback pointer and calls callback->channel->Write() on freed memory.xfreerdp, wfreerdp, etc.), particularly with AddressSanitizer output referencing ainput_send_input_event in ainput_main.c.ABORTING or heap-use-after-free errors near the ainput channel code path.core, xfreerdp.core) in the working directory of the FreeRDP client process (GitHub Advisory).Upgrade FreeRDP to version 3.22.0 or later, which contains the fix (commit d9ca272) that introduces a CRITICAL_SECTION lock to serialize access to the channel callback (GitHub Commit, FreeRDP Release). Red Hat has issued patches for RHEL 8, 9, 9.4 EUS, 9.6 EUS, 10, and 10.0 EUS via errata RHSA-2026:6340, RHSA-2026:6727, RHSA-2026:6743, RHSA-2026:6799, RHSA-2026:6918, RHSA-2026:6958, and RHSA-2026:19033 (Red Hat Bugzilla). Ubuntu has issued USN-8042-1, and openSUSE, Mageia, Amazon Linux 2, and AlmaLinux have also released updated packages. As a temporary workaround for systems that cannot be immediately patched, restrict FreeRDP client connections to trusted RDP servers only using network-level access controls, and avoid connecting to untrusted or unknown RDP endpoints.
The vulnerability was reported by security researcher ehdgks0627 and disclosed via the FreeRDP GitHub Security Advisory on February 9, 2026 (GitHub Advisory). The FreeRDP project rated the severity as Moderate and released the fix in version 3.22.0 on January 28, 2026, ahead of the CVE publication. Multiple Linux distributions including Red Hat, Ubuntu, openSUSE, Mageia, and AlmaLinux issued coordinated security advisories, indicating broad ecosystem awareness. No significant social media controversy or threat actor commentary has been observed.
Fix availability across major Linux distributions and their releases.
bookworm
freerdp2
sid
freerdp3: 3.22.0+dfsg-1
trixie
freerdp3: 3.15.0+dfsg-2.1+deb13u1
bionic (esm-apps)
freerdp
bionic (esm-infra)
freerdp2
devel
freerdp3
focal (esm-infra)
freerdp2: 2.6.1+dfsg1-0ubuntu0.20.04.2+esm3
jammy
freerdp2: 2.6.1+dfsg1-3ubuntu2.10
noble
freerdp2
noble (esm-apps)
freerdp2: 2.11.5+dfsg1-1ubuntu0.1~esm5
questing
freerdp3: 3.16.0+dfsg-2ubuntu0.1
RHEL 8
:appstream:freerdp-2:2.11.7-6.el8_10.src
RHEL 9
:appstream:freerdp-2:2.11.2-1.el9_4.5.src
RHEL 10
freerdp-2:3.10.3-3.el10_0.5.src
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."