Description
@neo4j/graphql library versions prior to 7.5.6 fail to verify the authenticity of a client-supplied, pre-decoded JWT object passed through GraphQL subscription connectionParams. As a result, any unauthenticated remote client that can open a GraphQL-over-WebSocket connection can forge arbitrary JWT claims (e.g. sub, roles) in connectionParams.jwt and have them accepted as authenticated identity for the purposes of @authentication and @subscriptionsAuthorization directive evaluation. This allows a fully unauthenticated attacker to receive subscription events that should be restricted to specific authenticated roles/users.
Upgrade the library to versions 7.5.6+ or 5.12.14+. v6 is end-of-life and will not receive a fix.
Published: 2026-08-06
Score: 8.2 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Neo4j GraphQL library allows an unauthenticated attacker to supply a pre‑decoded JWT in the GraphQL subscription connectionParams without verifying its signature. Because the server trusts the client‑supplied token, forged claims such as sub and roles are accepted by the @authentication and @subscriptionAuthorization directives, enabling the attacker to receive subscription events that should be limited to authenticated users. This represents an authentication bypass that can lead to unauthorized data exposure in subscription streams.

Affected Systems

Neo4j GraphQL, any release before version 7.5.6 or 5.12.14. Clients using these earlier releases are vulnerable.

Risk and Exploitability

The CVSS score of 8.2 indicates high severity. The exploit is feasible over the GraphQL WebSocket subscription endpoint; an attacker only needs to construct a WebSocket connection and supply the forged JWT. No local constraints are required. EPSS data is unavailable and the vulnerability is not listed in the CISA KEV catalog, but the lack of signature verification makes exploitation trivial over the network. The vulnerability allows full authentication bypass for subscription channels, potentially exposing real‑time data to anyone.

Generated by OpenCVE AI on August 6, 2026 at 16:37 UTC.

Remediation

Vendor Solution

Fixed in 5.12.14 (LTS) and 7.5.6 (current). The 6.x line is end-of-life and will not receive a patch; users on 6.x must upgrade to 5.12.14+ or 7.5.6+.


OpenCVE Recommended Actions

  • Upgrade the Neo4j GraphQL library to version 7.5.6 or newer, or to 5.12.14 or newer if on the 5.x line
  • If an upgrade is not immediately possible, configure the server to reject or drop WebSocket subscription requests that do not provide a signed JWT or where the JWT cannot be verified against a trusted issuer
  • Implement monitoring to detect and alert on unauthorized subscription activity, such as forged JWTs, and review logs for unexpected event streams

Generated by OpenCVE AI on August 6, 2026 at 16:37 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 06 Aug 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 06 Aug 2026 15:30:00 +0000

Type Values Removed Values Added
Description @neo4j/graphql library versions prior to 7.5.6 fail to verify the authenticity of a client-supplied, pre-decoded JWT object passed through GraphQL subscription connectionParams. As a result, any unauthenticated remote client that can open a GraphQL-over-WebSocket connection can forge arbitrary JWT claims (e.g. sub, roles) in connectionParams.jwt and have them accepted as authenticated identity for the purposes of @authentication and @subscriptionsAuthorization directive evaluation. This allows a fully unauthenticated attacker to receive subscription events that should be restricted to specific authenticated roles/users. Upgrade the library to versions 7.5.6+ or 5.12.14+. v6 is end-of-life and will not receive a fix.
Title Subscription Authentication Bypass via Unverified connectionParams.jwt
First Time appeared Neo4j
Neo4j graphql
Weaknesses CWE-302
CPEs cpe:2.3:a:neo4j:graphql:*:*:*:*:*:*:*:*
Vendors & Products Neo4j
Neo4j graphql
References
Metrics cvssV4_0

{'score': 8.2, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: Neo4j

Published:

Updated: 2026-08-06T15:45:22.183Z

Reserved: 2026-04-02T13:17:29.975Z

Link: CVE-2026-5423

cve-icon Vulnrichment

Updated: 2026-08-06T15:45:19.111Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-08-06T16:16:44.430

Modified: 2026-08-18T15:04:46.610

Link: CVE-2026-5423

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-06T17:45:03Z

Weaknesses
  • CWE-302

    Authentication Bypass by Assumed-Immutable Data