-
Notifications
You must be signed in to change notification settings - Fork 0
chore(deps): update dependency @tauri-apps/plugin-shell to v2.2.1 [security] #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
🚨 gitStream Monthly Automation Limit Reached 🚨 Your organization has exceeded the number of pull requests allowed for automation with gitStream. To continue automating your PR workflows and unlock additional features, please contact LinearB. |
Reviewer's GuideUpgrades the Tauri shell plugin from v2.2.0 to v2.2.1 by updating the package.json entry and regenerating the lockfile, pulling in a security fix that properly enforces protocol validation for the open endpoint. File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
✅ Deploy Preview for dockerpod canceled.
|
Important Review skippedBot user detected. To trigger a single review, invoke the You can disable this status message by setting the 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Join our Discord community for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
This PR contains the following updates:
2.2.0
->2.2.1
GitHub Vulnerability Alerts
CVE-2025-31477
Impact
The Tauri
shell
plugin exposes functionality to execute code and open programs on the system. Theopen
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 likehttps
ormailto
by default.This default restriction was not functional due to improper validation of the allowed protocols, allowing for potentially dangerous protocols like
file://
,smb://
, ornfs://
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.You are not affected if you have explicitly configured a validation regex or manually set the
open
endpoint totrue
in the plugin configuration.Technically the scope was never a limitation for the rust side as it is not seen as an enforceable security boundary but we decided to mark the rust crate as affected since the plugin does not need to be a frontend dependency to be exposed.
Patches
The issue has been patched in the
2.2.1
version of the plugin.The plugin now differentiates between an unset scope and an explicit validation disable for the
open
endpoint.Workarounds
A way to prevent arbitrary protocols would be setting the shell plugin configuration value
open
totrue
.tauri.conf.json
The above will only allow
mailto
,http
andhttps
links to be opened.If the
open
endpoint should not be allowed at all there are two possible workarounds.tauri^
in the plugin configurationshell:default
and all instances ofshell:allow-open
from thecapabilities
Alternatively we recommend usage of the
opener
plugin, as the shell plugin deprecated theopen
endpoint previously.References
PoC
This is a windows specific proof of concept.
create-tauri-app
to make a new Tauri app.tauri add shell
to add the shell plugin.await window.__TAURI_INTERNALS__.invoke("plugin:shell|open", {path: "file:///c:/windows/system32/calc.exe"});
in the developer console.Release Notes
tauri-apps/plugins-workspace (@tauri-apps/plugin-shell)
v2.2.1
Compare Source
Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.