GHSA-ch52-px8q-f22j: SSRF
Impact
Ghost’s private-IP check for outbound HTTP requests could be bypassed via DNS rebinding, allowing an attacker to coerce the Ghost server into reaching hosts on internal networks through features that issue external fetches.
Vulnerable versions
This vulnerability is present in Ghost from v6.0.9 up to v6.21.0.
Patches
v6.21.1 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.
Workarounds
If upgrading immediately is not possible, operators can reduce exposure by preventing the Ghost server from reaching sensitive internal ranges at the network layer — for example, egress firewall rules that block the Ghost process from initiating connections to RFC1918 networks, loopback, link-local (including 169.254.169.254) and any other internal service ranges. Disabling features that trigger outbound fetches (oEmbed, webmentions, recommendations) will further limit the attack surface but does not remove the underlying issue.
References
Ghost thanks Oluwaseun Esther Folorunsho, Lakshmikanthan K (@l3tchupkt), Offgrid Security, and Baki 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
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
npm/ghostto a version that resolves this vulnerability.Fixed in 6.21.2 - Upgrade
Upgrade
Ghostto a version that resolves this vulnerability.Fixed in v6.21.1 - Compensating control
For self-hosted Ghost, add egress firewall rules to prevent the Ghost process from initiating outbound connections to sensitive internal ranges (block RFC1918 networks, loopback, and link-local including 169.254.169.254, plus any other internal service ranges) to reduce exposure if upgrading is not immediately possible.
Event History
Frequently Asked Questions
What is the severity of GHSA-ch52-px8q-f22j?
The severity of GHSA-ch52-px8q-f22j is medium with a score of 4.
How do I fix GHSA-ch52-px8q-f22j?
To fix GHSA-ch52-px8q-f22j, update to the latest version of Ghost where this vulnerability is resolved.
What type of vulnerability is GHSA-ch52-px8q-f22j?
GHSA-ch52-px8q-f22j is a Server-Side Request Forgery (SSRF) vulnerability.
What does GHSA-ch52-px8q-f22j allow an attacker to do?
GHSA-ch52-px8q-f22j allows an attacker to bypass private-IP checks, coercing the Ghost server to reach internal network hosts.
In which software is GHSA-ch52-px8q-f22j found?
GHSA-ch52-px8q-f22j is present in the Ghost content management system, specifically in the npm package.