Skip to main content

Tauri Dialog Plugin CVE-2026-95627

| EUVDEUVD-2026-85181 HIGH
Incorrect Permission Assignment for Critical Resource (CWE-732)
2026-09-23 JFROG GHSA-j8fp-v6pf-qx45
7.7
CVSS 3.1 · Vendor: JFROG
View

Attack ChainAIDerived

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

  1. Access
    Achieve JavaScript execution via XSS in webview
  2. Delivery
    Invoke dialog plugin file/folder picker
  3. Exploit
    Force recursive scope expansion
  4. Execution
    Victim clicks normal-looking OS dialog
  5. Persist
    Gain persistent read/write over directory tree
  6. Impact
    Exfiltrate and tamper with files

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V13 - Configuration Permission assignment review
Exploitation Conditions

Requires all of: (1) the target is a Tauri desktop application that uses the dialog plugin's file or folder picker; (2) the attacker already has JavaScript execution (an XSS foothold) inside the app's webview - this vulnerability does not create the XSS, it abuses it; (3) the victim performs a single click on what appears to be a normal OS file/folder dialog (UI:R). The limiting factors are significant: exploitation is impossible without a separate XSS/injection vector (reflected in AC:H), and it depends on user interaction with the dialog. The payoff, however, is severe and stealthy - recursive read/write over an entire directory tree is granted with no user-visible indication and cannot be revoked for the application's lifetime.

Impact

This is a genuine, well-scoped privilege/permission flaw (CWE-732) rather than a CVSS-inflated non-issue, but its real-world urgency is throttled by a hard precondition. The vendor CVSS 7.7 vector (AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N) correctly captures that exploitation is NOT trivial: AC:H and UI:R reflect that the attacker must already possess JavaScript execution (an XSS foothold) inside the Tauri webview AND the victim must click a legitimate-looking OS file/folder dialog. The high-value part is the outcome - S:C (webview compromise escapes into the host filesystem), C:H/I:H (recursive read AND write over an entire directory tree), and the fact that the expanded scope is silent and unrevocable for the app's lifetime. No EPSS score, KEV listing, or public POC is present in the input, so there is no evidence of active exploitation or automation; SSVC-style, exploitation is 'none observed' and it is not automatable (requires per-victim XSS + a user click). Note a metric tension to verify with the vendor: PR:L implies some privilege, but XSS/JS execution is not a legitimate privilege in the usual CVSS sense - PR:N with the difficulty carried entirely by AC:H/UI:R is arguably more accurate, which would raise, not lower, the base score. Net: a real priority for teams that ship Tauri apps using the dialog plugin, but the XSS prerequisite means it chains onto a separate injection bug rather than being independently exploitable.

Exploit ScenarioDerived

An attacker who has already achieved XSS in a Tauri app's webview (e.g., via a stored/reflected injection or a rendered remote payload) invokes the dialog plugin's file/folder picker and manipulates the request so the granted scope expands recursively. The victim sees an ordinary OS file-selection dialog and clicks once, unknowingly granting the app persistent read/write over the entire selected directory tree, which the attacker's JS then abuses to read secrets and tamper with files. No public exploit code was identified at time of analysis; success depends on a pre-existing XSS vector (AC:H) and a single user interaction (UI:R).

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 23, 2026

Recursive filesystem scope escalation in the Tauri dialog plugin (tauri-plugin-dialog) lets an attacker who already holds JavaScript execution inside a Tauri app's webview hijack a single, normal-looking OS file or folder picker dialog and silently widen the granted filesystem scope to the entire selected directory tree, producing persistent read/write access with no user-visible indication and no way to revoke it for the application's lifetime. The flaw affects any Tauri desktop application that uses the plugin's file or folder picker (CPE cpe:2.3:a:tauri:tauri-plugin-dialog, all versions) and is rated 7.7; it does not create the underlying injection, so exploitation requires the combination of an existing XSS/javascript-execution foothold and one user click on the dialog. Exploitation status: no public exploit identified at time of analysis, no CISA KEV listing, and no EPSS score supplied with the source data.

RemediationAI

