Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain low-privilege staff account
-
DeliveryAuthenticate to Admin API
-
ExploitRequest resource exposing API keys
-
ExecutionHarvest higher-privilege keys
-
ImpactAbuse keys for elevated API access
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Outbound data filtering
|
| Exploitation Conditions | Requires an authenticated low-privilege Ghost staff account (PR:L) on an affected instance (versions 3.23.0 through 6.22.x) and access to the Admin API, which returns API keys that should be restricted to higher-privileged roles. No user interaction, no special non-default configuration, and no particular deployment mode beyond having staff users provisioned are needed. The primary limiting factor is the authentication requirement: an attacker must already hold valid low-privilege staff credentials, so the flaw is an insider/privilege-escalation risk rather than a remote-unauthenticated one; upgrading to 6.23.0 or later removes the exposure. |
| Impact | This is a genuine but modest-severity information-disclosure issue, not an urgent priority. The vendor CVSS 4.0 vector (CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N, 5.3 Medium) describes a network-reachable, low-complexity flaw that nonetheless requires an authenticated low-privilege staff account (PR:L) - a meaningful gate that keeps it out of the mass-exploitation category. No EPSS score, CISA KEV listing, or public proof-of-concept is present in the supplied data, so the exploitation status is 'no public exploit identified at time of analysis.' All signals are internally consistent here: there is no conflict between a low real-world probability and the Medium CVSS, and no network-vs-local contradiction (CWE-201 exposure through the Admin API matches AV:N). The practical risk is a privilege-boundary violation - a low-privilege staff user obtains API keys meant for higher-privileged roles - which is primarily a stepping-stone/escalation concern rather than a direct compromise. Real priority is bounded: patch during normal maintenance, prioritizing instances with many low-trust staff accounts. |
| Exploit ScenarioDerived | An attacker with (or who phishes/obtains) a low-privilege staff login to a Ghost instance authenticates to the Admin API and requests a resource whose response includes API keys intended only for Owner/Administrator roles. The attacker harvests those keys and can then use them to make Admin/Content API calls beyond their assigned staff privileges. No public exploit code is identified at time of analysis; exploitation is low-complexity but requires the authenticated staff account. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 01, 2026
Authenticated low-privilege staff users on Ghost sites can read Admin API keys that should only be visible to higher-privileged accounts, handing them credentials intended for trusted integrations. The exposure affects the Ghost npm package from 3.23.0 through 6.22.x and is resolved in 6.23.0, with the CVSS vector (PR:L, AV:N, no UI) confirming that a valid staff login on a remote instance is the only prerequisite. No public exploit code and no confirmed active exploitation were identified at time of analysis, and the independent assessment rates this as a genuine but modest-severity information-disclosure and privilege-escalation risk driven by insider or compromised-staff scenarios rather than unauthenticated remote attack.
RemediationAI
Apply the vendor-released patch by upgrading Ghost to 6.23.0 or later; this is the only complete fix for the Admin API key exposure and is confirmed as available by the vendor advisory GHSA-q98w-jm4q-wch7 (https://github.com/TryGhost/Ghost/security/advisories/GHSA-q98w-jm4q-wch7). Because the keys may already have been read by a low-privilege account, treat them as compromised: rotate every Admin API key on the instance and update the integrations, scripts, and CI jobs that consume them, accepting brief integration downtime during the swap. Until upgrading is possible, reduce the attack surface by auditing and trimming low-privilege staff accounts, restricting the Admin API endpoint to trusted networks or IP allowlists at the reverse proxy (a trade-off that breaks off-site integration clients), and monitoring Admin API access logs for key-retrieval requests originating from non-administrative roles. Note that these compensating controls lower the chance of abuse but do not remove the underlying field-filtering defect, and no non-upgrade configuration toggle that suppresses the leak is documented in the available advisory data.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
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 publishing platform that exposes a Content API for public reads and an authenticated Admin API used by staff and integrations; Admin API keys are long-lived bearer credentials that authorize programmatic access at the site level. CVE-2026-103281 is classified as CWE-201 (Insertion of Sensitive Information Into Sent Data): the Admin API response path serializes and returns API key material without filtering it against the caller's role, so responses delivered to low-privilege staff roles include fields that policy intends to reserve for owners/administrators. This is a broken response-level authorization/field-filtering defect rather than a memory-safety or injection flaw, which is why the assessed CVSS:3.1 vector is AV:N/AC:L/PR:L/UI:N/S:U with only limited confidentiality and integrity impact (C:L/I:L/A:N) - the leak itself does not directly corrupt data, but the disclosed keys can be used to act with the privileges those keys carry. The affected package is tracked as cpe:2.3:a:tryghost:ghost:*:*:*:*:*:*:*:*.
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
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
Network Admin API with low-privilege staff auth (PR:L, AC:L); confidentiality impact from key exposure (C:L) plus low integrity (I:L) since harvested keys enable elevated write calls.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
Ghost (npm package 'ghost') versions from 3.23.0 up to, but not including, 6.23.0 expose API keys to users with low-privilege staff accounts. An authenticated low-privilege staff user can read API keys returned by the Admin API, which are intended to be available only to higher-privileged users.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
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-90674
GHSA-crq6-86x9-65hj
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB