Skip to content

chore(deps): update dependency vite to v6.2.4 [security] #1992

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

Merged
merged 1 commit into from
Apr 3, 2025

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Mar 25, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
vite (source) 6.2.0 -> 6.2.4 age adoption passing confidence

GitHub Vulnerability Alerts

CVE-2025-30208

Summary

The contents of arbitrary files can be returned to the browser.

Impact

Only apps explicitly exposing the Vite dev server to the network (using --host or server.host config option) are affected.

Details

@fs denies access to files outside of Vite serving allow list. Adding ?raw?? or ?import&raw?? to the URL bypasses this limitation and returns the file content if it exists. This bypass exists because trailing separators such as ? are removed in several places, but are not accounted for in query string regexes.

PoC

$ npm create vite@latest
$ cd vite-project/
$ npm install
$ npm run dev

$ echo "top secret content" > /tmp/secret.txt

# expected behaviour
$ curl "http://localhost:5173/@​fs/tmp/secret.txt"

    <body>
      <h1>403 Restricted</h1>
      <p>The request url &quot;/tmp/secret.txt&quot; is outside of Vite serving allow list.

# security bypassed
$ curl "http://localhost:5173/@&#8203;fs/tmp/secret.txt?import&raw??"
export default "top secret content\n"
//# sourceMappingURL=data:application/json;base64,eyJ2...

CVE-2025-31125

Summary

The contents of arbitrary files can be returned to the browser.

Impact

Only apps explicitly exposing the Vite dev server to the network (using --host or server.host config option) are affected.

Details

  • base64 encoded content of non-allowed files is exposed using ?inline&import (originally reported as ?import&?inline=1.wasm?init)
  • content of non-allowed files is exposed using ?raw?import

/@&#8203;fs/ isn't needed to reproduce the issue for files inside the project root.

PoC

Original report (check details above for simplified cases):

The ?import&?inline=1.wasm?init ending allows attackers to read arbitrary files and returns the file content if it exists. Base64 decoding needs to be performed twice

$ npm create vite@latest
$ cd vite-project/
$ npm install
$ npm run dev

Example full URL http://localhost:5173/@&#8203;fs/C:/windows/win.ini?import&?inline=1.wasm?init


Release Notes

vitejs/vite (vite)

v6.2.4

Compare Source

Please refer to CHANGELOG.md for details.

v6.2.3

Compare Source

Please refer to CHANGELOG.md for details.

v6.2.2

Compare Source

v6.2.1

Compare Source


Configuration

📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the dependencies Pull requests that update a dependency file label Mar 25, 2025
@renovate renovate bot enabled auto-merge (squash) March 25, 2025 14:10
Copy link

cloudflare-workers-and-pages bot commented Mar 25, 2025

Deploying graph-tooling with  Cloudflare Pages  Cloudflare Pages

Latest commit: b9c2475
Status: ✅  Deploy successful!
Preview URL: https://f98d6fae.graph-tooling.pages.dev
Branch Preview URL: https://renovate-npm-vite-vulnerabil.graph-tooling.pages.dev

View logs

Copy link

changeset-bot bot commented Mar 25, 2025

⚠️ No Changeset found

Latest commit: b9c2475

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link
Contributor

github-actions bot commented Mar 25, 2025

🚀 Snapshot Release (alpha)

The latest changes of this PR are available as alpha on npm (based on the declared changesets):

Package Version Info
@graphprotocol/graph-cli 0.97.0-alpha-20250401125831-b9c24754d47b5212ab6afe71ef26551f8fdfc8f1 npm ↗︎ unpkg ↗︎

@renovate renovate bot force-pushed the renovate/npm-vite-vulnerability branch from 8b7179e to a656e7c Compare March 31, 2025 22:08
@renovate renovate bot changed the title chore(deps): update dependency vite to v6.2.3 [security] chore(deps): update dependency vite to v6.2.4 [security] Mar 31, 2025
@renovate renovate bot force-pushed the renovate/npm-vite-vulnerability branch from a656e7c to b9c2475 Compare April 1, 2025 12:58
@YaroShkvorets YaroShkvorets self-requested a review April 3, 2025 17:41
@renovate renovate bot merged commit 09b6be6 into main Apr 3, 2025
9 checks passed
@renovate renovate bot deleted the renovate/npm-vite-vulnerability branch April 3, 2025 17:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant