Skip to main content

FreeRDP EUVDEUVD-2026-97689

| CVE-2026-109245 HIGH
Improper Certificate Validation (CWE-295)
2026-10-12 VulnCheck GHSA-p9p8-552v-g7hc
7.4
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain on-path network position
  2. Delivery
    Intercept TLS to login.microsoftonline.com
  3. Exploit
    Present forged unverified server certificate
  4. Execution
    Substitute OpenID discovery document
  5. Impact
    Capture OAuth authorization codes

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V12 - Secure Communication Certificate validation
Exploitation Conditions

Exploitation requires that the victim use FreeRDP's Azure AD authentication path (e.g., connecting to Azure Virtual Desktop/AAD-brokered RDP), which invokes the vulnerable freerdp_http_request() in libfreerdp/utils/http.c; plain RDP connections that do not use this HTTP/AAD flow are not affected. The attacker must hold an on-path (man-in-the-middle) network position between the client and login.microsoftonline.com (AT:P), and the victim must actively perform the login (UI:A). Only FreeRDP versions 3.0.0 through 3.31.x are affected; 3.32.0 and later verify the certificate chain. These limiting factors - privileged network positioning plus required user interaction - substantially narrow realistic exploitation despite the network attack vector.

Impact

This is a genuine but conditional man-in-the-middle risk rather than a broadly wormable flaw. The vendor-supplied CVSS 4.0 vector (CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:N) scores 7.4 and is internally consistent with the description: AV:N reflects a network attack, PR:N means no authentication is needed by the attacker, but AT:P (attack requirement 'present') correctly captures that the attacker must achieve an on-path/MITM network position, and UI:A reflects that a victim must actively perform the Azure AD login flow for the attack to fire. High confidentiality and integrity impact (VC:H/VI:H) are justified because captured OAuth authorization codes expose credentials/tokens and substitution of the OpenID discovery document tampers with the trust flow; availability is correctly N. No EPSS score, CISA KEV listing, or POC indicator was provided in the input, so there is no public exploit identified at time of analysis and no evidence of active or widespread exploitation. The combination of a required privileged network position plus required user interaction meaningfully constrains real-world exploitation - this is a targeted-opportunity flaw (e.g., hostile Wi-Fi, compromised gateway, or rogue network), not a mass-exploitable internet-facing bug. Treat as a real patch priority for environments using FreeRDP's Azure AD authentication path, but it is not a drop-everything emergency absent exploitation signals. Note: no EPSS/KEV/POC data was supplied, so exploitation-likelihood signals are absent rather than low.

Exploit ScenarioDerived

A victim on a hostile or attacker-controlled network (e.g., public Wi-Fi or a compromised upstream device) initiates an Azure AD / Azure Virtual Desktop login through a vulnerable FreeRDP client. Because freerdp_http_request() completes the TLS handshake without verifying the server certificate chain, the on-path attacker transparently impersonates login.microsoftonline.com, serves a substituted OpenID discovery document, and harvests the OAuth authorization code to gain access to the victim's session. No public exploit code is identified in the provided data at time of analysis.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 12, 2026

FreeRDP 3.0.0 through 3.31.x allows an on-path attacker to capture OAuth authorization codes and substitute the OpenID discovery document during Azure AD authentication because freerdp_http_request() completes TLS handshakes without validating the server certificate chain. Exploitation requires the victim to use the Azure AD/AAD-brokered RDP path (plain RDP is unaffected) and to actively perform the login while the attacker holds a man-in-the-middle network position, making this a conditional risk rather than a broadly exploitable flaw. No public exploit code has been identified at time of analysis, and the issue is patched in FreeRDP 3.32.0.

RemediationAI

Upgrade to FreeRDP 3.32.0 or later, which adds server certificate chain verification in freerdp_http_request(); the vendor-released patch is 3.32.0. If immediate upgrade is not possible, disable or avoid the Azure AD/AAD-brokered RDP authentication feature (e.g., by not using the /aad or equivalent options) and rely on plain RDP with Network Level Authentication (NLA) and certificate pinning, though this may reduce functionality for Azure Virtual Desktop users. Another compensating control is to ensure FreeRDP clients only connect over trusted networks or VPNs to prevent an on-path attacker from intercepting traffic to login.microsoftonline.com, but this does not fix the underlying flaw. Refer to the advisory at https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-h44v-39x6-9xvg for details.

Affected VersionsENISA

FreeRDP 3.0.0 <3.32.0

Affected Packages

euvd freerdp fix: 3.32.0

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 implementation of the Remote Desktop Protocol (RDP). The vulnerable function freerdp_http_request() in libfreerdp/utils/http.c is used for HTTP-based authentication flows, notably Azure AD (AAD) brokered RDP, where the client contacts login.microsoftonline.com for OAuth2/OpenID Connect discovery and token acquisition. CWE-295 (Improper Certificate Validation) means the TLS client does not verify the server certificate chain, enabling an on-path attacker to impersonate the legitimate Microsoft endpoint. The CPE cpe:2.3:a:freerdp:freerdp identifies the affected product; versions 3.0.0 through 3.31.x are vulnerable because they lack certificate chain verification, while 3.32.0 introduces the fix. Our independent assessment (CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N) confirms that the attack requires a privileged network position (AT:P) and user interaction (UI:A), and only affects the Azure AD authentication path, not plain RDP connections.

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

