Skip to main content

Vitest EUVDEUVD-2026-69705

| CVE-2026-84373 MEDIUM
Path Traversal (CWE-22)
2026-09-01 GitHub_M GHSA-82fw-gwwq-j7x9
5.9
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
5.9 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
vuln.today AI
5.9 MEDIUM

AV:N because the exploited WebSocket is network-reachable when exposed; AC:H for the opaque URL scheme requirement; PR:N since the HMR socket is unauthenticated; C:H for arbitrary local file read; I:N/A:N as only disclosure occurs.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
SUSE
MEDIUM
qualitative
Red Hat
5.9 MEDIUM
qualitative

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

3
Patch available
Sep 01, 2026 - 23:18 EUVD
Source Code Evidence Fetched
Sep 01, 2026 - 22:21 vuln.today
Analysis Generated
Sep 01, 2026 - 22:21 vuln.today

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 3 npm packages depend on @vitest/mocker (2 direct, 1 indirect)
  • 1 npm packages depend on vitest (1 direct, 0 indirect)

Ecosystem-wide dependent count for version 2.1.0 and other introduced versions.

DescriptionCVE.org

Vitest is a testing framework powered by Vite. From 2.1.0 until 4.1.11 and 5.0.0-rc.2, the public mockerPlugin and standalone interceptorPlugin exports in packages/mocker/src/node/interceptorPlugin.ts register the vitest:interceptor:register handler on Vite's unauthenticated HMR WebSocket without validating redirect targets against the file-serving allowlist. The implementation processes event.redirect without enforcing server.fs.allow and server.fs.deny through isFileLoadingAllowed. A remote client that can reach an exposed development server can submit an opaque URL scheme preserving .. segments, causing join(server.config.root, redirectUrl.pathname) to resolve outside the project root. The plugin's load hook then returns readFile(mock.redirect, 'utf-8') as module source, disclosing local files readable by the dev-server process. Vitest browser mode uses a token-authenticated RPC and is not remotely unauthenticated by default, although the same boundary check was missing on that path. This issue is fixed in versions 4.1.11 and 5.0.0-rc.2.

AnalysisAI

Path traversal in Vitest's interceptorPlugin exposes local files on any development server with a network-accessible HMR WebSocket. The vitest:interceptor:register handler in packages/mocker/src/node/interceptorPlugin.ts accepts redirect mock registrations over Vite's unauthenticated HMR socket without calling isFileLoadingAllowed(), allowing a remote unauthenticated attacker who can reach the dev server to submit opaque-scheme URLs (e.g., traversal:../../../etc/passwd) whose .. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
technique details hidden
Delivery
technique details hidden
Exploit
technique details hidden
Execution
technique details hidden
Persist
technique details hidden
Impact
technique details hidden

Vulnerability AssessmentAI

Exploitation Exploitation requires the Vite HMR WebSocket port (default 5173) to be reachable from an untrusted network - by default Vite binds to localhost only, so this is not reachable remotely unless the developer starts the server with `--host 0.0.0.0`, `server.host: true`, exposes the port via Docker port mapping, or operates in a cloud development environment (e.g., GitHub Codespaces, Gitpod) where ports are forwarded. … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment The CVSS 5.9 (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N) is well-calibrated. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario Full exploit scenario with step-by-step reproduction available after sign-in.
Remediation Vendor-released patches are confirmed at Vitest 4.1.11 (https://github.com/vitest-dev/vitest/releases/tag/v4.1.11) and 5.0.0-rc.2 (https://github.com/vitest-dev/vitest/releases/tag/v5.0.0-rc.2), delivered via commits 51edf2b072902aec6d30c90ebaafd8f121c6f9d8, 8ff9b9a9efca7c6cfd5243569440de8d7a33aec4, and fe5a11d3ceac5ec10d6d7d21a46d4caca132c48f. … Detailed patch versions, workarounds, and compensating controls in full report.

Threat intelligence, references, and detailed analysis are available after sign-in.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Module for Package Hub 15 SP7 Affected
SUSE Linux Enterprise Server 16.0 Affected
SUSE Linux Enterprise Server for SAP applications 16.0 Affected
SUSE Manager Client Tools 15 Affected
SUSE Manager Client Tools for SLE 15 Affected

Share

EUVD-2026-69705 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy