Skip to main content

Ghost CMS EUVDEUVD-2026-90668

| CVE-2026-103275 MEDIUM
Observable Discrepancy (CWE-203)
2026-10-01 VulnCheck GHSA-xqw5-w9qm-w396
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as staff user
  2. Delivery
    Send bulk edit/delete request with authors.password filter
  3. Exploit
    Observe which filters match as oracle
  4. Execution
    Infer target hash incrementally
  5. Persist
    Perform offline password cracking
  6. Impact
    Compromise other staff account

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V6 - Authentication Timing-safe comparisons
Exploitation Conditions

Requires an authenticated Ghost staff-level account (PR:L) with access to the Admin API bulk post and page edit/delete endpoints. The attacker supplies filters referencing restricted fields such as authors.password; the vulnerable versions (5.42.2 up to but not including 6.58.0) fail to reject these filters on the bulk operation code paths (an incomplete fix for CVE-2026-70590). What limits exploitation: it only yields indirect hash inference requiring subsequent offline password cracking (not immediate credential recovery), it needs a pre-existing trusted staff account, and it is fully remediated in 6.58.0 which returns HTTP 400 for restricted-field filters.

Impact

This is a genuine but modest-priority issue. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L) correctly frames it as a network-reachable, low-complexity flaw requiring authentication (PR:L = a staff-level account) with low confidentiality impact and no integrity or availability impact. CWE-203 (observable discrepancy) is accurate: the bug is a side-channel/inference oracle, not direct data exposure - an attacker learns password-hash content indirectly from which bulk-filter queries match, then must still run offline brute-force/dictionary attacks to recover plaintext passwords. Exploitation status: no public exploit identified at time of analysis (no POC, no EPSS score, not in CISA KEV). The patch is confirmed available (vendor advisory GHSA-ghq6-q78f-2cpg and commit 5ef16abe). The 5.3 score is appropriate - real but gated behind an existing trusted (staff) account, and the payoff is probabilistic hash inference rather than immediate compromise. Notably this is an INCOMPLETE FIX for CVE-2026-70590, meaning the original remediation missed the Admin API bulk edit/delete code paths; that recurrence slightly raises attention but the practical risk remains low-to-medium.

Exploit ScenarioDerived

A malicious or compromised staff user (e.g. an Editor/Author account) calls the Ghost Admin API bulk post or page edit/delete endpoints supplying filters on the restricted field authors.password (e.g. prefix-style match expressions). By observing which filtered bulk operations match records, they infer another staff user's stored password-hash content character by character, then conduct an offline guessing attack against the recovered hash. No public exploit code is known, and the attack requires an authenticated staff account.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 01, 2026

Authenticated staff-level users of Ghost CMS (versions 5.42.2 up to but not including 6.58.0) can infer other staff users' password hashes by supplying Admin API bulk post and page edit/delete filters that reference restricted fields such as authors.password. Because the bulk operation code paths fail to reject these restricted-field filters, the match/no-match behaviour acts as a boolean oracle that leaks information about the stored hash, which an attacker can then attack with offline password-guessing (cracking) - it does not hand over credentials directly. This is a genuine but modest-priority authenticated information disclosure (CVSS 5.3, assessed CVSS:3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N, CWE-203); there is no CISA KEV entry and no public exploit identified at time of analysis, and the issue is fully remediated in Ghost 6.58.0.

RemediationAI