Vendor (VulnCheck) PRIMARY 7.4 HIGH
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 6.8 MEDIUM

AC:H because the attacker must achieve an on-path MITM position; UI:R because the victim must perform the Azure AD login; PR:N as the attacker needs no credentials; C:H/I:H for captured OAuth codes and substituted discovery document.

3.1 AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Red Hat 6.8 MEDIUM

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
Active
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 12, 2026 - 18:03 EUVD
CVE Published
Oct 12, 2026 - 16:04 cve.org
HIGH 7.4

DescriptionCVE.org

FreeRDP 3.0.0 before 3.32.0 contains an improper certificate validation vulnerability in freerdp_http_request() in libfreerdp/utils/http.c that completes TLS handshakes without verifying the server certificate chain. On-path attackers can impersonate login.microsoftonline.com in the Azure AD authentication flow to capture OAuth authorization codes and substitute the OpenID discovery document.

Executive ViewAI

Why It Matters

FreeRDP versions 3.0.0 through 3.31.x - a widely deployed open-source RDP client used on corporate desktops, VDI images and administrator workstations - can leak Azure AD credentials because its HTTP layer completes TLS handshakes without validating the server certificate chain, allowing an on-path attacker to intercept OAuth authorization codes and substitute the OpenID discovery document. Risk is conditional rather than broad: only sessions using the Azure AD/AAD-brokered RDP authentication path are affected, and the attacker must already hold a man-in-the-middle network position at the moment a user signs in. Leadership should care because a captured authorization code represents a live corporate identity, enabling account takeover and downstream access to mail, files and cloud applications; no public exploit code has been identified at time of analysis.

Business Impact: High
Compensating Controls

Vendor-released patch: FreeRDP 3.32.0 (per technical description; the patch-availability field in the source feed still reports no vendor-released patch identified at time of analysis, so treat the upgrade as pending until artefacts are published). Until 3.32.0 is deployed: disable or block the Azure AD/AAD-brokered RDP authentication path and fall back to plain RDP with NLA or a vetted alternative client; restrict RDP traffic to trusted, segmented network segments with no untrusted on-path devices; enforce outbound TLS inspection and certificate validation on the authentication path; monitor Azure AD sign-in, authorization code redemption and token issuance logs for anomalies; and rotate credentials and revoke refresh tokens for any identity suspected of compromise.

Threat Intelligence Overview

EPSS Score
0.2%
Top 92% exploitable
Prevalence
Medium
popular open-source RDP client library, but Azure AD auth path is a subset
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

37
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +37
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2026-25997 CRITICAL POC
9.8 Feb 25

Use-after-free in FreeRDP xf_clipboard_format_equal before 3.23.0. Clipboard format comparison uses freed memory. Fifth

CVE-2026-25953 CRITICAL POC
9.8 Feb 25

Use-after-free in FreeRDP xf_AppUpdateWindowFromSurface before 3.23.0. Surface-to-window update triggers memory corrupti

CVE-2026-25952 CRITICAL POC
9.8 Feb 25

Use-after-free in FreeRDP xf_SetWindowMinMaxInfo before version 3.23.0. X11 client window management triggers memory cor

CVE-2026-25959 CRITICAL POC
9.8 Feb 25

Use-after-free in FreeRDP xf_cliprdr_provide_data clipboard handling before 3.23.0. Clipboard data exchange triggers mem

CVE-2026-22857 CRITICAL POC
9.8 Jan 14

FreeRDP IRP thread handler has a use-after-free where the IRP is freed by Complete() then accessed on the error path. Fi

CVE-2026-22854 CRITICAL POC
9.8 Jan 14

FreeRDP drive read heap overflow when server-controlled read length exceeds IRP output buffer. Fixed in 3.20.1. PoC avai

CVE-2026-22852 CRITICAL POC
9.8 Jan 14

FreeRDP client before 3.20.1 has a heap buffer overflow in AUDIN format processing. A malicious RDP server can corrupt m

CVE-2026-25955 CRITICAL POC
9.8 Feb 25

Use-after-free in FreeRDP xf_AppUpdateWindowFromSurface before 3.23.0. Different code path from CVE-2026-25953. PoC and

CVE-2024-32041 CRITICAL POC
9.8 Apr 22

FreeRDP is a free implementation of the Remote Desktop Protocol. Rated critical severity (CVSS 9.8), this vulnerability

CVE-2023-40574 CRITICAL POC
9.8 Aug 31

FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Rated critical

CVE-2023-40569 CRITICAL POC
9.8 Aug 31

FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Rated critical

CVE-2023-40567 CRITICAL POC
9.8 Aug 31

FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Rated critical

Vendor StatusVendor

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy