Skip to main content

XDG Desktop Portal CVE-2026-55889

| EUVDEUVD-2026-108751 HIGH
Use of Insufficiently Random Values (CWE-330)
2026-10-23 GitHub_M
8.3
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Run malicious sandboxed application
  2. Delivery
    Generate many FileTransfer tokens
  3. Exploit
    Recover GRand Mersenne Twister state
  4. Execution
    Predict victim's transfer key
  5. Persist
    Redirect drag-and-drop/clipboard data
  6. Impact
    Exfiltrate stolen files

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Cryptographic random values
Exploitation Conditions

Requires a malicious or compromised sandboxed application (e.g. a hostile Flatpak) already running on the victim's desktop that can invoke the FileTransfer.RetrieveFiles portal method. The attacker must generate enough tokens to recover the state of GLib's GRand (Mersenne Twister) PRNG seeded via g_random_int / g_uuid_string_random, then predict the next token that normally authorizes an out-of-band resource transfer; a victim drag-and-drop or copy-paste operation must occur for data to be redirected. Limiting factors: the attacker needs an execution foothold inside the sandbox on the host (not purely remote network access despite the AV:N vector), token-state recovery adds complexity (AC:H), and only versions <=1.22.0 are affected. Mitigation per the vendor is updating to 1.22.1; no other known mitigation exists.

Impact

This is a legitimate, prioritizable weakness but not an emergency. The vendor CVSS 4.0 score is 8.3 (High) with VC:H reflecting theft of potentially sensitive clipboard and drag-and-drop content. The decision label is 'this_week', consistent with a serious-but-not-critical issue. Key signals are missing or in tension: no EPSS probability is provided, there is no CISA KEV listing (not actively exploited), and no public exploit code is referenced - only the vendor advisory and release tag. The most important caveat is an attack-vector tension: the vendor vector is AV:N, but the mechanism described is a malicious sandboxed application already running on the victim's desktop that abuses the FileTransfer D-Bus interface, which is effectively local presence on the host - verify the AV:N choice with the vendor, as it reads more like local/adjacent access. AC:H is consistent with the real work required (generating enough tokens to recover the GRand PRNG state), which raises the practical bar. Overall: a real, patch-worthy data-confidentiality flaw whose exploitation presupposes attacker code already running in a sandbox on the machine, so widespread opportunistic exploitation is unlikely.

Exploit ScenarioDerived

A user installs a malicious or compromised Flatpak application that runs inside the normal xdg-desktop-portal sandbox. The app repeatedly requests FileTransfer tokens to recover the internal state of GLib's Mersenne Twister PRNG, then predicts the token another application will use, and calls FileTransfer.RetrieveFiles to redirect a legitimate drag-and-drop or copy-paste transfer to itself, stealing the files. No public exploit code is referenced in the available data; the attack requires some complexity (AC:H) to recover the PRNG state.

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

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

Alert me

AnalysisAIv1 – Oct 23, 2026

Predictable FileTransfer tokens in XDG Desktop Portal let a malicious sandboxed application redirect drag-and-drop and copy-paste data intended for other applications to itself. Through version 1.22.0, tokens used by the FileTransfer.RetrieveFiles portal method were generated with g_random_int or g_uuid_string_random, both backed by GLib's GRand Mersenne Twister PRNG, so collecting enough tokens lets an attacker recover the generator state and predict the next token that would normally authorize an out-of-band resource transfer. The assessed vector is local with high attack complexity and low privileges (CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:N): the attacker needs a hostile or compromised sandboxed app already running on the desktop, plus a victim drag-and-drop or copy-paste for data to be redirected. The vendor released a patch in 1.22.1; no public exploit code and no confirmed active exploitation were identified at time of analysis, and the issue is prioritized as this_week rather than an emergency.

RemediationAI

