Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as Ghost staff user
-
DeliveryCreate or edit post with image card pointing to internal or metadata URL
-
ExploitSave post to trigger re-render pipeline
-
ExecutionGhost server issues unauthenticated HTTP request to target host
-
PersistCapture response from internal service or cloud metadata endpoint
-
ImpactExtract sensitive data (e.g., cloud credentials)
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a valid Ghost staff user account with post creation or editing permissions - unauthenticated exploitation is not possible. The flaw is triggered during post re-rendering when an image card URL is present and Ghost lacks cached dimension data for that URL, causing Ghost to fetch the URL. The attacker must control the image card URL value within the post content. Exploitation is limited to Ghost versions 6.19.4 through 6.21.1. The UI:R CVSS metric indicates a re-rendering event must be triggered, meaning the attacker cannot autonomously force the server request without some post save or render action. Access to the Ghost admin interface or API is required; the vulnerability does not affect unauthenticated readers of published content. |
| Impact | The vendor-assigned CVSS 3.1 score of 5.4 (Medium) reflects low complexity, authenticated access (PR:L), a scope change (S:C - Ghost's rendering pipeline affects external systems on the server's behalf), and low individual C/I impact. The UI:R metric warrants scrutiny: it suggests some triggering action is needed to initiate re-rendering, which limits opportunistic mass exploitation but does not materially hinder a motivated insider or compromised staff account. Despite the medium score, real-world risk is asymmetric for cloud-hosted Ghost instances: if IMDSv2 is not enforced with a hop-limit of 1, an attacker reaching the AWS or GCP metadata endpoint via SSRF may obtain instance credentials, escalating impact well beyond what the base CVSS score implies. KEV status is absent - no confirmed active exploitation. EPSS data was not included in available intelligence and cannot be quantified. No POC is referenced. The risk profile is therefore: medium baseline, high potential for cloud-deployed instances without metadata service hardening. |
| Exploit ScenarioDerived | An authenticated Ghost staff member inserts an image card into a post with the URL set to an internal target - for example, http://169.254.169.254/latest/meta-data/iam/security-credentials/ on an AWS-hosted instance - then saves or triggers re-rendering of the post. Ghost's rendering pipeline, finding no cached image dimensions, issues an outbound GET request to that URL, and the HTTP response (potentially containing cloud IAM credentials) is processed server-side. No public POC exists at time of analysis, but the SSRF technique against cloud metadata endpoints is well-documented and requires no specialized tooling beyond the ability to set an image card URL. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 24, 2026
Server-side request forgery in Ghost CMS versions 6.19.4 through 6.21.1 allows authenticated staff users to pivot the Ghost server into making arbitrary outbound HTTP requests, including to internal network hosts and cloud instance metadata endpoints. The vulnerable code path is Ghost's post re-rendering pipeline, which fetches image dimensions from URLs stored in image cards without validating those URLs against a trusted host allowlist. No public exploit has been identified at time of analysis, and a vendor-released patch is available in 6.21.1.
RemediationAI
The primary fix is upgrading Ghost to version 6.21.1 or later, which introduces trusted host restrictions on outbound HTTP requests issued during image dimension fetching. The vendor advisory is at https://github.com/TryGhost/Ghost/security/advisories/GHSA-g366-23fw-ggp6. If immediate patching is not possible, restrict which users hold staff-level post creation and editing permissions, reducing the pool of accounts that can inject malicious image card URLs. As a network-level compensating control, configure host-based or perimeter firewall rules to block egress from the Ghost process to RFC 1918 address ranges and to 169.254.169.254 (AWS/GCP/Azure metadata); note this may break legitimate integrations that require intranet access. For cloud-hosted instances, enforce IMDSv2 with a PUT hop-limit of 1 on the instance to prevent single-hop SSRF from reaching instance metadata - this is a meaningful compensating control but does not address SSRF to other internal hosts and is not a substitute for patching.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Ghost is an open-source Node.js content management platform used widely for publishing and blogging. The affected mechanism is Ghost's image card processing: during post re-rendering, when cached image dimension data is absent, Ghost issues an outbound HTTP GET request to the URL embedded in the image card to retrieve those dimensions. CWE-918 (Server-Side Request Forgery) identifies the root cause as the absence of URL validation or an outbound request allowlist on this code path. The SSRF is functionally unrestricted - the Ghost server can be directed at RFC 1918 addresses, loopback interfaces, or cloud metadata services such as the AWS IMDSv1 endpoint (169.254.169.254), which are reachable from the host but not from the public internet. CPE cpe:2.3:a:tryghost:ghost:*:*:*:*:*:*:*:* confirms the affected product scope.
Know when Ghost gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Staff authentication required (PR:L), re-render event needed to trigger fetch (UI:R), and Ghost's server crosses trust boundary to reach internal systems (S:C).
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
Ghost is a Node.js content management system. From 6.19.4 until 6.21.1, when re-rendering posts, Ghost would refetch missing image dimensions by issuing an outbound HTTP request to the URL stored on an image card - without restricting that URL to trusted image hosts. An authenticated staff user able to create or edit posts could therefore point an image card at an attacker-chosen host and cause the Ghost server to request it on their behalf, including hosts on internal networks or cloud instance metadata endpoints that would not normally be reachable from the public internet. This vulnerability is fixed in 6.21.1.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
Ghost CMS versions 5.105.0-5.130.5 and 6.0.0-6.10.3 contain an authentication bypass in their two-factor authentication
Arbitrary code execution in Ghost CMS versions 0.7.2 through 6.19.0 allows authenticated attackers with theme upload pri
An arbitrary file upload vulnerability in the file upload module of Ghost CMS v4.42.0 allows attackers to execute arbitr
An arbitrary file upload vulnerability in the file upload module of Ghost v4.39.0 allows attackers to execute arbitrary
SQL injection in Ghost CMS versions 3.24.0 through 6.19.0 allows unauthenticated attackers to read arbitrary database da
Ghost through 5.85.1 allows remote attackers to bypass an authentication rate-limit protection mechanism by using many X
Ghost through 5.76.0 allows stored XSS, and resultant privilege escalation in which a contributor can take over any acco
Ghost before 5.82.0 allows CSV Injection during a member CSV export. Rated high severity (CVSS 8.8), this vulnerability
Server-side request forgery (SSRF) vulnerability in Ghost CMS < 3.10.0 allows an attacker to scan local or external netw
Ghost before 5.42.1 allows remote attackers to read arbitrary files within the active theme's folder via /assets/built%2
Ghost is a Node.js CMS. Rated medium severity (CVSS 6.8), this vulnerability is remotely exploitable, no authentication
Ghost is an open source content management system. Rated medium severity (CVSS 6.5), this vulnerability is remotely expl
EUVD-2026-39023
GHSA-g366-23fw-ggp6
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB