Description
Dgraph is an open source distributed GraphQL database. Prior to version 25.3.4, the `checkUserPassword` GraphQL query in Dgraph is vulnerable to DQL (Dgraph Query Language) injection. User-supplied password values are interpolated directly into a DQL `checkpwd()` query via `fmt.Sprintf` without any escaping or parameterization. An attacker can inject a password containing a double-quote character to break out of the DQL string literal and append arbitrary DQL query blocks. Version 25.3.4 patches the issue.
Published: 2026-07-08
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Dgraph is an open source distributed GraphQL database. Prior to version 25.3.4, the checkUserPassword GraphQL query in Dgraph is vulnerable to DQL (Dgraph Query Language) injection. User-supplied password values are interpolated directly into a DQL checkpwd() query via fmt.Sprintf without any escaping or parameterization. An attacker can inject a password containing a double-quote character to break out of the DQL string literal and append arbitrary DQL query blocks. Version 25.3.4 patches the issue.

Affected Systems

All instances of dgraph‑io dgraph running a version earlier than 25.3.4 are affected, as the vulnerability exists in the GraphQL API used for user authentication.

Risk and Exploitability

The CVSS score of 7.5 indicates high severity. The EPSS score is reported as indicating a very low but nonzero exploitation probability. The issue is not listed in the CISA KEV catalog, which suggests no confirmed public exploits yet. Based on the description, it is inferred that the GraphQL endpoint requires authentication, so attackers must first compromise credentials or gain client access. Once inside, the flaw can be leveraged to run arbitrary DQL, making the risk significant for systems where sensitive data resides. This vulnerability represents a CWE-943 weakness, indicating lack of input validation for externally supplied data.

Generated by OpenCVE AI on July 29, 2026 at 14:21 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Dgraph 25.3.4 or later to apply the vendor patch
  • Restrict API to trusted network segments or authenticated users
  • Review existing access controls to ensure that only authorized clients can invoke checkUserPassword

Generated by OpenCVE AI on July 29, 2026 at 14:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-q2m9-6jp9-c6mc Dgraph Vulnerable to DQL Injection via checkUserPassword GraphQL Query
History

Fri, 10 Jul 2026 09:45:00 +0000

Type Values Removed Values Added
First Time appeared Dgraph
Dgraph dgraph
Vendors & Products Dgraph
Dgraph dgraph

Thu, 09 Jul 2026 14:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Wed, 08 Jul 2026 14:15:00 +0000

Type Values Removed Values Added
Description Dgraph is an open source distributed GraphQL database. Prior to version 25.3.4, the `checkUserPassword` GraphQL query in Dgraph is vulnerable to DQL (Dgraph Query Language) injection. User-supplied password values are interpolated directly into a DQL `checkpwd()` query via `fmt.Sprintf` without any escaping or parameterization. An attacker can inject a password containing a double-quote character to break out of the DQL string literal and append arbitrary DQL query blocks. Version 25.3.4 patches the issue.
Title Dgraph Vulnerable to DQL Injection via checkUserPassword GraphQL Query
Weaknesses CWE-943
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-09T13:29:15.314Z

Reserved: 2026-05-07T21:21:48.352Z

Link: CVE-2026-44840

cve-icon Vulnrichment

Updated: 2026-07-09T13:29:08.666Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-29T14:30:03Z

Weaknesses
  • CWE-943

    Improper Neutralization of Special Elements in Data Query Logic