GitHub Advisoryadvisory · npm

GHSA-gfjp-2p8f-94qv Ghost: Stored XSS via File Uploads on Local Storage

HIGH Published 2026-10-07 Modified 2026-10-07 Official page ↗
Aliases
CVE-2026-105679
Ecosystem
npm
Packages
ghost
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N
Weaknesses
CWE-434, CWE-79
Reviewed
2026-10-07

Affected packages

• npm ghost: >= 6.22.1, < 6.64.0 → fixed in 6.64.0

Description

Impact Ghost restricts the content type that uploaded files are served with, to prevent browsers from executing them. On sites using the default local storage adapter, this restriction was not applied, so files uploaded by any staff user were served with a content type derived from their file extension. This could be used to host scripts on the site's domain, possibly resulting in compromise of other staff users' admin sessions. Vulnerable versions This vulnerability is present in Ghost from v6.22.1 up to v6.64.0. Patches v6.64.0 contains a fix for this issue. How to update For self-hosters using Docker, find Docker's official Ghost image here. Updating a Docker-based Ghost instance is documented here. If your Ghost is a Ghost-CLI install see our documentation on updating it to the latest version here. References Ghost thanks evertrustai, Thai Son Dinh of VinSOC Labs, Enis Atılgan, Doan Manh Duc, Harshit Gupta (Mr HAX), 白墨, and Mukul of Parameter for disclosing this vulnerability responsibly. For more information If you have any questions or comments about this advisory, email us at [email protected].

Related

Alias · CVE (1)

  • CVE-2026-105679 Ghost is a Node.js content management system. vulnerability

Weakness · CWE (2)

  • CWE-434 Unrestricted Upload of File with Dangerous Type weakness
  • CWE-79 Improper Neutralization of Input During Web Page Generation weakness

References