CVE-2024-23331CWE-178CWE-200CWE-284

Vite dev server option `server.fs.deny` can be bypassed when hosted on case-insensitive filesystem

High · published January 19, 2024

CVSS v3.1
7.5
EPSS
1%
Percentile
55.3
In the wild
Unconfirmed
What it is

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.

The record
Technical detail
CVSS v3.1
7.5 · HIGH
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
CVSS v4.0
Not supplied
EPSS
0.00785 · 55.3th percentile
Weaknesses
CWE-178 · Improper Handling of Case Sensitivity; CWE-200 · Exposure of Sensitive Information to an Unauthorized Actor; CWE-284 · Improper Access Control
Published
2024-01-19T19:43Z
EPSS history
Timeline
  • 19 JAN 19:43Z
    Vite dev server option `server.fs.deny` can be bypassed when hosted on case-insensitive filesystem
    cvelistv5