Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify exposed Dgraph GraphQL endpoint
-
DeliveryEnumerate type with regexp-filterable field
-
ExploitSend crafted GraphQL query with malicious regexp filter value
-
ExecutionmaybeQuoteArg writes payload verbatim into DQL
-
PersistInjected DQL operators bypass intended node filter
-
ImpactExfiltrate all nodes of target type or expand mutation/deletion scope
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Query language parameterization
|
| Exploitation Conditions | The Dgraph GraphQL API endpoint must be network-reachable by the attacker. The CVSS PR:N vector and the fix commit comment explicitly state that exploitation is possible without authentication when the endpoint is publicly accessible. The injection is triggered via a GraphQL |
| Impact | The CVSS 8.6 High score with vector AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L is consistent with the technical evidence: the injection requires only a single crafted GraphQL request, no authentication, and no unusual configuration. The C:H rating is well-founded - an attacker can bypass intended predicate filters to retrieve all nodes of a queried type. The I:L and A:L ratings reflect that mutation and deletion operations can similarly expand beyond their intended targets. No EPSS data was provided, preventing quantitative probability comparison. The vulnerability is not listed in CISA KEV, so active exploitation is unconfirmed. The fix commit includes a working regression test payload ( |
| Exploit ScenarioDerived | An unauthenticated attacker sends a GraphQL query to the Dgraph API with a crafted regexp filter argument such as |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 06, 2026
NoSQL injection in Dgraph prior to 25.3.8 enables unauthenticated remote attackers to inject DQL operators through unvalidated regexp filter arguments in GraphQL queries and mutations, bypassing intended node-level access controls. The maybeQuoteArg function in graphql/resolve/query_rewriter.go writes regexp arguments verbatim into generated DQL without validating the /pattern/flags structure, allowing a crafted filter value like /x/) OR has(pred to close the regexp call and append attacker-controlled DQL expressions. No confirmed active exploitation at time of analysis and no CISA KEV listing, but the fix commit includes a working injection payload as a regression test, confirming ease of exploitation against accessible endpoints.
RemediationAI
Upgrade to Dgraph 25.3.8 or later, the vendor-confirmed fixed version documented in GHSA-33p8-wc97-5qcj. The upstream fix commit is available at https://github.com/dgraph-io/dgraph/commit/aaff09ab9608f87d88e9d601e71d271306083392. For installations unable to upgrade immediately, restrict access to the Dgraph GraphQL API endpoint at the network layer using firewall rules, a reverse proxy, or API gateway authentication - this prevents unauthenticated exploitation but does not address the underlying injection flaw, meaning authenticated users with query access could still trigger it. If regexp filters are not required by the consuming application, consider rejecting or sanitizing incoming GraphQL requests containing regexp filter arguments at the API gateway layer using a WAF rule or request validation middleware, noting that this approach requires ongoing maintenance as the application evolves. No other workaround fully mitigates the injection without network-level access control.
Affected VersionsENISA
Affected Packages
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
Dgraph is a distributed graph database that exposes a GraphQL API and translates client queries into its internal query language, DQL (Dgraph Query Language). In graphql/resolve/query_rewriter.go, the maybeQuoteArg function controls how filter arguments are encoded before insertion into DQL strings. Regexp arguments receive special handling because they must appear as /pattern/flags literals in DQL rather than as quoted strings. Prior to 25.3.8, this function passed regexp filter arguments verbatim without verifying that the value conforms to a syntactically complete and self-contained /pattern/flags structure. CWE-943 (Improper Neutralization of Special Elements in Data Query Logic - NoSQL Injection) is the root cause class: the query-builder fails to neutralize user-supplied data before it is interpreted as DQL syntax. The fix introduces isValidRegexArg, which lexes the argument to confirm it contains exactly one complete regexp literal followed only by valid flag characters, mirroring dql.lexRegex to prevent any residual tokens from escaping into the broader DQL expression.
Know when the next one hits your stack
- 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
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L
Network-reachable GraphQL endpoint with no authentication per vendor commit; C:H for full type-level node disclosure, I:L and A:L for partial expansion of mutation and deletion targets.
Primary rating from Vendor (github).
CVSS VectorVendor: github
Lifecycle Timeline
2DescriptionCVE.org
Dgraph is an open source distributed GraphQL database. Prior to 25.3.8, maybeQuoteArg in graphql/resolve/query_rewriter.go passes regexp filter strings into generated DQL without quoting or validating the /pattern/flags form, allowing crafted GraphQL query or mutation filters to inject DQL operators, disclose unintended nodes, or expand modification and deletion targets. This issue is fixed in version 25.3.8.
Executive ViewAI
Dgraph database platform (versions prior to 25.3.8) contains a critical vulnerability allowing unauthenticated attackers to inject malicious database queries through GraphQL API calls, with publicly available exploit code demonstrating ease of attack. Organizations with exposed Dgraph deployments face immediate risk of unauthorized data access, modification, or deletion.
No vendor-released patch identified at time of analysis; implement network segmentation restricting GraphQL endpoint access to authenticated internal systems, disable regexp filter functionality if unused, deploy WAF rules to block DQL injection syntax in GraphQL arguments, and enforce strict rate limiting on GraphQL queries.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
NoSQL injection exploits databases that don't use traditional SQL syntax-like MongoDB, CouchDB, or Redis-by manipulating queries through unsanitized user input.
EUVD-2026-54255
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB