Description
Vitest is a testing framework powered by Vite. Prior to versions 3.2.7, 4.1.10, and 5.0.0-beta.6, Browser Mode provider commands including upload, takeScreenshot, screenshotMatcher, stopChunkTrace, deleteTracing, and annotateTraces accept browser-supplied file paths without enforcing the allowWrite permission gate or confining paths to the project root. A client that can reach the Browser Mode API can read arbitrary local files, create or overwrite image and trace files, or delete files accessible to the Vitest process even when allowWrite is false. This issue is fixed in versions 3.2.7, 4.1.10, and 5.0.0-beta.6.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
vitest-dev vitest
< 3.2.7affected>= 4.0.0, < 4.1.10affected>= 5.0.0-beta.1, < 5.0.0-beta.6affected
References
- https://github.com/vitest-dev/vitest/security/advisories/GHSA-p63j-vcc4-9vmv ↗
- https://github.com/vitest-dev/vitest/pull/10674 ↗
- https://github.com/vitest-dev/vitest/pull/10679 ↗
- https://github.com/vitest-dev/vitest/pull/10680 ↗
- https://github.com/vitest-dev/vitest/commit/33f96a145ef09ca6a43b4e555eb273e64a87be23 ↗
- https://github.com/vitest-dev/vitest/commit/5c18dd267ff7f47f24cab2f615a16b37d90feb7f ↗
- https://github.com/vitest-dev/vitest/commit/b795e36b34969bec50b47a9f29d26f799a6a04fb ↗
- https://github.com/vitest-dev/vitest/releases/tag/v3.2.7 ↗
- https://github.com/vitest-dev/vitest/releases/tag/v4.1.10 ↗
- https://github.com/vitest-dev/vitest/releases/tag/v5.0.0-beta.6 ↗