Skip to main content

WPGraphQL EUVDEUVD-2026-114105

| CVE-2026-119700 MEDIUM
Observable Response Discrepancy (CWE-204)
2026-10-30 VulnCheck GHSA-rgvw-jqg8-92x3
6.9
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Reach public WPGraphQL endpoint
  2. Exploit
    Iterate IDs across the four mutations
  3. Execution
    Distinguish objects by distinct error responses
  4. Impact
    Enumerate hidden posts, custom post types and comment IDs

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V6 - Authentication Response uniformity
Exploitation Conditions

No special configuration beyond having a vulnerable WPGraphQL (2.24.0 or earlier, i.e. before 2.24.2) active with its GraphQL endpoint reachable, which is the default once the plugin is installed and enabled - remote unauthenticated exploitation requires no authentication, no user interaction and default settings. What LIMITS the impact: the flaw discloses only object existence, IDs and counts, never the content of the hidden posts or comments, and it writes and reads nothing. Per the advisory a residual, lower-value distinction remains for logged-in callers who hold the type-level capability (they can still tell a real media item ID from an empty one), but uploaded media already carry public URLs, so that is weak information next to the draft/private-post and unapproved-comment IDs the fix closes for anonymous callers.

Impact

This is a genuine but moderate-priority information-disclosure issue, not an emergency. The CVSS 4.0 vector (AV:N/AC:L/PR:N/UI:N) and the GHSA/source diff agree that an unauthenticated, remote caller can reach the four mutations through the normal GraphQL endpoint, so the attack surface is real and trivially reachable. However, the vulnerable-system impact is correctly scoped to VC:L with VI:N/VA:N: the flaw leaks only object existence and IDs (a count and a set of IDs for drafts, private/pending/scheduled/trashed posts, custom post types, and unapproved comments), not their contents, and it writes and reads nothing. The signals are internally consistent and point to a reconnaissance/enablement weakness rather than direct compromise. No EPSS score and no CISA KEV entry were provided, and no public exploit code was identified in the inputs; the vuln.today decision label is 'this_month' (not act_now/emergency), which matches a low-to-moderate urgency profile. The main amplifier is chaining: harvested IDs feed follow-on attacks (the advisory cites GHSA-4vgv-vvxr-9fh9, where anonymous callers attached comments to posts they could not see, by ID). Net: patch on a routine 'this month' cadence, treating it as higher priority on sites holding sensitive unpublished content, since the count of unpublished work is itself information some operators care about.

Exploit ScenarioDerived

An unauthenticated attacker sends GraphQL requests to a site running WPGraphQL 2.24.0 or earlier, iterating object IDs against the deleteMediaItem, updateMediaItem, deleteComment and updateComment mutations. Because each distinct error response reveals whether an ID holds nothing, holds a non-media object, holds a media item, or whether a comment exists, the attacker maps hidden drafts, private/trashed posts, custom post types and unapproved comments and collects their IDs for use in follow-on attacks. No public exploit code was identified in the inputs, but the low-complexity technique is described in detail in the vendor advisory.

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

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

Alert me

AnalysisAIv1 – Oct 30, 2026

WPGraphQL 2.24.0 and earlier leak object existence through four GraphQL write mutations - deleteMediaItem, updateMediaItem, deleteComment and updateComment - because each resolved the target object and validated its type before checking whether the caller was permitted to act at all, so every failure mode returned a distinguishable error. Remote unauthenticated attackers can walk the ID space with these mutations to learn whether drafts, pending, scheduled, private and trashed posts, any custom post type, or unapproved comments exist, and to harvest their IDs, although no post or comment content is ever returned and nothing is written. Vendor-released patch: 2.24.2; no public exploit identified at time of analysis, and vuln.today prioritises this as a this_month remediation rather than an emergency, consistent with a moderate-priority disclosure (CVSS 6.9, CWE-204 observable response discrepancy).

RemediationAI

Vendor-released patch: 2.24.2 - upgrade the plugin and the Composer packages (wordpress/wp-graphql, composer/wp-graphql/wp-graphql) to 2.24.2 via https://github.com/wp-graphql/wp-graphql/releases/tag/wp-graphql%2Fv2.24.2, applying the two upstream commits referenced in GHSA-r7m4-3v6c-3435 if a packaged release cannot be used. The advisory states there is no workaround through configuration: the only complete fix is updating. Administrators should expect the behaviour change that ships with the fix - passing a post or page ID to deleteMediaItem or updateMediaItem now returns 'No mediaItem with that ID could be found' instead of a message naming the target's post type, which is intentional and necessary to collapse the oracle. Be aware of a residual, lower-value distinction acknowledged by the vendor: a logged-in caller who holds the type-level capability can still distinguish a real media item ID from an empty one, though uploaded media already have public URLs, so that is weak information compared with the draft, private and unapproved-comment IDs the update closes for anonymous callers.

Affected VersionsENISA

WPGraphQL 0 <2.24.2

Affected Packages

euvd wpgraphql fix: 2.24.2

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

WPGraphQL exposes WordPress content through a GraphQL schema, and its write mutations are executed as resolvers that load a post or comment via WordPress APIs and then gate the action on capability checks. The advisory (GHSA-r7m4-3v6c-3435) assigns both CWE-204 and CWE-862: the ordering of the checks meant 'not found' and 'found but wrong type' produced different messages, and for the media mutations the capability check itself sat after the lookup, so a Contributor holding the type-level capability passed straight through. The affected code paths for deleteMediaItem and the corresponding update mutation returned three distinct answers across the post ID space (nothing there, something that is not an attachment, an attachment), while the comment mutations returned two (comment exists or not). Because the answer came from the raw lookup rather than from the model layer that backs the posts and contentNodes connections, it covered objects the API deliberately filters out. The fix runs the capability check first for all four mutations, and additionally merges the not-found and wrong-type branches for the media mutations so an ID that holds nothing and an ID that holds a non-attachment are reported identically. The CPE cpe:2.3:a:wpgraphql:wpgraphql:*:*:*:*:*:*:*:* covers all versions before the fixed release.

Know when Wpgraphql 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 6.9 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.3 MEDIUM

Remote unauthenticated requests to the public GraphQL endpoint give AV:N/AC:L/PR:N/UI:N; only object existence and IDs leak, so C:L with no integrity or availability impact.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/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
None
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

WPGraphQL before 2.24.2 contains an information disclosure vulnerability that allows unauthenticated attackers to determine object existence through distinct error responses. Attackers can iterate IDs against deleteMediaItem, updateMediaItem, deleteComment and updateComment mutations to discover hidden draft, private, trashed posts, custom post types, and unapproved comments.

Threat Intelligence Overview

EPSS Score
0.4%
Top 70% exploitable
Prevalence
Medium
popular WordPress GraphQL plugin, common but not on every site
Data Quality
4 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.4%
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· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact· derived
Medium

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
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.

CVE-2019-9879 CRITICAL POC
9.8 Jun 10

The WPGraphQL 0.2.3 plugin for WordPress allows remote attackers to register a new user with admin privileges, whenever

CVE-2019-9880 CRITICAL POC
9.1 Jun 10

An issue was discovered in the WPGraphQL 0.2.3 plugin for WordPress. Rated critical severity (CVSS 9.1), this vulnerabil

CVE-2021-47959 HIGH POC
8.7 May 15

WordPress Plugin WPGraphQL 1.3.5 contains a denial of service vulnerability that allows unauthenticated attackers to exh

CVE-2019-9881 MEDIUM POC
5.3 Jun 10

The createComment mutation in the WPGraphQL 0.2.3 plugin for WordPress allows unauthenticated users to post comments on

CVE-2026-40762 HIGH
7.5 Jun 15

Unauthenticated SQL injection in the WPGraphQL WordPress plugin versions prior to 2.11.1 allows remote attackers to inje

CVE-2026-119702 MEDIUM
6.9 Oct 30

Unauthenticated callers can create comments on WordPress content they are not allowed to see through the createComment G

CVE-2026-119701 MEDIUM
6.9 Oct 30

Unauthenticated email flooding in WPGraphQL 2.24.0 and earlier lets a remote attacker send roughly a thousand password r

CVE-2026-119699 MEDIUM
6.9 Oct 30

Unbounded automatic persisted-query storage in WPGraphQL Smart Cache 2.3.2 and earlier lets unauthenticated remote attac

CVE-2025-68604 MEDIUM
5.4 May 07

Cross-site request forgery (CSRF) in WPGraphQL plugin versions up to 2.5.3 allows unauthenticated attackers to perform u

CVE-2026-109703 MEDIUM
5.3 Oct 13

Unauthenticated retrieval of embedded sensitive data is possible on WordPress sites running the WPGraphQL plugin through

CVE-2023-23684 MEDIUM
4.4 Nov 13

Server-Side Request Forgery (SSRF) vulnerability in WPGraphQL.14.5. Rated medium severity (CVSS 4.4), this vulnerability

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