Skip to main content
← All vulnerabilities
CVE-2026-112950GHSA-XP26-3454-MJGP

Vitest: Windows backslash traversal bypasses the @vitest/mocker redirect allowlist fix

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 4.1.12, 5.0.3
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: no
  • Technical impact: partial

Summary

Vitest is a Vite-native testing framework for JavaScript and TypeScript projects. From 4.1.11 until 4.1.12 and 5.0.3, isFileLoadingAllowed and the filesystem read interpret backslashes differently on Windows in packages/mocker/src/node/interceptorPlugin.ts. When a client can reach the Vite dev server on Windows and register a redirect mock containing backslash traversal, POSIX joining preserves a Windows backslash traversal that the later filesystem read interprets as a path separator, so the client can read a file outside server.fs.allow that the Vitest process can access. This issue is fixed in versions 4.1.12 and 5.0.3.

Timeline

  1. CVE published
  2. First seen by cve.now
  3. CISA SSVC assessment

    Exploitation: poc · Automatable: no · Technical impact: partial

  4. Record last updated

Affected versions

  • vitest-dev vitest

    From 4.1.11 · fixed in 4.1.12; From 5.0.0-rc.2 · fixed in 5.0.3

  • @vitest mocker

    From 4.1.11 · fixed in 4.1.12; From 5.0.0-rc.2 · fixed in 5.0.3

  • @vitest/mockernpm

    From 4.1.11 · fixed in 4.1.12

  • @vitest/mockernpm

    From 5.0.0-rc.2 · fixed in 5.0.3

References 5

GitHub · vitest-dev/vitest