Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to shadow server as client
-
ExploitSend crafted Frame Acknowledge PDU
-
ExecutionUnderflow in-flight frame count
-
ImpactDivide-by-zero crashes server, disconnects viewers
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Integer underflow checks
|
| Exploitation Conditions | Requires that the target run the freerdp-shadow-cli shadow server (a non-default, uncommon FreeRDP deployment mode used for screen sharing), and that the attacker hold a valid authenticated client session (CVSS PR:L). The specific trigger is a Frame Acknowledge PDU whose frame id is exactly one greater than the last frame the server sent, which is stored without a range check and underflows the in-flight frame count in shadow_encoder_inflight_frames(), reaching the divide-by-zero in shadow_encoder_create_frame_id(). Exploitation is LIMITED by the need for valid authentication and by the fact that the vulnerable shadow server is rarely deployed in production; no user interaction is required (UI:N) and complexity is low once authenticated. |
| Impact | This is a moderate, availability-only denial-of-service issue, not a critical priority. The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H) correctly reflects the impact: network-reachable, low complexity, but requiring an authenticated session (PR:L) and causing only an availability impact (VA:H) with no confidentiality or integrity effect. No EPSS score was supplied, so statistical exploitation probability cannot be weighed. The CVE is NOT in CISA KEV and no public exploit code was referenced, so there is no public exploit identified at time of analysis. SSVC inputs (exploitation status, automatable, technical impact) were not provided and cannot be assessed from the input. The signals are internally consistent - there is no CVSS-vs-description conflict - but the real-world impact is limited to crashing a running freerdp-shadow-cli process and disconnecting its viewers; it does not yield code execution or data exposure. Note the input Tags label this 'Information Disclosure,' which contradicts the vector's VC:N (no confidentiality impact) and the DoS-only description; treat the DoS characterization as authoritative. Overall this is a legitimate but lower-tier fix-when-convenient issue, materially constrained by the authentication requirement and the niche nature of the affected component. |
| Exploit ScenarioDerived | An attacker who already holds valid credentials to a running freerdp-shadow-cli shadow server connects as a client and sends a Frame Acknowledge PDU referencing a frame id one greater than the last frame the server sent. The resulting in-flight frame count underflow drives a divide-by-zero (SIGFPE) that crashes the server and disconnects every connected viewer. No public exploit code was identified, and the attack requires an authenticated session and low complexity (CVSS AC:L/PR:L). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 12, 2026
A divide-by-zero in FreeRDP's freerdp-shadow-cli shadow server (versions before 3.32.0) allows an authenticated client to crash the process by sending a Frame Acknowledge PDU with a frame id one greater than the last frame sent, disconnecting all viewers. Exploitation requires a valid authenticated session and only affects the non-default shadow server deployment; no user interaction is needed and complexity is low. No public exploit code has been identified at time of analysis, and the impact is availability-only (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H).
RemediationAI
Upgrade FreeRDP to version 3.32.0 or later, which includes the fix per the vendor advisory GHSA-6vjv-4hm3-6698. If upgrading is not immediately possible, avoid running the freerdp-shadow-cli shadow server in untrusted networks, or restrict access to it by requiring authentication and limiting connections to trusted clients; note that the vulnerability still requires a valid authenticated session, so strong authentication policies reduce exposure. Alternatively, disable the shadow server feature if it is not needed. There is no known workaround that specifically prevents the divide-by-zero beyond applying the patch. Monitor the advisory for further details.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
FreeRDP is an open-source Remote Desktop Protocol (RDP) client and library. The freerdp-shadow-cli component provides a shadow server for screen sharing, where the server sends frame updates to connected viewers. The vulnerability is a CWE-191 integer underflow: the Frame Acknowledge PDU from a client carries a frame id that is stored without validating it against the last frame sent, so a client can acknowledge a frame id one greater than the last frame, causing the in-flight frame count computed in shadow_encoder_inflight_frames() to underflow. That underflowed value then feeds into shadow_encoder_create_frame_id(), where a division by zero occurs, raising SIGFPE and terminating the shadow server process. The affected CPE is cpe:2.3:a:freerdp:freerdp:*:*:*:*:*:*:*:* (all versions before the fix); authentication is required (PR:L in the CVSS vector).
Know when Freerdp gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Network-reachable but requires an authenticated client session (PR:L) with low complexity; impact is a process crash, so A:H with C:N/I:N and unchanged scope.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
FreeRDP before 3.32.0 contains a divide-by-zero vulnerability in the freerdp-shadow-cli shadow server: the frame id in a client's Frame Acknowledge PDU is stored without a range check, so the in-flight frame count in shadow_encoder_inflight_frames() can underflow. An authenticated client can acknowledge a frame id one greater than the last frame sent, causing shadow_encoder_create_frame_id() to divide by zero (SIGFPE) and terminate the process, disconnecting all viewers.
Executive ViewAI
FreeRDP's shadow server (freerdp-shadow-cli) versions before 3.32.0 are vulnerable to a denial-of-service attack that allows an authenticated user to crash the service, disconnecting all active viewers. This affects organizations that deploy the non-default shadow server for remote support or collaboration, potentially disrupting critical support sessions. Leadership should be aware because while exploitation requires authentication and the impact is availability-only, the lack of a vendor patch means mitigation relies on access controls and monitoring until a fix is released.
No vendor-released patch identified at time of analysis; interim mitigations include restricting network access to the shadow server to trusted IP addresses, ensuring only authorized users can establish authenticated sessions, disabling the shadow server if not operationally required, and monitoring process logs for unexpected crashes to detect exploitation attempts.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Integer overflow occurs when an arithmetic operation produces a result that exceeds the maximum value a given integer type can store.
Use-after-free in FreeRDP xf_clipboard_format_equal before 3.23.0. Clipboard format comparison uses freed memory. Fifth
Use-after-free in FreeRDP xf_AppUpdateWindowFromSurface before 3.23.0. Surface-to-window update triggers memory corrupti
Use-after-free in FreeRDP xf_SetWindowMinMaxInfo before version 3.23.0. X11 client window management triggers memory cor
Use-after-free in FreeRDP xf_cliprdr_provide_data clipboard handling before 3.23.0. Clipboard data exchange triggers mem
FreeRDP IRP thread handler has a use-after-free where the IRP is freed by Complete() then accessed on the error path. Fi
FreeRDP drive read heap overflow when server-controlled read length exceeds IRP output buffer. Fixed in 3.20.1. PoC avai
FreeRDP client before 3.20.1 has a heap buffer overflow in AUDIN format processing. A malicious RDP server can corrupt m
Use-after-free in FreeRDP xf_AppUpdateWindowFromSurface before 3.23.0. Different code path from CVE-2026-25953. PoC and
FreeRDP is a free implementation of the Remote Desktop Protocol. Rated critical severity (CVSS 9.8), this vulnerability
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Rated critical
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Rated critical
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Rated critical
EUVD-2026-97690
GHSA-jpmc-9q62-wvpv
NVD
CVE.org
EPSS
Exploit-DB