Vendor-released patch: upgrade Ghost to 6.58.0 or later - the fix commit (https://github.com/TryGhost/Ghost/commit/5ef16abe85e9b71ac3f1b1e2cbc462802efe3b5b) makes the bulk post/page edit and delete paths reject any filter containing restricted fields such as authors.password with an HTTP 400 BadRequestError, closing the inference channel; see GHSA-ghq6-q78f-2cpg for the vendor advisory. If an immediate upgrade is not possible, treat every staff account as a potential oracle: restrict Admin API access to the smallest possible set of trusted personnel, review and remove dormant or low-privilege staff accounts (the attack requires an authenticated staff session, so reducing staff account count directly shrinks the attack surface), and force password resets for staff users whose hashes may have been probed - noting the trade-off that resetting hashes invalidates nothing for the attacker's already-collected inference but does change the secret being attacked. As a compensating control, a reverse-proxy or WAF rule that rejects Admin API bulk requests whose filter parameter references password or other restricted segments will block the known probe pattern, at the cost of possibly breaking legitimate automations that use unusual filters. Finally, monitor Admin API logs for repeated bulk post/page edit or delete calls with crafted filter values, since such patterns are the observable signature of hash-inference attempts and, on vulnerable versions, are the only place the activity surfaces because the requests succeed rather than returning 400 as they do after patching.

Affected VersionsENISA

Ghost 5.42.2 <6.58.0

Affected Packages

euvd ghost fix: 6.58.0

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's Admin API exposes bulk edit and bulk delete endpoints for posts and pages that accept an NQL-style filter string, which is translated by the @tryghost/mongo-utils package into a database query against the posts collection (CWE-203, Observable Discrepancy). The vulnerable code in ghost/core/core/server/services/posts/posts-service.js passed the attacker-supplied filter straight into models.Post.getFilteredCollectionQuery() on the bulkDestroy and bulkEdit paths, without applying the restricted-field rejection logic that already protected the Content API and other code paths - an incomplete fix for the earlier CVE-2026-70590. Because the filter may join the authors relation, predicates such as authors.password:... were evaluated against the stored password hash, and the API response (success/error, matched counts, or delete/edit behaviour) differed depending on whether the predicate matched. That turns the endpoint into a blind inference channel against the password column, and the leaked hash material can subsequently be fed into offline password cracking due to Ghost's use of deliberately slow password hashing, which raises the cost of the attack but does not eliminate it. The official fix (commit 5ef16abe85e9b71ac3f1b1e2cbc462802efe3b5b) introduces validateAdminApiBulkFilterTransformer, which uses getUsedKeys() plus hasRestrictedSegment() to reject any filter touching ADMIN_API_RESTRICTED_FIELDS with a 400 BadRequestError before the query is built, and routes all bulk paths through a single #getFilteredBulkPostQuery helper so the guard cannot be bypassed.

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

Vendor (VulnCheck) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.3 MEDIUM

Network Admin API, low complexity, requires a staff account (PR:L); low confidentiality via indirect hash inference, no integrity/availability impact and no scope change.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Ghost 5.42.2 before 6.58.0 contains an information disclosure vulnerability in the Admin API bulk post and page edit and delete endpoints, which accept filters on restricted fields such as authors.password, because of an incomplete fix for CVE-2026-70590. Staff-level attackers can infer other staff users' password hashes from which filters match and perform offline password-guessing attacks against them.

Threat Intelligence Overview

EPSS Score
0.2%
Top 90% exploitable
Prevalence
Medium
popular open-source Node.js publishing/newsletter platform, common but not ubiquitous
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Ghost

View all
CVE-2026-22594 HIGH POC
8.1 Jan 10

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

CVE-2026-29053 HIGH POC
7.6 Mar 05

Arbitrary code execution in Ghost CMS versions 0.7.2 through 6.19.0 allows authenticated attackers with theme upload pri

CVE-2022-28397 CRITICAL POC
9.8 Apr 12

An arbitrary file upload vulnerability in the file upload module of Ghost CMS v4.42.0 allows attackers to execute arbitr

CVE-2022-27139 CRITICAL POC
9.8 Apr 12

An arbitrary file upload vulnerability in the file upload module of Ghost v4.39.0 allows attackers to execute arbitrary

CVE-2026-26980 CRITICAL POC
9.4 Feb 20

SQL injection in Ghost CMS versions 3.24.0 through 6.19.0 allows unauthenticated attackers to read arbitrary database da

CVE-2024-34451 CRITICAL POC
9.1 Jun 16

Ghost through 5.85.1 allows remote attackers to bypass an authentication rate-limit protection mechanism by using many X

CVE-2024-23724 CRITICAL POC
9.0 Feb 11

Ghost through 5.76.0 allows stored XSS, and resultant privilege escalation in which a contributor can take over any acco

CVE-2024-34448 HIGH POC
8.8 May 22

Ghost before 5.82.0 allows CSV Injection during a member CSV export. Rated high severity (CVSS 8.8), this vulnerability

CVE-2020-8134 HIGH POC
8.1 Mar 20

Server-side request forgery (SSRF) vulnerability in Ghost CMS < 3.10.0 allows an attacker to scan local or external netw

CVE-2023-32235 HIGH POC
7.5 May 05

Ghost before 5.42.1 allows remote attackers to read arbitrary files within the active theme's folder via /assets/built%2

CVE-2021-29484 MEDIUM POC
6.8 Apr 29

Ghost is a Node.js CMS. Rated medium severity (CVSS 6.8), this vulnerability is remotely exploitable, no authentication

CVE-2023-40028 MEDIUM POC
6.5 Aug 15

Ghost is an open source content management system. Rated medium severity (CVSS 6.5), this vulnerability is remotely expl

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy