{"cve":"CVE-2024-23331","nvd":{"published":"2024-01-19T20:15:14.070","modified":"2026-06-17T07:12:36.707","status":"Modified","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 vite@5.0.12, vite@4.5.2, vite@3.2.8, and vite@2.9.17. Users are advised to upgrade. Users unable to upgrade should restrict access to dev servers.","cvss_v4":null,"cvss_v3":{"version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","score":7.5},"cwes":["CWE-178","CWE-200","CWE-284"],"references":["https://github.com/vitejs/vite/commit/91641c4da0a011d4c5352e88fc68389d4e1289a5","https://github.com/vitejs/vite/security/advisories/GHSA-c24v-8rfc-w8vw","https://vitejs.dev/config/server-options.html#server-fs-deny","https://github.com/vitejs/vite/commit/91641c4da0a011d4c5352e88fc68389d4e1289a5","https://github.com/vitejs/vite/security/advisories/GHSA-c24v-8rfc-w8vw"],"products":["vitejs:vite"],"source":"nvd","synced_at":"2026-10-19T21:44:57.175229480+00:00"},"epss":{"cve":"CVE-2024-23331","score":0.00785,"percentile":0.56084,"date":"2026-10-31"},"kev":null,"osv":[{"id":"GHSA-c24v-8rfc-w8vw","url":"https://osv.dev/vulnerability/GHSA-c24v-8rfc-w8vw","summary":"Vite dev server option `server.fs.deny` can be bypassed when hosted on case-insensitive filesystem","modified":"2026-09-10T03:49:24.667053987Z","packages":[{"ecosystem":"npm","name":"vite","purl":"pkg:npm/vite","ranges":[">=2.7.0 <2.9.17"],"fixed":["2.9.17"]},{"ecosystem":"npm","name":"vite","purl":"pkg:npm/vite","ranges":[">=3.0.0 <3.2.8"],"fixed":["3.2.8"]},{"ecosystem":"npm","name":"vite","purl":"pkg:npm/vite","ranges":[">=4.0.0 <4.5.2"],"fixed":["4.5.2"]},{"ecosystem":"npm","name":"vite","purl":"pkg:npm/vite","ranges":[">=5.0.0 <5.0.12"],"fixed":["5.0.12"]}]}],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}