Description
Vitest is a testing framework powered by Vite. From 3.0.0 until 3.2.5, 4.1.8, and 5.0.0-beta.4, Vitest Browser Mode exposed a cdp() API that forwarded raw Chrome DevTools Protocol methods without being gated by allowWrite or allowExec, allowing a remote client with exposed browser API metadata to use CDP Page.setDownloadBehavior and Runtime.evaluate to overwrite vite.config.ts and execute attacker-controlled Node.js code. This issue is fixed in versions 3.2.5, 4.1.8, and 5.0.0-beta.
References10
- github.com/vitest-dev/vitest/commit/385a1aefd4c2bfa5e7d58bf7c68…
- github.com/vitest-dev/vitest/commit/63e3b2eee4d58da56786a6333f5…
- github.com/vitest-dev/vitest/commit/e4067b3b150005fd42cf75f9943…
- github.com/vitest-dev/vitest/pull/10444
- github.com/vitest-dev/vitest/pull/10450
- github.com/vitest-dev/vitest/pull/10456
- github.com/vitest-dev/vitest/releases/tag/v3.2.5
- github.com/vitest-dev/vitest/releases/tag/v4.1.8
- github.com/vitest-dev/vitest/releases/tag/v5.0.0-beta.4
- github.com/vitest-dev/vitest/security/advisories/GHSA-g8mr-85jm…
Metrics
- CVSS 3.1
-
9.8
CRITICAL
Score source: CNA
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - EPSS — exploit probability
- 1% percentile: 60 · as of 15 November 2026
- CWE
- CWE-749CWE-862
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.