---
id: "GHSA-p6c5-mjgj-m4rm"
kind: "vulnerability"
aliases: ["GHSA-p6c5-mjgj-m4rm"]
title: "Duplicate Advisory: Parse Server vulnerable to stored XSS via malformed Content-Type bypassing file upload extension blocklist"
severity: "low"
cvss: null
epss: null
exploited: false
status: "withdrawn"
category: "package"
products: [{"name": "parse-server", "fixed": [], "affected": ">= 9.0.0, < 9.10.0-alpha.2", "ecosystem": "npm"}, {"name": "parse-server", "fixed": [], "affected": "<= 8.6.83", "ecosystem": "npm"}]
ecosystems: ["npm"]
tags: ["cwe-434", "file-uploads", "node", "package", "parse-server", "self-hosted"]
not_affected_if: ["gridfs-adapter", "managed-hosting"]
published_at: "2026-07-11T15:30:23+00:00"
first_seen_at: "2026-10-29T16:33:51+00:00"
updated_at: "2026-10-29T16:35:37+00:00"
sources: [{"source": "ghsa", "url": "https://github.com/advisories/GHSA-p6c5-mjgj-m4rm", "first_seen_at": "2026-10-29T16:33:51+00:00"}]
---

# Duplicate Advisory: Parse Server vulnerable to stored XSS via malformed Content-Type bypassing file upload extension blocklist

Parse Server stores a client-supplied Content-Type for uploads whose extension the mime package does not recognize, so a malformed type bypasses the fileUpload.fileExtensions blocklist. An attacker can upload an HTML file that the browser renders and runs in the application's origin when other users open its URL.

_Summary, check and fix written by a model from the sources; labelled as such._

## Affected

- npm:parse-server affected >= 9.0.0, < 9.10.0-alpha.2 fixed ?
- npm:parse-server affected <= 8.6.83 fixed ?

## How to check

- Check the installed version with `npm ls parse-server`.
- Check whether the storage adapter is S3, Google Cloud Storage or Azure Blob rather than the default GridFS adapter.
- Check whether `fileUpload.fileExtensions` is configured.

## Fix

- `parse-server` 9.x: move to `9.10.0-alpha.2` or later.
- `parse-server` 8.x: move to `8.6.84` or later.

## Timeline

- 2026-10-29T16:33:51+00:00 ghsa https://github.com/advisories/GHSA-p6c5-mjgj-m4rm

## From the sources

### Duplicate Advisory
This advisory has been withdrawn because it is a duplicate of GHSA-r899-h629-j84r. This link is maintained to preserve external references.

### Original Description
Parse Server is affected by a stored cross-site scripting (XSS) vulnerability in versions >= 9.0.0, < 9.10.0-alpha.2 and <= 8.6.83. When an uploaded file's extension is not recognized by the mime package, Parse Server preserves the client-supplied Content-Type. A malformed Content-Type that is not a valid type/subtype media type (e.g., 'image', 'image/', or 'image//svg+xml') bypasses the fileUpload.fileExtensions blocklist and is stored unchanged. On storage adapters that persist and serve the uploaded Content-Type (such as Amazon S3, Google Cloud Storage, or Azure Blob Storage), a browser cannot parse the malformed value and falls back to MIME-sniffing; a file whose body begins with HTML is rendered as HTML, executing embedded script in the application's origin against other users who open the file URL. The default GridFS storage adapter is not affected. Fixed in 9.10.0-alpha.2 and 8.6.84.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
