CVE-2025-31477

Improper Scope Validation in the open Endpoint of tauri-plugin-shell

Published Apr 2, 2025 CVSS 4.0 · 9.3 Critical EPSS 1.0% KEV · Not listed
Description
The Tauri shell plugin allows access to the system shell. Prior to 2.2.1, the Tauri shell plugin exposes functionality to execute code and open programs on the system. The open endpoint of this plugin is designed to allow open functionality with the system opener (e.g. xdg-open on Linux). This was meant to be restricted to a reasonable number of protocols like https or mailto by default. This default restriction was not functional due to improper validation of the allowed protocols, allowing for potentially dangerous protocols like file://, smb://, or nfs:// and others to be opened by the system registered protocol handler. By passing untrusted user input to the open endpoint these potentially dangerous protocols can be abused to gain remote code execution on the system. This either requires direct exposure of the endpoint to application users or code execution in the frontend of a Tauri application. This vulnerability is fixed in 2.2.1.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
EUVD EUVD EUVD-2025-9626 Improper Scope Validation in the `open` Endpoint of `tauri-plugin-shell`
Github GHSA Github GHSA GHSA-c9pr-q8gx-3mgp Improper Scope Validation in the `open` Endpoint of `tauri-plugin-shell`
History
Type Values Removed Values Added
First Time appeared Tauri
Tauri plugin-shell
Weaknesses NVD-CWE-noinfo
CPEs cpe:2.3:a:tauri:plugin-shell:*:*:*:*:*:node.js:*:*
cpe:2.3:a:tauri:plugin-shell:*:*:*:*:*:rust:*:*
Vendors & Products Tauri
Tauri plugin-shell
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description The Tauri shell plugin allows access to the system shell. Prior to 2.2.1, the Tauri shell plugin exposes functionality to execute code and open programs on the system. The open endpoint of this plugin is designed to allow open functionality with the system opener (e.g. xdg-open on Linux). This was meant to be restricted to a reasonable number of protocols like https or mailto by default. This default restriction was not functional due to improper validation of the allowed protocols, allowing for potentially dangerous protocols like file://, smb://, or nfs:// and others to be opened by the system registered protocol handler. By passing untrusted user input to the open endpoint these potentially dangerous protocols can be abused to gain remote code execution on the system. This either requires direct exposure of the endpoint to application users or code execution in the frontend of a Tauri application. This vulnerability is fixed in 2.2.1.
Title Improper Scope Validation in the open Endpoint of tauri-plugin-shell
Weaknesses CWE-20
References
Metrics cvssV4_0

{'score': 9.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Apr 3, 2025, 1:59 PM
Reserved
Mar 28, 2025, 1:36 PM
Status
Analyzed
Published
Apr 2, 2025, 10:15 PM
Modified
Jun 17, 2026, 9:10 AM