CVE-2026-53943
Ghost is a Node.js content management system. From until 6.37.0, when Ghost is behind a shared caching layer that results in cached content being shared between different visitors, an unauthenticated user could send an x-ghost-preview header that altered the rendered frontend response. In affected cache configurations, that response could be stored and served to subsequent visitors requesting the same page, allowing cache poisoning of request-specific preview output. When running Ghost's frontend and admin panel on the same domain this could be used to take over staff user accounts. When running these on different domains staff accounts have no exposure. This vulnerability is fixed in 6.37.0.
Scoring
- Severity
- CRITICAL
- CVSS base score
- 9.6
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
- EPSS probability
- 0.45%
- CWE
- CWE-524
- Published
- 2026-06-24
- Last modified
- 2026-06-24
Affected products
- TryGhost Ghost
Weakness type
Related vulnerabilities
- CVE-2026-82755 — ash_authentication_oauth2_server serves tenant-specific OAuth metadata as publicly cacheable without Vary, enabling cross-tenant confusion
- CVE-2026-84933 — undici vulnerable to cross-user cookie disclosure via Set-Cookie caching in shared caches
- CVE-2026-15743 — Catalyst::Plugin::Static::Simple versions through 0.38 for Perl mark responses as publicly cacheable
- CVE-2026-54625 — django CMS: Page cache ignores plugin-declared Vary headers (disclosure & poisoning)
- CVE-2026-59903 — Netty: Cache Poisoning and Information Disclosure via CORS Vary Header Overwrite
- CVE-2026-71316 — Nuxt runtime payload cache discloses another user's SSR data across users and to unauthenticated clients
- CVE-2026-25703 — Potential information leakage from manager /network/graph API in NeuVector
- CVE-2026-14643 — undici vulnerable to cross-user information disclosure via whitespace around equals in Cache-Control directives