CVEvulnerability

CVE-2024-23331

7.5 HIGH Published 2024-01-19 Modified 2026-06-17 Official page ↗
Status
Modified
Published
2024-01-19
Last modified
2026-06-17
Assigner
[email protected]
CVSS 3.1 ([email protected])
7.5 HIGH — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
CVSS 3.1 ([email protected])
7.5 HIGH — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Weaknesses
CWE-178, CWE-200, CWE-284

Description

Vite is a frontend tooling framework for javascript. The Vite dev server option `server.fs.deny` can be bypassed on case-insensitive file systems using case-augmented versions of filenames. Notably this affects servers hosted on Windows. This bypass is similar to CVE-2023-34092 -- with surface area reduced to hosts having case-insensitive filesystems. Since `picomatch` defaults to case-sensitive glob matching, but the file server doesn't discriminate; a blacklist bypass is possible. By requesting raw filesystem paths using augmented casing, the matcher derived from `config.server.fs.deny` fails to block access to sensitive files. This issue has been addressed in [email protected], [email protected], [email protected], and [email protected]. Users are advised to upgrade. Users unable to upgrade should restrict access to dev servers.

Affected configurations

• vitejs vite (>= 2.7.0 < 2.9.17) • vitejs vite (>= 3.0.0 < 3.2.8) • vitejs vite (>= 4.0.0 < 4.5.2) • vitejs vite (>= 5.0.0 < 5.0.12)

Related

Weakness · CWE (3)

  • CWE-178 Improper Handling of Case Sensitivity weakness
  • CWE-200 Exposure of Sensitive Information to an Unauthorized Actor weakness
  • CWE-284 Improper Access Control weakness

References