CVE-2026-31868
Received Received - Intake
Stored XSS in Parse Server via Unsafe File Uploads

Publication date: 2026-03-11

Last updated on: 2026-03-13

Assigner: GitHub, Inc.

Description
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to 9.6.0-alpha.4 and 8.6.30, an attacker can upload a file with a file extension or content type that is not blocked by the default configuration of the Parse Server fileUpload.fileExtensions option. The file can contain malicious code, for example JavaScript in an SVG or XHTML file. When the file is accessed via its URL, the browser renders the file and executes the malicious code in the context of the Parse Server domain. This is a stored Cross-Site Scripting (XSS) vulnerability that can be exploited to steal session tokens, redirect users, or perform actions on behalf of other users. Affected file extensions and content types include .svgz, .xht, .xml, .xsl, .xslt, and content types application/xhtml+xml and application/xslt+xml for extensionless uploads. Uploading of .html, .htm, .shtml, .xhtml, and .svg files was already blocked. This vulnerability is fixed in 9.6.0-alpha.4 and 8.6.30.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-03-11
Last Modified
2026-03-13
Generated
2026-05-06
AI Q&A
2026-03-11
EPSS Evaluated
2026-05-05
NVD
EUVD
Affected Vendors & Products
Showing 5 associated CPEs
Vendor Product Version / Range
parseplatform parse-server 9.6.0
parseplatform parse-server 9.6.0
parseplatform parse-server 9.6.0
parseplatform parse-server From 9.0.0 (inc) to 9.6.0 (exc)
parseplatform parse-server to 8.6.30 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

CVE-2026-31868 is a stored Cross-Site Scripting (XSS) vulnerability in the Parse Server npm package. It occurs because certain HTML-renderable file types such as .svgz, .xht, .xml, .xsl, .xslt, and files with content types application/xhtml+xml and application/xslt+xml are not blocked by default in the file upload configuration. An attacker can upload a file containing malicious JavaScript code within these file types. When a user accesses the file via its URL, the browser renders the file and executes the malicious script in the context of the Parse Server domain.

This allows the attacker to perform actions such as stealing session tokens, redirecting users, or executing actions on behalf of other users. The vulnerability was fixed by adding the missing file extensions and content types to the default blocklist in Parse Server versions 9.6.0-alpha.4 and 8.6.30.


How can this vulnerability impact me? :

This vulnerability can impact you by allowing attackers to execute malicious scripts in the context of your Parse Server domain. This can lead to theft of session tokens, which may enable attackers to hijack user sessions.

Attackers can also redirect users to malicious sites or perform unauthorized actions on behalf of other users, potentially compromising user accounts and data integrity.

Although the CVSS base score is moderate (6.3), the confidentiality and integrity impacts can be high due to these potential exploits.


How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:

I don't know


How can this vulnerability be detected on my network or system? Can you suggest some commands?

[{'type': 'paragraph', 'content': 'This vulnerability involves the upload of files with certain extensions or content types that are not blocked by default, which can contain malicious scripts executed when accessed via their URLs.'}, {'type': 'paragraph', 'content': 'To detect this vulnerability on your system, you should monitor uploaded files for the presence of the affected file extensions such as .svgz, .xht, .xml, .xsl, .xslt, or files with content types application/xhtml+xml and application/xslt+xml, especially if they are uploaded without extensions.'}, {'type': 'paragraph', 'content': 'You can use commands to list or search for such files in your upload directories. For example, on a Unix-like system, you might run commands like:'}, {'type': 'list_item', 'content': 'find /path/to/uploads -type f \\( -name "*.svgz" -o -name "*.xht" -o -name "*.xml" -o -name "*.xsl" -o -name "*.xslt" \\)'}, {'type': 'list_item', 'content': "grep -rl --include=*.{svgz,xht,xml,xsl,xslt} '<script' /path/to/uploads"}, {'type': 'paragraph', 'content': 'Additionally, review server logs or application logs for unusual file upload activity or access to URLs serving these file types.'}] [1]


What immediate steps should I take to mitigate this vulnerability?

Immediate mitigation steps include updating your Parse Server to version 9.6.0-alpha.4 or 8.6.30 or later, where this vulnerability is fixed.

If updating is not immediately possible, you can manually configure the fileUpload.fileExtensions option to block the affected file extensions and content types such as .svgz, .xht, .xml, .xsl, .xslt, and the content types application/xhtml+xml and application/xslt+xml.

Additionally, restrict file uploads to only allow safe file types and implement server-side validation and sanitization of uploaded files.

Monitor and audit uploaded files regularly to detect and remove any potentially malicious files.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart