CVE-2026-121407
Description
A flaw was found in FreeRDP. An authenticated remote attacker can cause a Denial of Service (DoS) by sending a specially crafted message to the shadow server's remdesk virtual channel. Due to an inverted packet length verification check, processing the malformed data triggers an internal assertion failure. This aborts the server process and terminates all active user sessions.
Statement
This vulnerability is rated as Moderate severity because exploitation requires an authenticated session and is limited to process termination rather than arbitrary code execution. On Red Hat Enterprise Linux, FreeRDP is primarily deployed as a client utility to connect to remote desktop environments, whereas the shadow server daemon is not enabled by default. Systems are only exposed if administrators explicitly configure and host the FreeRDP shadow service for untrusted or partially trusted clients.
Mitigation
Restrict network access to the FreeRDP shadow service so that only trusted hosts can connect, or stop the shadow server if remote desktop sharing is not actively required.
1. Restrict RDP traffic to trusted IP networks using firewalld:
# firewall-cmd --permanent --zone=public --remove-service=rdp
# firewall-cmd --permanent --zone=trusted --add-source=<trusted_network_CIDR>
# firewall-cmd --reload
2. If remote desktop sharing is managed via a systemd unit and is not needed, stop and disable it:
# systemctl stop <freerdp-shadow-service>
# systemctl disable <freerdp-shadow-service>
Warning: Reloading firewall rules or stopping the shadow service will immediately disconnect active remote desktop sessions and prevent remote access.
Common Vulnerability Scoring System (CVSS) Score Details
Info alert:Important note
CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authority (CNA) source for its products and services (see Red Hat classifications).
The following CVSS metrics and score provided are preliminary and subject to review.
CVSS v3 Score Breakdown
| Red Hat | NVD | cve.org | |
|---|---|---|---|
| Base Score | 6.5 | N/A | 6.5 |
| Attack Vector | Network | N/A | Network |
| Attack Complexity | Low | N/A | Low |
| Privileges Required | Low | N/A | Low |
| User Interaction | None | N/A | None |
| Scope | Unchanged | N/A | Unchanged |
| Confidentiality | None | N/A | None |
| Integrity Impact | None | N/A | None |
| Availability Impact | High | N/A | High |
Vector
Red Hat: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
cve.org: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Understanding the Weakness (CWE)
Availability
Technical Impact: DoS: Crash, Exit, or Restart
While assertion is good for catching logic errors and reducing the chances of reaching more serious vulnerability conditions, an attacker can still cause a denial of service if they can trigger an assert statement, and if the scope of the assert() extends beyond the attacker's own session. For example, if a server handles multiple simultaneous connections, if an assert() occurs in one single connection that causes all other connections to be dropped, this could be a significant denial of service.
Frequently Asked Questions
Not sure what something means? Check out our Security Glossary.
Want to get errata notifications? Sign up here.