CVE-2026-22858: FreeRDP has a global-buffer-overflow in crypto_base64_decode
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.20.1, global-buffer-overflow was observed in FreeRDP's Base64 decoding path. The root cause appears to be implementation-defined char signedness: on Arm/AArch64 builds, plain char is treated as unsigned, so the guard c <= 0 can be optimized into a simple c != 0 check. As a result, non-ASCII bytes (e.g., 0x80-0xFF) may bypass the intended range restriction and be used as an index into a global lookup table, causing out-of-bounds access. This vulnerability is fixed in 3.20.1.
Security readout for executives and security teams
Plain-English summary
FreeRDP before 3.20.1 can read outside a global memory table while decoding Base64 data. The issue is tied to platform-specific C behavior, especially Arm/AArch64 builds. Business risk is highest where FreeRDP is exposed to untrusted RDP-related data or embedded in remote access workflows.
Executive priority
Treat as a high-priority patching issue for organizations using FreeRDP in remote access tooling, especially on Arm platforms. No cited evidence shows active exploitation, so urgency is remediation-focused rather than incident-response-driven.
Technical view
The Base64 decoder can use non-ASCII bytes as indexes into a global lookup table because plain char signedness differs by platform. On Arm/AArch64, unsigned char behavior can weaken the intended guard, enabling out-of-bounds access. CVSS 3.1 is 7.4 with network attack vector, high complexity, no privileges, and high confidentiality and availability impact.
Likely exposure
Systems running FreeRDP versions earlier than 3.20.1, including downstream Linux packages and products embedding FreeRDP libraries. Arm/AArch64 builds deserve particular attention based on the reported root cause.
Exploitation context
The source bundle does not cite active exploitation, and KEV is false. The CVSS vector says exploitation is network-reachable, requires high complexity, needs no privileges, and does not require user interaction.
Researcher notes
Evidence supports an implementation-defined signedness bug causing out-of-bounds access in crypto_base64_decode. The bundle lists CWE-125, CWE-758, and CWE-787, but does not provide proof of remote code execution. Avoid assuming exploitability beyond the CVSS impacts and vendor advisory language.
Mitigation direction
Upgrade FreeRDP to 3.20.1 or later where upstream packages are used.
Apply relevant Red Hat errata for affected supported Red Hat products.
Prioritize Arm and AArch64 deployments during remediation planning.
Check downstream vendor guidance for embedded or repackaged FreeRDP components.
Restrict exposure of remote desktop tooling to trusted networks where practical.
Validation and detection
Inventory FreeRDP versions across endpoints, servers, containers, and appliances.
Identify applications linking against FreeRDP libraries, not only standalone clients.
Confirm whether builds target Arm, AArch64, or other affected architectures.
Verify installed package versions against vendor errata and FreeRDP 3.20.1.
Review vulnerability scanner results for CVE-2026-22858 and reconcile false negatives.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-125: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.