{"schema_version":"1.9.0","id":"CVE-2024-31207","published":"2024-04-04T15:51:54.683Z","modified":"2026-08-12T03:51:15.375245410Z","aliases":["GHSA-8jhw-289h-jh2g"],"related":["openSUSE-SU-2025:14663-1"],"summary":"Vite's `server.fs.deny` did not deny requests for patterns with directories","details":"Vite (French word for \"quick\", pronounced /vit/, like \"veet\") is a frontend build tooling to improve the frontend development experience.`server.fs.deny` does not deny requests for patterns with directories. This vulnerability has been patched in version(s) 5.2.6, 5.1.7, 5.0.13, 4.5.3, 3.2.10 and 2.9.18.","affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/vitejs/vite","events":[{"introduced":"075128a8dd0a2680540179dad2277a797f793199"},{"introduced":"b8c625cec4db938032ad754c7095bd246a4698ee"},{"introduced":"566d4c7bb51cf56550a5374ee46e1e1cbea1cf1f"},{"introduced":"0c3125833033fec4356ab4e90e806e02e8644c40"},{"introduced":"3036bef6679281a0cb4ded09ff884f965a334864"},{"introduced":"e4572b8eae561fffdd720686e3ccd001cc5beaf0"},{"fixed":"011bbca350e447d1b499d242804ce62738c12bc0"},{"fixed":"5a056dd2fc80dbafed033062fe6aaf4717309f48"},{"fixed":"89c7c645f09d16a38f146ef4a1528f218e844d67"},{"fixed":"96a7f3a41ef2f9351c46f3ab12489bb4efa03cc9"},{"fixed":"ba5269cca81de3f5fbb0f49d58a1c55688043258"},{"fixed":"d2db33f7d4b96750b35370c70dd2c35ec3b9b649"}],"database_specific":{"extracted_events":[{"introduced":"2.7.0"},{"last_affected":"2.9.17"},{"introduced":"3.0.0"},{"last_affected":"3.2.8"},{"introduced":"4.0.0"},{"last_affected":"4.5.2"},{"introduced":"5.0.0"},{"last_affected":"5.0.12"},{"introduced":"5.1.0"},{"last_affected":"5.1.6"},{"introduced":"5.2.0"},{"last_affected":"5.2.5"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["v4.5.2","v5.0.12","v5.1.6","v5.2.5","v5.2.4","v5.2.3","v5.2.2","v5.2.1","create-vite@5.2.3","v5.2.0","plugin-legacy@5.3.2","v5.1.5","create-vite@5.2.1","plugin-legacy@5.3.1","v5.1.4","v5.1.3","v5.1.2","v5.1.1","create-vite@5.2.0","v5.1.0","v2.9.16","v3.2.7","v4.5.1","v5.0.11","v5.0.10","v5.0.9","create-vite@5.1.0","v5.0.8","v5.0.7","v5.0.6","v5.0.5","v4.4.11","v5.0.4","v5.0.3","plugin-legacy@5.2.0","v5.0.2","plugin-legacy@5.1.0","v5.0.1","create-vite@5.0.0","plugin-legacy@5.0.0","v5.0.0","v4.5.0","v4.4.10","v4.4.9","v4.4.8","v4.4.7","v4.4.6","create-vite@4.4.1","plugin-legacy@4.1.1","v4.4.5","v4.4.4","v4.4.3","v4.4.2","v4.4.1","create-vite@4.4.0","plugin-legacy@4.1.0","v4.4.0","v4.4.0-beta.4","v4.4.0-beta.3","v4.4.0-beta.2","plugin-legacy@4.0.5","v4.4.0-beta.1","v4.4.0-beta.0","create-vite@4.3.2","v4.3.9","create-vite@2.9.5","v3.2.6","v4.0.4","v4.1.4","plugin-legacy@4.0.4","v4.3.8","v4.3.7","v4.3.6","v4.3.5","v4.3.4","v4.3.3","create-vite@4.3.1","plugin-legacy@4.0.3","v4.3.2","v4.3.1","create-vite@4.3.0","v4.3.0","v4.3.0-beta.8","v3.2.5","v4.2.1","v4.3.0-beta.7","v4.3.0-beta.6","v4.3.0-beta.5","v4.3.0-beta.4","v4.3.0-beta.3","create-vite@4.3.0-beta.0","v4.3.0-beta.2","v4.3.0-beta.1","v4.3.0-beta.0","create-vite@4.2.0","plugin-legacy@4.0.2","v4.2.0","v4.2.0-beta.2","create-vite@4.2.0-beta.1","create-vite@4.2.0-beta.0","v4.2.0-beta.1","v4.2.0-beta.0","v4.1.3","v4.1.2","v4.1.1","plugin-legacy@4.0.1","create-vite@4.1.0","plugin-legacy@4.0.0","v4.1.0","v4.1.0-beta.2","create-vite@4.1.0-beta.0","v4.1.0-beta.1","v4.1.0-beta.0","v4.0.3","v4.0.2","v4.0.1","create-vite@4.0.0","plugin-legacy@3.0.1","plugin-legacy@3.0.0","v4.0.0","v3.2.4","create-vite@3.2.1","plugin-legacy@2.3.1","plugin-vue-jsx@2.1.1","v3.2.3","v3.2.2","v3.2.1","create-vite@3.2.0","plugin-legacy@2.3.0","plugin-react@2.2.0","plugin-vue-jsx@2.1.0","plugin-vue@3.2.0","v3.2.0","v3.2.0-beta.4","v3.2.0-beta.3","v3.2.0-beta.2","v3.2.0-beta.1","plugin-legacy@2.3.0-beta.0","plugin-react@2.2.0-beta.0","plugin-vue-jsx@2.1.0-beta.0","plugin-vue@3.2.0-beta.0","v3.2.0-beta.0","v3.1.3","plugin-legacy@2.2.0","v3.1.2","v3.1.1","create-vite@3.1.0","plugin-legacy@2.1.0","plugin-react@2.1.0","plugin-vue@3.1.0","v3.1.0","v3.1.0-beta.2","plugin-vue-jsx@2.0.1","plugin-legacy@2.1.0-beta.0","plugin-vue@3.1.0-beta.0","plugin-react@2.1.0-beta.0","v3.1.0-beta.1","v3.1.0-beta.0","v3.0.9","v3.0.8","create-vite@3.0.2","plugin-vue@3.0.3","v3.0.7","plugin-vue@2.3.4","v2.9.15","create-vite@3.0.1","plugin-legacy@2.0.1","plugin-react@2.0.1","plugin-vue@3.0.2","v3.0.6","v3.0.5","v3.0.4","v3.0.3","v2.9.14","v3.0.2","plugin-vue@3.0.1","v3.0.1","create-vite@3.0.0","plugin-legacy@2.0.0","plugin-react@2.0.0","plugin-vue-jsx@2.0.0","plugin-vue@3.0.0","v3.0.0","v2.9.13","v2.9.12","v2.9.11","v2.9.10","create-vite@2.9.4","plugin-vue@2.3.3","v2.9.9","plugin-vue@2.3.2","v2.9.8","create-vite@2.9.3","plugin-react@1.3.2","plugin-legacy@1.8.2","v2.9.7","v2.9.6","create-vite@2.9.2","v2.9.5","v2.9.4","v2.9.3","create-vite@2.9.1","plugin-legacy@1.8.1","plugin-react@1.3.1","plugin-vue-jsx@1.3.10","v2.9.2","v2.9.1","plugin-vue@2.3.1","create-vite@2.9.0","plugin-legacy@1.8.0","plugin-react@1.3.0","plugin-vue-jsx@1.3.9","plugin-vue@2.3.0","v2.9.0","v2.9.0-beta.11","v2.9.0-beta.10","v2.9.0-beta.9","v2.9.0-beta.8","v2.9.0-beta.7","plugin-vue@2.3.0-beta.0","v2.9.0-beta.6","v2.9.0-beta.5","v2.9.0-beta.4","v2.9.0-beta.3","v2.9.0-beta.2","v2.9.0-beta.1","v2.9.0-beta.0","v2.8.6","plugin-vue-jsx@1.3.8","plugin-vue@2.2.4","plugin-vue@2.2.3","v2.8.5","plugin-vue@2.2.2","plugin-vue@2.2.1","v2.8.4","v2.8.3","v2.8.2","plugin-vue-jsx@1.3.7","plugin-vue-jsx@1.3.6","v2.8.1","create-vite@2.8.0","plugin-legacy@1.7.0","plugin-react@1.2.0","plugin-vue-jsx@1.3.4","plugin-vue@2.2.0","v2.8.0","v2.8.0-beta.7","v2.8.0-beta.6","v2.8.0-beta.5","v2.8.0-beta.4","plugin-vue@2.1.0","v2.8.0-beta.3","v2.8.0-beta.2","v2.8.0-beta.1","v2.8.0-beta.0","plugin-react@1.1.4","v2.7.9","v2.7.8","v2.7.7","v2.7.6","v2.7.5","v2.7.4","plugin-vue-jsx@1.3.3","v2.7.3","plugin-vue@2.0.1","plugin-react@1.1.3","create-vite@2.7.2","plugin-react@1.1.2","v2.7.2","plugin-vue-jsx@1.3.2","create-vite@2.7.1","plugin-vue@2.0.0","v2.7.1","create-vite@2.7.0","plugin-legacy@1.6.4","plugin-react@1.1.1","plugin-vue-jsx@1.3.1","plugin-vue@1.10.2","v2.7.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-31207.json"}}],"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/31xxx/CVE-2024-31207.json"},{"type":"ADVISORY","url":"https://github.com/vitejs/vite/security/advisories/GHSA-8jhw-289h-jh2g"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-31207"},{"type":"FIX","url":"https://github.com/vitejs/vite/commit/011bbca350e447d1b499d242804ce62738c12bc0"},{"type":"FIX","url":"https://github.com/vitejs/vite/commit/5a056dd2fc80dbafed033062fe6aaf4717309f48"},{"type":"FIX","url":"https://github.com/vitejs/vite/commit/89c7c645f09d16a38f146ef4a1528f218e844d67"},{"type":"FIX","url":"https://github.com/vitejs/vite/commit/96a7f3a41ef2f9351c46f3ab12489bb4efa03cc9"},{"type":"FIX","url":"https://github.com/vitejs/vite/commit/ba5269cca81de3f5fbb0f49d58a1c55688043258"},{"type":"FIX","url":"https://github.com/vitejs/vite/commit/d2db33f7d4b96750b35370c70dd2c35ec3b9b649"}],"database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-200","CWE-284"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/31xxx/CVE-2024-31207.json"},"severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N"}]}