CVE-2026-54768

WPGraphQL has deprecated `user` field on SendPasswordResetEmailPayload that leaks user existence + profile (defeats explicit anti-enumeration design)

Published Jul 31, 2026 CVSS 4.0 · 6.9 Medium EPSS < 1% KEV · Not listed
Description
WPGraphQL provides a GraphQL API for WordPress sites. From 2.0.0 until 2.15.1, the deprecated user field on SendPasswordResetEmailPayload lets an unauthenticated caller distinguish existing author-class accounts through the sendPasswordResetEmail mutation and obtain public profile fields. This issue is fixed in version 2.15.1.

Analysis

AI-generated

Technical impact

WPGraphQL provides a GraphQL API for WordPress sites. From version 2.0.0 through 2.15.0, the deprecated user field on SendPasswordResetEmailPayload can be accessed by an unauthenticated caller via the sendPasswordResetEmail mutation. This field allows the attacker to determine whether a username belongs to an author-class account and to retrieve public profile fields, thereby leaking user existence and profile information. The vulnerability is reflected by CWE-204, which addresses disclosure of user data through incorrect design. The issue was fixed in version 2.15.1.

Affected Systems

The affected product is the WPGraphQL plugin for WordPress. Versions from 2.0.0 through 2.15.0 (inclusive) contain the vulnerable deprecated field; the issue was addressed in version 2.15.1.

Risk and Exploitability

The CVSS score of 6.9 indicates moderate severity, while the EPSS score of less than 1% suggests that the likelihood of exploitation is low at present. The vulnerability is accessible without authentication, making it a remote attack vector. It is not listed in CISA's KEV catalog. An attacker can send a crafted GraphQL request to the sendPasswordResetEmail mutation and observe whether a user exists, thereby enabling enumeration and profile leakage. Given the low EPSS and the lack of advanced persistence mechanisms, the risk remains moderate but unchanged.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the WPGraphQL plugin to version 2.15.1 or later, which removes the deprecated user field.
  • Configure the GraphQL plugin or WordPress settings to prevent unauthenticated users from invoking the sendPasswordResetEmail mutation, effectively disabling the exposed field for anonymous callers.
  • Apply rate limiting to GraphQL endpoints and monitor logs for enumeration attempts to detect and mitigate abuse.

Generated by OpenCVE AI on August 4, 2026 at 11:22 UTC.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-jhh7-832h-f8hv WPGraphQL has deprecated `user` field on SendPasswordResetEmailPayload that leaks user existence + profile (defeats explicit anti-enumeration design)
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared Wordpress
Wordpress wordpress
Wpgraphql
Wpgraphql wpgraphql
Vendors & Products Wordpress
Wordpress wordpress
Wpgraphql
Wpgraphql wpgraphql
Type Values Removed Values Added
Description WPGraphQL provides a GraphQL API for WordPress sites. From 2.0.0 until 2.15.1, the deprecated user field on SendPasswordResetEmailPayload lets an unauthenticated caller distinguish existing author-class accounts through the sendPasswordResetEmail mutation and obtain public profile fields. This issue is fixed in version 2.15.1.
Title WPGraphQL has deprecated `user` field on SendPasswordResetEmailPayload that leaks user existence + profile (defeats explicit anti-enumeration design)
Weaknesses CWE-204
References
Metrics cvssV4_0

{'score': 6.9, 'vector': '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'}

Weaknesses
  • CWE-204

    Observable Response Discrepancy

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Aug 3, 2026, 8:36 PM
Reserved
Jun 15, 2026, 11:23 PM
Status
Awaiting Analysis
Published
Jul 31, 2026, 11:17 PM
Modified
Sep 10, 2026, 8:30 PM