Ghost: Stored XSS via File Uploads on Local Storage
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 security@ghost.org.
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| npm package | ghost | >= 6.22.1, < 6.64.0 | 6.64.0 |
References
- https://github.com/TryGhost/Ghost/security/advisories/GHSA-gfjp-2p8f-94qv
- https://nvd.nist.gov/vuln/detail/CVE-2026-105679
- https://github.com/TryGhost/Ghost/pull/30762
- https://github.com/TryGhost/Ghost/commit/58669d5c8b898f8b69c1287c2779b29ecc7eb918
- https://github.com/TryGhost/Ghost
- https://github.com/TryGhost/Ghost/releases/tag/v6.64.0
- CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N- Weakness (CWE)
CWE-434, CWE-79- Platform
- npm
- Package
ghost- Disclosed
- 07.10.2026
- Updated
- 13.10.2026 11:17
Sources and licenses
OSV / GitHub Advisory Database - GHSA-gfjp-2p8f-94qv - CC BY 4.0
Vulnerability history: ghost
All published vulnerabilities of this package (npm package), newest first. Shows whether this is a one-off slip or a package that needs watching.
- Total entries
- 61
- First → latest
- 04.2021 10.2026
- Without a fix
- 3
- Exploited in attacks
- 0
Severity breakdown
- Critical 4
- High 16
- Medium 38
- Low 3
Disclosures per year
- 2021: 5
- 2022: 4
- 2023: 3
- 2024: 3
- 2025: 1
- 2026: 45
-
Ghost: Stored XSS via File Uploads on Local Storage this entry
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.