Severity by source
AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H
Network-delivered via federation (AV:N) but needs an attacker-run malicious server plus victim viewing (AC:H, UI:R); script escapes into the user's browser session (S:C, C:H), limited integrity impact and no real availability loss (A:N).
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
@tryghost/activitypub is Ghost’s social/federation client app. Prior to 3.1.0, the ActivityPub client in Ghost was vulnerable to JavaScript injection on posts shared by a maliciously customised ActivityPub server. This vulnerability is fixed in 3.1.0.
AnalysisAI
Cross-site scripting (JavaScript injection) in Ghost's ActivityPub client (@tryghost/activitypub) prior to version 3.1.0 allows a malicious federated server to embed attacker-controlled script in shared posts that executes in the browser of a victim Ghost user who views the content. The flaw stems from improper sanitization of post content received over ActivityPub federation, enabling session theft or actions performed in the victim's authenticated context. There is no public exploit identified at the time of analysis, and the issue is not listed in CISA KEV.
Technical ContextAI
The affected component is @tryghost/activitypub, the social/federation client bundled with the Ghost publishing platform, which implements the ActivityPub protocol to consume and display posts from remote (federated) servers. The root cause is CWE-79 (Improper Neutralization of Input During Web Page Generation / Cross-site Scripting): content fields delivered in ActivityPub objects from a remote actor are rendered into the Ghost client UI without adequate output encoding or HTML sanitization, so a remote server operator who customizes the ActivityPub responses can smuggle active JavaScript into the rendered post. The single CPE provided, cpe:2.3:a:tryghost:ghost:*, identifies the Ghost application generically; because federation inherently means processing untrusted data from servers outside the operator's control, any sanitization gap in the rendering path becomes directly attacker-influenceable.
RemediationAI
Upgrade the Ghost ActivityPub client (@tryghost/activitypub) to version 3.1.0 or later, which contains the fix; this is the primary and recommended remediation per the vendor advisory at https://github.com/TryGhost/Ghost/security/advisories/GHSA-xpp7-93x6-v29m. If immediate upgrade is not possible, reduce exposure by limiting or disabling ActivityPub federation, or by restricting which remote servers your instance federates with so content is only consumed from trusted sources - the trade-off is loss of social/federation functionality and reach. Additionally, deploying a restrictive Content-Security-Policy that disallows inline script execution in the Ghost client context can blunt injected JavaScript, though CSP is a defense-in-depth measure and may break legitimate inline scripts or themes and is not a substitute for the patch. Exact fix version: 3.1.0 (vendor-released patch).
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
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
Server-Side Request Forgery (SSRF) vulnerability in Ghost allows an attacker to access internal resources.0.0 through 6.
Same weakness CWE-79 – Cross-site Scripting (XSS)
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-39019
GHSA-xpp7-93x6-v29m