Chore: Update vitest to v1.6.1 [SECURITY] #197
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.1.0->1.6.1GitHub Vulnerability Alerts
CVE-2025-24964
Summary
Arbitrary remote Code Execution when accessing a malicious website while Vitest API server is listening by Cross-site WebSocket hijacking (CSWSH) attacks.
Details
When
apioption is enabled (Vitest UI enables it), Vitest starts a WebSocket server. This WebSocket server did not check Origin header and did not have any authorization mechanism and was vulnerable to CSWSH attacks.https://github.com/vitest-dev/vitest/blob/9a581e1c43e5c02b11e2a8026a55ce6a8cb35114/packages/vitest/src/api/setup.ts#L32-L46
This WebSocket server has
saveTestFileAPI that can edit a test file andrerunAPI that can rerun the tests. An attacker can execute arbitrary code by injecting a code in a test file by thesaveTestFileAPI and then running that file by calling thererunAPI.https://github.com/vitest-dev/vitest/blob/9a581e1c43e5c02b11e2a8026a55ce6a8cb35114/packages/vitest/src/api/setup.ts#L66-L76
PoC
calcexecutable inPATHenv var (you'll likely have it if you are running on Windows), that application will be executed.Impact
This vulnerability can result in remote code execution for users that are using Vitest serve API.
Release Notes
vitest-dev/vitest (vitest)
v1.6.1Compare Source
This release includes security patches for:
🐞 Bug Fixes
View changes on GitHub
v1.6.0Compare Source
🚀 Features
includeConsoleOutputandaddFileAttributein junit - by @hi-ogawa in #5659 (2f913)🐞 Bug Fixes
resolveId('vitest')afterbuildStart- by @hi-ogawa in #5646 (f5faf)toJSONfor error serialization - by @hi-ogawa in #5526 (19a21)*.test-d.*by default - by @MindfulPol in #5634 (bfe8a)vite-node's wrapper only to executed files - by @AriPerkkio in #5642 (c9883)🏎 Performance
View changes on GitHub
v1.5.3Compare Source
🐞 Bug Fixes
View changes on GitHub
v1.5.2Compare Source
🐞 Bug Fixes
View changes on GitHub
v1.5.1Compare Source
🚀 Features
startVitest()to acceptstdoutandstdin- by @AriPerkkio in #5493 (780b1)startVitestAPI is experimental and doesn't follow semver.🐞 Bug Fixes
import.meta.env.PROD: false- by @hi-ogawa in #5561 (9c649)onTestFinishedin reverse order - by @sheremet-va in #5598 (23f29)fileParallelismby default on browser pool - by @hi-ogawa in #5528 (5c69f)v8-to-istanbul- by @AriPerkkio in #5549 (df6a4)cleanOnRerunis disabled - by @AriPerkkio in #5540 (ea3c1)thresholdsto compare files relative to root - by @AriPerkkio in #5574 (80265)toEqualandtoMatchObjectwith circular references - by @hi-ogawa in #5535 (9e641)View changes on GitHub
v1.5.0Compare Source
🚀 Features
🐞 Bug Fixes
describecalls not taking generic type parameters - by @aryaemami59 in #5415 (16bac)processis mocked - by @AriPerkkio in #5430 (0ec4d)toHaveBeenNthCalledWitherror message when not called - by @hi-ogawa in #5420 (e5253)isValidNodeImportto check"type": "module"first - by @hi-ogawa in #5416 (6fb15)View changes on GitHub
v1.4.0Compare Source
🚀 Features
not- by @fenghan34 in #5294 (b9d37)--projectoption - by @fenghan34 in #5295 (201bd)shuffle.filesandshuffle.testsoptions - by @fenghan34 in #5281 (356db)cache.diroption - by @fenghan34 in #5229 (d7e8b)--changedoption - by @AriPerkkio in #5314 (600b4)clearScreencli flag - by @hi-ogawa in #5241 (e1735)🐞 Bug Fixes
--projectoption - by @fenghan34 in #5265 (d1a06)--inspect-brkto pause before execution - by @AriPerkkio in #5355 (e77c5)magic-stringtooptimizeDeps.include- by @hi-ogawa in #5278 (8f04e)reportsDirectoryfrom removing user's project - by @AriPerkkio in #5376 (07ec3)toContain/toMatchassertion error - by @hi-ogawa in #5267 (8ee59)definesto supportundefinedvalues - by @AriPerkkio in #5284 (5b58b)onConsoleLogreturn type - by @hi-ogawa in #5337 (6d1b1)beforeAllandafterAll- by @fenghan34 in #5288 (ce5ca)@vitest/coverage-v8are used - by @AriPerkkio in #5250 (29f98)View changes on GitHub
v1.3.1Compare Source
🚀 Features
🐞 Bug Fixes
View changes on GitHub
v1.3.0Compare Source
🚀 Features
snapshotSerializersoption - by @fenghan34 in #5092 (5b102)🐞 Bug Fixes
poolOptions- by @penalosa in #5221 (bc5b2)coverage.reportsDirectorywith multiple directories - by @AriPerkkio in #5056 (ae73f)--browser=<name>correctly - by @AriPerkkio in #5179 (656e2).tmpdirectory conflicts with--shardoption - by @AriPerkkio in #5184 (5749d)defineWorkspace- by @hi-ogawa in #5089 (0bf52)jsdomvariable - by @sheremet-va in #5164 (0f898)optimizeDeps.disabledwarnings on Vite 5.1 - by @hi-ogawa in #5215 (1aecd)disableConsoleInterceptconfig - by @hi-ogawa in #5074 (a55ad)View changes on GitHub
v1.2.2Compare Source
🐞 Bug Fixes
coverage/.tmpfiles after run - by @AriPerkkio in #5008 (d53b8)toThrow(asymmetricMatcher)failure message - by @hi-ogawa in #5000 (a199a)VITEST_POOL_ID- by @AriPerkkio in #5002 (7d0a4)ignoreSourceErrorsin run mode - by @hi-ogawa in #5044 (6dae3)useFakeTimersto fakerequestIdleCallbackon non browser - by @hi-ogawa in #5028 (a9a48)import.meta.resolve- by @AriPerkkio in #5045 (cf564)View changes on GitHub
v1.2.1Compare Source
🐞 Bug Fixes
thresholds.autoUpdateto work with arrow function configuration files - by @AriPerkkio in #4959 (4b411)AsymmetricMatcher- by @hi-ogawa and @sheremet-va in #4942 (06bae)await vi.hoisted- by @hi-ogawa in #4962 (dcf2e)View changes on GitHub
v1.2.0Compare Source
🚀 Features
--disable-console-interceptoption to allow opting-out from automatic console log interception - by @hi-ogawa in #4786 (43fa6)🐞 Bug Fixes
server.headers- by @hi-ogawa in #4890 (55f53)testNamePatternconfig - by @hi-ogawa in #4909 (4add9)objDisplaydefault truncate option fortest.eachtitle - by @hi-ogawa in #4917 (9ae9d)process.exitis called inside the test - by @sheremet-va in #4903 (8e6c1)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.