Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain local account on multi-user Unix host
-
DeliveryMonitor world-readable shared temp directory
-
ExploitVictim performs soft-smartcard PKINIT logon
-
ExecutionFreeRDP writes key with weak permissions
-
ImpactRead exposed PKINIT private key
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V13 - Configuration Permission assignment review
|
| Exploitation Conditions | Exploitation requires ALL of: (1) a multi-user Unix/Linux host where the attacker already holds a local, unprivileged account (PR:L); (2) the FreeRDP soft-smartcard / PKINIT logon flow being used, which triggers crypto_write_pem to write the private-key copy into a shared temporary directory; and (3) a victim actually performing such a logon during the attacker's monitoring window (the AT:P/UI:P attack requirement). The exposure is the world-readable permission on the written PEM file. LIMITING FACTORS: it is not remotely exploitable, it yields no write/integrity or availability impact, and it is inert on single-user hosts or deployments that do not use soft-smartcard PKINIT logon - substantially narrowing real-world applicability despite FreeRDP's broad install base. |
| Impact | This is a genuinely low-to-moderate priority local information-disclosure flaw, and the multiple signals agree rather than conflict. The vendor CVSS 4.0 vector (AV:L/AC:L/AT:P/PR:L/UI:P, score 4.1) and the facts in the description are mutually consistent: exploitation is strictly local (AV:L), requires an already-authenticated local account on the host (PR:L), and depends on a condition outside the attacker's control - a legitimate user performing a soft-smartcard PKINIT logon that writes the private-key copy (captured as AT:P/UI:P). Impact is confidentiality-only (VC:H, VI:N/VA:N): disclosure of a PKINIT private key, which is serious if obtained but confined to read access. There is no CISA KEV listing and no public exploit referenced, so this is 'no public exploit identified at time of analysis' - not active exploitation. No EPSS score was provided in the input, so probability-of-exploitation cannot be quantified here. The practical risk is bounded to multi-user Unix hosts running affected FreeRDP (3.0.0 to <3.32.0) with soft-smartcard logon - a specific deployment pattern - so this warrants routine patching rather than emergency response, with higher urgency on shared/multi-tenant Unix systems. |
| Exploit ScenarioDerived | On a shared multi-user Linux host, a low-privileged local user monitors the world-readable shared temporary directory while another user initiates a FreeRDP soft-smartcard (PKINIT) logon. FreeRDP's crypto_write_pem writes the PKINIT private-key copy without owner-only permissions, so the attacker reads the private key from the temp file and can impersonate the victim's smartcard-based authentication. No public proof-of-concept is referenced in the available data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 12, 2026
Local information disclosure in FreeRDP 3.0.0 through 3.31.x allows an unprivileged local attacker on a multi-user Unix host to read PKINIT private-key material that the client writes to a shared temporary directory with world-readable permissions during soft-smartcard logon. Exploitation requires the attacker to already hold a local account, the victim to perform a soft-smartcard PKINIT logon during the attacker's monitoring window, and the deployment to actually use soft-smartcard authentication; single-user hosts and installations not using this flow are unaffected. No public exploit identified at time of analysis, and the flaw is not known to be actively exploited; it yields only confidentiality impact, with no integrity or availability effects.
RemediationAI
Upgrade to FreeRDP 3.32.0 or later; the vendor advisory GHSA-q9p9-j22r-577p and the VulnCheck advisory identify 3.32.0 as the fixed release. If an immediate upgrade is not possible, avoid using the soft-smartcard PKINIT logon flow on multi-user Unix hosts, and restrict local shell access to trusted users since exploitation requires an existing local account. As a compensating control, isolate the client's temporary directory by running FreeRDP with a private per-user TMPDIR (e.g., a directory with 0700 permissions) or by using a systemd PrivateTmp=yes wrapper; be aware that these may break other applications expecting shared /tmp and could interfere with the soft-smartcard flow if it depends on the default temp path. Monitoring shared temporary directories for PKINIT key material can provide detection but is not a fix. No public exploit code was identified at time of analysis, so the upgrade remains the definitive remediation.
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
The flaw is an incorrect permission assignment (CWE-732) in FreeRDP's crypto_write_pem routine, which writes a PEM-encoded private key during the soft-smartcard PKINIT logon flow without setting owner-only permissions. The CPE string cpe:2.3:a:freerdp:freerdp:*:*:*:*:*:*:*:* identifies FreeRDP as the affected product, with the description narrowing the vulnerable range to versions 3.0.0 before 3.32.0. Soft-smartcard support emulates a smartcard in software for Kerberos PKINIT authentication, and on multi-user Unix hosts the key copy lands in a shared temporary directory readable by other local users. The independent assessment rates this AV:L/AC:H/PR:L/UI:R/S:U/C:H/I:N/A:N (CVSS 3.1), confirming that only confidentiality is impacted and that an attacker must already possess a local unprivileged account plus wait for a victim logon. The world-readable permission on the written file is the entire exposure; there is no remote vector, no privilege escalation, and no code-execution or denial-of-service component.
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:L/AC:L/AT:P/PR:L/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Local account needed (PR:L, AV:L); success depends on racing a victim's logon writing the key (AC:H, UI:R); confidentiality-only key disclosure (C:H, I/A:N).
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
FreeRDP from 3.0.0 before 3.32.0 contains an incorrect permission assignment vulnerability that allows local users to read private keys written by crypto_write_pem without owner-only permissions. Attackers on multi-user Unix hosts can enumerate the shared temporary directory during soft-smartcard logon to read the world-readable PKINIT private-key copy.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
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-97687
GHSA-p86r-cw4x-6prq
NVD
CVE.org
EPSS
Exploit-DB