Stored cross-site scripting in Ghost via unsanitized SVG uploads
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Code execution, Cross-site scripting
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-434 and CWE-79.
Summary
Ghost, a Node.js content management system, is affected from 4.22.0 before 6.65.0. SVG media thumbnails and SVG images uploaded with a non-SVG file extension are stored without sanitization, which allows cross-site scripting (CWE-79). Any staff user, including Contributors, can host scripts on the site's domain, which may compromise other staff users' admin sessions.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
Ghost is a Node.js content management system. From 4.22.0 until 6.65.0, SVG media thumbnails and SVG images uploaded with a non-SVG file extension were stored without sanitization. This allowed any staff user, including Contributors, to host scripts on the site's domain, possibly resulting in compromise of other staff users' admin sessions. This issue is fixed in version 6.65.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| TryGhost | Ghost | 4.22.0 to before 6.65.0 | 6.65.0 | Patch available | CNA |
| — | ghost (npm) | 4.22.0 to before 6.65.0 | 6.65.0 | Patch available | GHSA-8575-cr6v-7jh4 |
- Ghost VendorTryGhost Affected 4.22.0 to before 6.65.0 Fixed in 6.65.0 Patch available CNA
- ghost (npm) Vendor— Affected 4.22.0 to before 6.65.0 Fixed in 6.65.0 Patch available GHSA-8575-cr6v-7jh4
Remediation
Upgrade the ghost npm package to version 6.65.0, which fixes this issue.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
- Fix · CNA Ghost (TryGhost) Fixed in 6.65.0
- Fix · GHSA-8575-cr6v-7jh4 ghost (npm) Fixed in 6.65.0 Advisory →
Timeline
- 2026-10-05 Threatist record created from CVE-2026-105649
- 2026-10-06 CISA SSVC decision points changed
- 2026-10-06 Priority changed: MEDIUM → LOW
- 2026-10-07 Alias added: GHSA-8575-cr6v-7jh4
- 2026-10-07 Fix available: npm/[email protected] · GHSA-8575-cr6v-7jh4
- 2026-10-07 CVSS score added · GHSA-8575-cr6v-7jh4
- 2026-10-07 Weakness changed · GHSA-8575-cr6v-7jh4
- 2026-10-07 6 new references · GHSA-8575-cr6v-7jh4
References
More TryGhost vulnerabilities
- TI-2026-21459 Ghost has a SQL Injection in its Content API CVSS 3.1CRITICAL 9.4
- TI-2022-10277 An arbitrary file upload vulnerability in the file upload module of Ghost v4.39.0 allows… CVSS 3.1CRITICAL 9.8
- TI-2024-22785 Ghost through 5.85.1 allows remote attackers to bypass an authentication rate-limit… CVSS 3.1CRITICAL 9.1
- TI-2023-14843 Ghost vulnerable to disclosure of private API fields CVSS 3.1HIGH 7.5
- TI-2025-09049 Ghost 6.0.6 - SSRF via oEmbed Bookmark CVSS 4.0MEDIUM 6.1
- TI-2023-20918 Arbitrary file read via symlinks in Ghost CVSS 3.1MEDIUM 6.5
Sources
- CVE-2026-105649 · CVE Program
- CVE-2026-105649 · NVD
- FIRST EPSS
- GHSA-8575-cr6v-7jh4 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences