GitHub Advisoryadvisory · npm

GHSA-hcj7-6gxh-24ww Parse Server vulnerable to stored cross-site scripting (XSS) via SVG file upload

HIGH Published 2026-03-11 Modified 2026-03-11 Official page ↗
Aliases
CVE-2026-30948
Ecosystem
npm
Packages
parse-server
Severity
High
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:N/VA:N/SC:H/SI:H/SA:N
Weaknesses
CWE-79
Reviewed
2026-03-11

Affected packages

• npm parse-server: >= 9.0.0, < 9.5.2-alpha.4 → fixed in 9.5.2-alpha.4 • npm parse-server: < 8.6.17 → fixed in 8.6.17

Description

Impact A stored cross-site scripting (XSS) vulnerability allows any authenticated user to upload an SVG file containing JavaScript. The file is served inline with `Content-Type: image/svg+xml` and without protective headers, causing the browser to execute embedded scripts in the Parse Server origin. This can be exploited to steal session tokens from `localStorage` and achieve account takeover. The default `fileExtensions` option blocks HTML file extensions but does not block SVG, which is a well-known XSS vector. All Parse Server deployments where file upload is enabled for authenticated users (the default) are affected. Patches The fix adds `svg` (case-insensitive) to the default file extension denylist. The default regex changes from `^(?![xXsS]?[hH][tT][mM][lL]?$)` to `^(?!([xXsS]?[hH][tT][mM][lL]?|[sS][vV][gG])$)`. Workarounds Configure the `fileExtensions` option to explicitly block SVG uploads: ```js { fileUpload: { fileExtensions: ['^(?!([xXsS]?[hH][tT][mM][lL]?|[sS][vV][gG])$)'] } } ``` References • GitHub security advisory: https://github.com/parse-community/parse-server/security/advisories/GHSA-hcj7-6gxh-24ww • Fix Parse Server 9: https://github.com/parse-community/parse-server/releases/tag/9.5.2-alpha.4 • Fix Parse Server 8: https://github.com/parse-community/parse-server/releases/tag/8.6.17

Related

Alias · CVE (1)

  • CVE-2026-30948 Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. vulnerability

Weakness · CWE (1)

  • CWE-79 Improper Neutralization of Input During Web Page Generation weakness

References