Skip to main content

Ghost CMS CVE-2026-105680

| EUVDEUVD-2026-92771 MEDIUM
Missing Authorization (CWE-862)
2026-10-05 GitHub_M GHSA-x3mg-q38v-m562
6.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as Author-role staff user
  2. Exploit
    Send admin API delete request for another author's post or page
  3. Impact
    Unauthorized permanent content destruction

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated staff account with the Author role on a multi-user Ghost instance running an affected version (5.81.0 up to but not including 6.60.0). The attacker must already possess valid Author-level credentials - there is no path for an anonymous or unauthenticated user - so single-author blogs and instances without delegated Author accounts are not realistically exposed. Exploitation targets posts and pages the attacker did not author; per the fix, both single deletes (now rejected unless the actor is the primary author) and bulk filter-based deletes were affected. The limiting factors are the required Author-role trust level and the existence of other authors' content to delete; no special non-default configuration or user interaction is needed beyond holding the Author role.

Impact

This is a moderate-severity broken-authorization flaw (CVSS 6.5, CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H, CWE-862 Missing Authorization). The CVSS vector shows network reach and low attack complexity, but the decisive constraint is PR:L: exploitation requires an already-provisioned Author-role staff account, so the realistic threat actor is a malicious or compromised low-trust staff member rather than an anonymous internet attacker. No EPSS score, SSVC decision, or CISA KEV status was supplied in the input, and no public exploit was identified - the only code artifact is the TryGhost fix commit itself, which is a patch, not weaponized exploit code. Weighing these signals together, this is a legitimate but bounded access-control issue: higher priority for multi-author Ghost instances that delegate content to semi-trusted contributors, and low priority for single-author or tightly-controlled deployments. The impact is scored as availability (A:H) for the destroyed posts/pages; note that unauthorized deletion of content is equally defensible as an integrity impact, so defenders should treat the harm as irreversible content loss regardless of which CVSS impact dimension is used.

Exploit ScenarioDerived

On a multi-author Ghost site running 5.81.0-6.59.x, a user holding only the Author role (e.g. a freelance contributor or a compromised low-privilege staff account) sends an admin API delete request targeting a post or page authored by someone else. Because the authorization check only validated contributors as primary authors and failed to constrain the Author role, the deletion succeeds and the victim's content is permanently removed. No public exploit is required - the operation uses the normal admin API delete endpoint; the fix commit also confirms bulk-delete of posts and pages was blocked.

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

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

Alert me

AnalysisAIv1 – Oct 05, 2026

Broken authorization in Ghost CMS versions 5.81.0 through 6.59.x lets an authenticated staff account with the Author role delete posts and pages authored by other users, including through bulk filter-based delete requests. The flaw is a missing primary-author check on the destroy path in the post model's permission logic (CWE-862), rated CVSS 6.5 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H) - unauthenticated exploitation is not possible, and only multi-author instances with delegated Author accounts are realistically exposed. No public exploit code has been identified at time of analysis and there is no indication the issue has been actively exploited; Ghost fixed the behavior in version 6.60.0.

RemediationAI

Vendor-released patch: upgrade Ghost to 6.60.0, which is the first release containing commit cf2f718a67faa342c27989b701554ddd63862165 and re-enforces the primary-author requirement for all post and page destroy operations, including bulk filter-based deletes; upgrade instructions and release notes are at https://github.com/TryGhost/Ghost/releases/tag/v6.60.0 and the advisory is at https://github.com/TryGhost/Ghost/security/advisories/GHSA-x3mg-q38v-m562. If an immediate upgrade is not possible, the most effective compensating control is to reduce Author-role exposure: temporarily reassign Author accounts that do not need delete rights to the Contributor role, which already required primary authorship on the destroy path before this fix (the trade-off is that Contributor is a more restricted publishing role, so review editorial workflows before doing so), and disable or deactivate dormant Author accounts entirely since the flaw requires valid Author-level credentials. In parallel, keep reliable database and content backups so that any unauthorized deletions of other authors' posts or pages can be recovered, and monitor Admin API and audit logs for HTTP DELETE requests to /posts/ or /pages/ issued by Author-role users - especially filter-based bulk deletes, which the patched code now rejects with 403 and which are a strong signal of exploitation attempts. Note that neither role reassignment nor log monitoring eliminates the underlying authorization gap, so treating the version upgrade as the definitive fix is required.

Affected VersionsENISA

Ghost 5.81.0, < 6.60.0

Affected Packages

npm ghost fix: 6.60.0

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 a Node.js content management system whose content pipeline is built on Bookshelf.js ORM models, including a dedicated Post model and an authorship relation layer implemented in ghost/core/core/server/models/relations/authors.js. Authorization is enforced in the Post model's permissible() function, which branches on the acting user's role (Owner, Administrator, Editor, Author, Contributor) and the operation (add/destroy/edit) and then decides whether permission is granted. CWE-862 (Missing Authorization) applies here because the destroy branch for the Author role lacked the primary-author verification that the Contributor destroy branch already performed: the pre-fix code granted Authors delete rights without confirming they owned the post, and the related isAuthor && isAdd branch was removed. The upstream commit cf2f718a67faa342c27989b701554ddd63862165 consolidates the two roles into a single condition - (isContributor || isAuthor) && isDestroy now resolves to Boolean(postModel) && isPrimaryAuthor() - so a delete is only allowed when a concrete post model exists and the actor is its primary author. That same change also makes the bulk destroy path (a filter-based delete with no specific post object) fail closed with a NoPermissionError, because postModel is undefined in that flow. Regression coverage added with the fix includes end-to-end admin API tests asserting HTTP 403 when an Author deletes another author's post, HTTP 204 only when deleting their own, and HTTP 403 for bulk deletes of both posts and pages, plus unit tests on Post.permissible() for the no-specific-post, other-author, and secondary-author cases.

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 (GitHub_M) PRIMARY 6.5 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 6.5 MEDIUM

Exploited over the admin API (AV:N, AC:L, UI:N) by an authenticated Author account (PR:L); irreversible content deletion is scored A:H with no confidentiality loss (integrity is an equally defensible alternative).

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

1
Patch available
Oct 05, 2026 - 21:02 EUVD

DescriptionCVE.org

Ghost is a Node.js content management system. From 5.81.0 until 6.60.0, staff with the Author role could delete posts and pages that they did not author. This issue is fixed in version 6.60.0.

Threat Intelligence Overview

EPSS Score
0.3%
Top 82% exploitable
Prevalence
Medium
popular Node.js publishing CMS, common but far from universal deployment
Threat Intel
1
1 source
Data Quality
5 sources
Confidence: Medium
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub

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.3%
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

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

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

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