Upgrade xdg-desktop-portal to 1.22.1 or later; that release is the vendor-released patch and resolves the predictable-token weakness, alongside the separate FileChooser.SaveFiles arbitrary-write (GHSA-cm83-2936-gxjm) and Document Portal App ID parsing fixes, so a single update covers all three. Distribution and desktop-vendor packages should pull the 1.22.1 rebase once available. The upstream advisory states there is no known mitigation other than updating, so there is no vendor-sanctioned configuration workaround or feature toggle to fall back on; operators who cannot immediately rebase must treat the residual exposure as accepted risk and rely on reducing the population of untrusted sandboxed applications installed on affected desktops, since the flaw requires a malicious or compromised sandboxed app running locally. Details and the fix are documented at https://github.com/flatpak/xdg-desktop-portal/security/advisories/GHSA-c5cf-79w8-pvfh and https://github.com/flatpak/xdg-desktop-portal/releases/tag/1.22.1.

Affected VersionsENISA

xdg-desktop-portal < 1.22.1

Affected Packages

euvd xdg_desktop_portal fix: 1.22.1

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

XDG Desktop Portal is the D-Bus integration layer that gives sandboxed applications (most commonly Flatpak apps) controlled access to host desktop services such as file choosers, screenshots, and clipboard/drag-and-drop data. Some portal methods hand out opaque tokens that grant access to a resource, with the expectation that the token is passed out of band to the legitimate recipient rather than to another sandboxed peer. In the FileTransfer interface, the RetrieveFiles method consumes such a token; if a malicious sandboxed app can predict the token issued for another application's transfer, it can claim that transfer and pull the drag-and-drop or copy-paste payload to itself. The root cause is CWE-330 (use of insufficiently random values): instead of a cryptographically secure source, the tokens were produced by g_random_int or g_uuid_string_random, both of which draw from GLib's GRand, a Mersenne Twister-based PRNG whose output stream is deterministic and reproducible. Observing enough generated tokens allows reconstruction of the internal PRNG state and prediction of subsequent output. The hardened 1.22.1 release also ships two unrelated fixes, an arbitrary-write issue via the 'files' option in FileChooser.SaveFiles (GHSA-cm83-2936-gxjm) and App ID validation in the Document Portal (#2023), which should not be conflated with this token-prediction flaw.

Know when Xdg Desktop Portal 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 (GitHub_M) PRIMARY 8.3 HIGH
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.3 MEDIUM

A locally-running malicious sandboxed app is required (AV:L, PR:L) and must recover the PRNG state by generating many tokens (AC:H); it steals transferred data (C:H) with limited integrity and no availability impact.

3.1 AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:N
4.0 AV:L/AC:H/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

2
Patch available
Oct 23, 2026 - 13:17 EUVD
CVE Published
Oct 23, 2026 - 12:35 cve.org
HIGH 8.3

DescriptionCVE.org

XDG Desktop Portal is a desktop integration portal. Prior to version 1.22.1, malicious sandboxed applications can use the FileTransfer.RetrieveFiles method to redirect drag-and-drop and copy-paste data targeted at other applications to itself. Some portals generate tokens which provide access to resources. The sharing of the token transfers access to the resource and is supposed to happen out of band. The tokens were generated with g_random_int or g_uuid_string_random, both of which use GLib's GRand based on the Mersenne Twister PRNG which created a stream of reproducible random numbers. By generating enough tokens, the state of the GRand can be recover and with it, the next tokens can be predictedinsufin. This issue has been patched in version 1.22.1.

Technical POC Analysis

CWE-330: Use of Insufficiently Random Values (the GHSA itself lists no CWE; the 330 classification comes from the CVE record).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

CVE-2026-55889 affects XDG Desktop Portal (through 1.22.0), a core component used by sandboxed applications on Linux desktops to handle file transfers during drag-and-drop and copy-paste. A malicious sandboxed app can predict authorization tokens and redirect sensitive data that users intend for other applications, potentially leading to unauthorized access to files or clipboard contents. Leadership should prioritize patching because this undermines the desktop's security boundary between sandboxed apps and user data, affecting any organization where Linux desktops handle sensitive information.

Business Impact: Medium
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.4%
Top 71% exploitable
Prevalence
High
core desktop-integration portal on most Linux Flatpak/GNOME/KDE desktop systems
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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.4%
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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Medium
Technical Impact
Partial

Priority Score

42
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +42
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.

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