The primary fix is to upgrade the tauri-plugin-dialog dependency to the patched release identified in the vendor advisory GHSA-vw89-89jm-wmqc (https://github.com/tauri-apps/plugins-workspace/security/advisories/GHSA-vw89-89jm-wmqc); the provided data does not enumerate a specific fixed version, so confirm the exact patched version from that advisory and rebuild and re-ship the desktop application, since end users must install the updated binary for the fix to take effect. Where immediate upgrade is not possible, break the attack chain rather than the plugin, because the flaw cannot trigger without an existing JavaScript-execution foothold: enable a strict Content-Security-Policy in the Tauri configuration, remove unsafe-inline and unsafe-eval allowances and unrestricted remote origins, sanitize any user- or remote-supplied content rendered in the webview, and strip unused plugins and capabilities from the app manifest - accepting the trade-off that a strict CSP breaks frontends that depend on inline or dynamically evaluated scripts. Narrowing what the plugin can grant also reduces blast radius: restrict the dialog plugin's permissions to specific non-recursive paths, remove broad filesystem read/write commands from the capability set, or replace the plugin picker with an in-house Rust-side selection flow that canonicalizes each chosen path and accepts only single files - at the cost of extra development effort and less flexible file access for the frontend. Because the widened scope persists for the life of the process and cannot be revoked, restart the application after any suspected exposure and monitor for unexpectedly broad filesystem reads and writes originating from Tauri apps; the vendor advisory remains the authoritative source for patch status and versions.

Affected VersionsENISA

tauri-plugin-dialog 2.0.0 ≤*

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Tauri is a Rust-based framework for desktop applications whose UI runs in the operating system's native webview; the JavaScript frontend communicates with the Rust core over an IPC bridge, and the core enforces a permission and scope model (capabilities) that determines which commands and filesystem paths the webview may touch. The dialog plugin sits on top of that model: when the user picks a file or folder through the OS-native picker, the plugin adds the chosen path to the application's filesystem scope so the frontend can subsequently read and write it. CVE-2026-95627 maps to CWE-732 (Incorrect Permission Assignment for Critical Resource) because the scope entry derived from that trusted user gesture can be coerced into a recursive form, so the granted path covers every file and subdirectory beneath it rather than the single item the user believed they selected. Because the scope lives in the running core process rather than being bound to the one dialog interaction, the widened grant survives for the process lifetime, is never surfaced in the picker UI, and cannot be withdrawn by the user. The assessed vector is CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N (scope change with high confidentiality and integrity impact); the high attack complexity reflects that the flaw is only reachable once a separate JavaScript-execution or XSS foothold already exists inside the webview - the plugin defect amplifies that foothold rather than serving as an entry point on its own - while PR:N reflects that no privileges beyond that webview context are required (the source data listed PR:L, which our assessment revises to PR:N).

Know when Tauri Plugin Dialog 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 (JFROG) PRIMARY 7.7 HIGH
AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N
vuln.today AI 8.0 HIGH

XSS foothold is not a legitimate privilege so PR:N with difficulty in AC:H; UI:R for the dialog click; S:C as webview escapes to host filesystem; C:H/I:H recursive R/W, A:N.

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

Primary rating from Vendor (JFROG).

CVSS VectorVendor: JFROG

Attack Vector
Network
Attack Complexity
High
Privileges Required
Low
User Interaction
Required
Scope
Changed
Confidentiality
High
Integrity
High
Availability
None

DescriptionCVE.org

When a Tauri application uses the dialog plugin's file or folder picker, an attacker with JavaScript execution (XSS) can force the scope expansion to be recursive, granting read/write access to an entire directory tree after a single user click on a normal-looking OS file dialog. The user has no indication that recursive access was granted, and the expanded scope cannot be revoked for the lifetime of the application.

Executive ViewAI

Why It Matters

The Tauri dialog plugin (tauri-plugin-dialog), used by any Tauri-based desktop application for file and folder pickers, contains a HIGH-severity flaw (CVE-2026-95627, CVSS 7.7) that allows a single, ordinary-looking picker confirmation to silently widen an application's filesystem permissions to an entire selected directory tree. The resulting read/write access is persistent, invisible to the user, and cannot be revoked for the lifetime of the application. Leadership should care because any Tauri desktop product in the organization's portfolio that relies on this plugin can suffer a durable, undetectable expansion of local data exposure following a webview compromise, with no vendor patch currently available.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis; interim mitigations include removing or disabling the tauri-plugin-dialog file and folder picker, substituting a custom picker that grants only explicit item-level paths, enforcing Tauri filesystem scope allowlists to prevent recursive directory-wide access, hardening the webview (strict CSP, input sanitization, no untrusted remote content) to block the required JavaScript-execution foothold, and monitoring affected applications for unexpected or persistent filesystem scope changes.

Threat Intelligence Overview

EPSS Score
0.3%
Top 73% exploitable
Prevalence
Medium
Popular Rust desktop-app framework, but only apps bundling the dialog plugin are affected
Data Quality
6 sources
Confidence: High

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.3%
Patch available No
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
High
Technical Impact
Total

Priority Score

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

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

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