-
-
Notifications
You must be signed in to change notification settings - Fork 0
Update dependency vite@>=5.0.0 <=5.4.11 to v6 [SECURITY] #138
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
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:
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 (
|
Hey there and thank you for opening this pull request! 👋🏼 We require pull request titles to follow the Conventional Commits specification and it looks like your proposed title needs to be adjusted. Details:
|
@anolilab/multi-semantic-release
@anolilab/rc
@anolilab/semantic-release-pnpm
@anolilab/semantic-release-preset
@anolilab/semantic-release-clean-package-json
commit: |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #138 +/- ##
==========================================
- Coverage 65.13% 64.56% -0.58%
==========================================
Files 32 32
Lines 803 807 +4
Branches 114 136 +22
==========================================
- Hits 523 521 -2
- Misses 280 283 +3
- Partials 0 3 +3
🚀 New features to boost your workflow:
|
20caff9
to
38c4362
Compare
38c4362
to
ae5e825
Compare
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
ae5e825
to
318c3da
Compare
318c3da
to
a2faf57
Compare
a2faf57
to
6cec939
Compare
BREAKING CHANGE: updated dependencies to major versions
6cec939
to
1322c6f
Compare
This PR contains the following updates:
>=5.4.12
->>=6.1.5
](https://renovatebot.com/diffs/npm/vite@>=5.0.0 <=5.4.11/5.4.12/6.1.5)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
orserver.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
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
orserver.host
config option) are affected.Details
?inline&import
(originally reported as?import&?inline=1.wasm?init
)?raw?import
/@​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
Example full URL
http://localhost:5173/@​fs/C:/windows/win.ini?import&?inline=1.wasm?init
CVE-2025-31486
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
.svg
Requests ending with
.svg
are loaded at this line.https://github.com/vitejs/vite/blob/037f801075ec35bb6e52145d659f71a23813c48f/packages/vite/src/node/plugins/asset.ts#L285-L290
By adding
?.svg
with?.wasm?init
or withsec-fetch-dest: script
header, the restriction was able to bypass.This bypass is only possible if the file is smaller than
build.assetsInlineLimit
(default: 4kB) and when using Vite 6.0+.relative paths
The check was applied before the id normalization. This allowed requests to bypass with relative paths (e.g.
../../
).PoC
npm create vite@latest cd vite-project/ npm install npm run dev
send request to read
etc/passwd
curl 'http://127.0.0.1:5173/etc/passwd?.svg?.wasm?init'
curl 'http://127.0.0.1:5173/@​fs/x/x/x/vite-project/?/../../../../../etc/passwd?import&?raw'
CVE-2025-32395
Summary
The contents of arbitrary files can be returned to the browser if the dev server is running on Node or Bun.
Impact
Only apps with the following conditions are affected.
Details
HTTP 1.1 spec (RFC 9112) does not allow
#
inrequest-target
. Although an attacker can send such a request. For those requests with an invalidrequest-line
(it includesrequest-target
), the spec recommends to reject them with 400 or 301. The same can be said for HTTP 2 (ref1, ref2, ref3).On Node and Bun, those requests are not rejected internally and is passed to the user land. For those requests, the value of
http.IncomingMessage.url
contains#
. Vite assumedreq.url
won't contain#
when checkingserver.fs.deny
, allowing those kinds of requests to bypass the check.On Deno, those requests are not rejected internally and is passed to the user land as well. But for those requests, the value of
http.IncomingMessage.url
did not contain#
.PoC
send request to read
/etc/passwd
Release Notes
vitejs/vite (vite@>=5.0.0 <=5.4.11)
v6.1.5
Compare Source
Please refer to CHANGELOG.md for details.
v6.1.4
Compare Source
Please refer to CHANGELOG.md for details.
v6.1.3
Compare Source
Please refer to CHANGELOG.md for details.
v6.1.2
Compare Source
Please refer to CHANGELOG.md for details.
v6.1.1
Compare Source
.[cm]?[tj]sx?
static assets are JS mime (#19453) (e7ba55e), closes #19453*.ipv4
address in cert (#19416) (973283b), closes #19416v6.1.0
Compare Source
Features
port
in the logged error message after failed WS connection withEADDRINUSE
(#19212) (14027b0), closes #19212.jxl
(#18855) (57b397c), closes #18855builtins
environmentresolve
(#18584) (2c2d521), closes #18584defaultAllowedOrigins
for user-land config and 3rd party plugins (#19259) (dc8946b), closes #19259wasm
to the compressible assets regex (#19085) (ce84142), closes #19085Fixes
resolveLibCssFilename
(#19324) (f183bdf), closes #19324vite optimize
(#19347) (19ffad0), closes #19347server.preTransformRequests
(#19272) (12aaa58), closes #19272nodeLikeBuiltins
forssr.target: 'webworker'
withoutnoExternal: true
(#19313) (9fc31b6), closes #19313@plugin
imports of JS files treated as CSS and rebased (fix #19268) (#19269) (602b373), closes #19268 #19269resolve.builtin
is empty (#19312) (b7aba0b), closes #19312ssrLoadModule
(#19290) (353c467), closes #19290--force
work for all environments (#18901) (51a42c6), closes #18901RegExp
values withnew RegExp
instead ofstructuredClone
(fix #19245, fix #1 (56ad2be), closes #19245 #18875 #19247Chore
vite optimize
command (#19348) (6e0e3c0), closes #19348build.manifest
jsdocs (#19332) (4583781), closes #19332scanImports
not being used in ssr (#19285) (fbbc6da), closes #19285Beta Changelogs
6.1.0-beta.2 (2025-02-04)
See 6.1.0-beta.2 changelog
6.1.0-beta.1 (2025-02-04)
See 6.1.0-beta.1 changelog
6.1.0-beta.0 (2025-01-24)
See 6.1.0-beta.0 changelog
v6.0.15
Compare Source
Please refer to CHANGELOG.md for details.
v6.0.14
Compare Source
Please refer to CHANGELOG.md for details.
v6.0.13
Compare Source
Please refer to CHANGELOG.md for details.
v6.0.12
Compare Source
Please refer to CHANGELOG.md for details.
v6.0.11
Compare Source
preview.allowedHosts
with specific values was not respected (#19246) (aeb3ec8), closes #19246v6.0.10
Compare Source
server.origin
URL (#19241) (2495022), closes #19241v6.0.9
Compare Source
server.allowedHosts
(bd896fb)server.cors: false
to disallow fetching from untrusted origins (b09572a)v6.0.8
Compare Source
server.close()
only called once (#19204) (db81c2d), closes #19204defaultServerConditions
(#19174) (ad75c56), closes #19174ESBuildOptions.include / exclude
type to allowreadonly (string | RegExp)[]
(ea53e70), closes #19146v6.0.7
Compare Source
minify
whenbuilder.sharedPlugins: true
(#19025) (f7b1964), closes #19025vite-ignore
attribute for inline script (#19062) (a492253), closes #19062v6.0.6
Compare Source
fetchModule
-side resolve (#18361) (9f10261), closes #18361build.target
(#19047) (0e9e81f), closes #19047v6.0.5
Compare Source
v6.0.4
Compare Source
this.resolve
skipSelf should not skip for differentid
orimport
(#18903) (4727320), closes #18903pluginContainer.getModuleInfo
(#18895) (258cdd6), closes #18895url()
when lightningcss is used (#18997) (3734f80), closes #18997true
(#18899) (8a6bb4e), closes #18899handleInvoke
(#18902) (27f691b), closes #18902ModuleRunnerTransport
invoke
API (#18865) (e5f5301), closes #18865v6.0.3
Compare Source
ModuleRunnerTransport#invoke
more explicit (#18851) (a75fc31), closes #18851environments.ssr.resolve
with rootssr
config (#18857) (3104331), closes #18857v6.0.2
Compare Source
node_modules
if deno (#18823) (a20267b), closes #18823style.css
as a key for the style file forcssCodesplit: false
(#18820) (ec51115), closes #18820external
by default (#18821) (2250ffa), closes #18821ssr.target: 'webworker'
defaults as fallback (#18827) (b39e696), closes #18827v6.0.1
Compare Source
preview.allowedHosts
with specific values was not respected (#19246) (aeb3ec8), closes #19246v6.0.0
Compare Source
Today, we're taking another big step in Vite's story. The Vite team, contributors, and ecosystem partners are excited to announce the release of the next Vite major:
We want to thank the more than 1K contributors to Vite Core and the maintainers and contributors of Vite plugins, integrations, tools, and translations that have helped us craft this new major. We invite you to get involved and help us improve Vite for the whole ecosystem. Learn more at our Contributing Guide.
Breaking Changes
file://
resolution (#18422) (6a7e313), closes #18422Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, 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.