Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with readRecord-only account
-
ExploitSend GraphQL type definition with crafted @sql directive to /api/v1/query/{database}
-
ExecutionServer accepts schema replacement (HTTP 200)
-
ImpactAnother user's GraphQL query returns attacker-controlled results
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires a valid ArcadeDB account holding at least readRecord permission on the target database (PR:L - not remote-unauthenticated), the GraphQL module must be loaded and the /api/v1/query/{database} endpoint exposed to such users, and the request must use language: graphql carrying a GraphQL type definition with a crafted @sql directive. Affected versions are 21.12.1 up to and including 26.10.1. Impact is further gated and delayed: the altered shared schema only changes results once another user (e.g., an administrator) subsequently issues a GraphQL query, and the directive runs with the querying user's own privileges, so there is no data write or privilege escalation. The vendor's workaround is to upgrade to 26.10.2, or on earlier versions not to expose GraphQL to users who must not alter what others see, or to not load the GraphQL module. |
| Impact | All signals point to a genuine but moderate, authenticated-only issue rather than a drop-everything emergency. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N, 5.3 Medium) shows network reach and low complexity but requires low privileges (PR:L) - an attacker must already hold a valid account with readRecord on the target database - and the only impact is low integrity (VI:L): no confidentiality loss, no availability loss, and no write/privilege escalation (the vendor explicitly states the @sql directive runs as the querying user). The GHSA advisory corroborates this: it is an integrity problem of the database's shared GraphQL schema, where a read-only user can change what other users (including administrators) see in query results. The vuln.today decision label is this_month (not act_now/emergency), consistent with the Medium rating. No CISA KEV listing is present and no EPSS score was provided in the input, so there is no signal of active or probable widespread exploitation; however, a detailed step-by-step Proof of Concept is published in the GHSA advisory, lowering the barrier to reproduction. Net: a real, patch-this-cycle authorization-bypass (CWE-862) affecting data integrity, meaningfully gated by the need for valid credentials and an exposed GraphQL module, and further limited by low real-world deployment of ArcadeDB. EPSS was not supplied, so exploitation probability cannot be quantified from the available data. |
| Exploit ScenarioDerived | An attacker who has been granted a low-privilege ArcadeDB account with only readRecord permission sends a crafted GraphQL type definition containing an @sql directive to the read-only /api/v1/query/{database} endpoint (language: graphql); the server accepts it (HTTP 200) even though direct schema commands like CREATE DOCUMENT TYPE are refused with 403. When an administrator or other user next runs a GraphQL query, they silently receive attacker-controlled results instead of the real data. A detailed reproduction PoC is published in the GHSA advisory, though it is not provided as a verified working exploit tool. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 30, 2026
ArcadeDB versions 21.12.1 through 26.10.1 allow an authenticated user who holds only the readRecord privilege to overwrite the database's shared GraphQL schema through the read-only /api/v1/query/{database} endpoint, so later GraphQL queries issued by other users - including administrators - return the attacker-chosen result. The root cause is a missing authorization check (CWE-862): a GraphQL type definition carrying a crafted @sql directive was not treated as a schema change, even though the same user is correctly refused a CREATE DOCUMENT TYPE with 403 for lacking updateSchema. The vendor fixed this in 26.10.2; there is no CISA KEV listing or exploitation reporting, and because directive statements execute with the querying user's own privileges there is no data write and no privilege escalation - only manipulation of what other users see. A public proof-of-concept walkthrough is included in the vendor advisory; it is a documented reproduction, not verified working exploit code.
RemediationAI
Upgrade to ArcadeDB 26.10.2, which the vendor released as the fix for this issue; after upgrading, GraphQL type definitions are treated as schema changes and are rejected on the read-only /api/v1/query/{database} endpoint, and executing them requires the updateSchema right on the command endpoint. If upgrading immediately is not possible, the vendor's documented workarounds are to avoid exposing GraphQL to users who must not be able to alter what other users see, or to not load the GraphQL module at all; the trade-off is that the first option narrows who can use GraphQL queries on affected databases and the second removes GraphQL functionality entirely until the upgrade is applied. Because the injected @sql statement runs with the privileges of whichever user later queries the schema, administrators should also treat GraphQL results on unpatched instances as potentially tampered with. Details are in the advisory at https://github.com/ArcadeData/arcadedb/security/advisories/GHSA-773f-9j7c-cr54.
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
The affected component is the Maven artifact com.arcadedb:arcadedb-graphql (CPE cpe:2.3:a:arcadedata:arcadedb). ArcadeDB's GraphQL layer keeps a single schema per database as shared state, and an @sql directive on a type or field binds that field to a SQL statement executed through database.query. In the vulnerable versions the read-only query endpoint /api/v1/query/{database} accepted a GraphQL type definition submitted with language: graphql and installed it into the shared schema without checking the caller's updateSchema right, while the equivalent schema operation on the command path (for example CREATE DOCUMENT TYPE) was properly rejected with 403. This is the CWE-862 Missing Authorization class: an operation that mutates shared configuration is reachable through a handler that only enforces read-level permissions. Downstream queries by other clients then execute the injected @sql statement under their own session, which is why the advisory classifies the issue as an integrity problem for query results rather than a data-write or privilege-escalation primitive. The 26.10.2 fix reclassifies GraphQL type definitions as schema changes, refusing them on the read-only endpoint and requiring updateSchema on the command endpoint as well.
Know when Arcadedb 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Network-reachable low-complexity call needs a low-privilege account (PR:L), affects only integrity of shared schema results (I:L), with no confidentiality or availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
ArcadeDB from 21.12.1 before 26.10.2 contains an authorization bypass vulnerability that allows users with only readRecord to replace the shared GraphQL schema via the read-only query endpoint. Attackers can send a GraphQL type definition with a crafted @sql directive to /api/v1/query/{database}, altering query results returned to other users including administrators.
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
Unauthenticated data access and manipulation in ArcadeDB before 26.8.1 arises because the Redis wire-protocol plugin exp
Privilege escalation in ArcadeDB server (versions 26.7.3 and earlier) allows a low-privileged authenticated user with re
Privilege escalation in ArcadeDB before 26.8.1 lets a low-privileged authenticated reader escalate to full server admini
Authentication bypass in ArcadeDB before 26.8.1 lets unauthenticated attackers run full CRUD operations against any data
Scripting authorization bypass in ArcadeDB before 26.7.2 lets any authenticated database user - including read-only role
Cross-database authorization bypass (IDOR) in ArcadeDB before 26.7.2 lets attackers read and write any database on the s
Remote code execution in ArcadeDB's Gremlin query engine exposes any deployment running arcadedb-gremlin through version
Cross-database authorization bypass in ArcadeDB's Gremlin wire-protocol plugin allows any authenticated server user to f
Arbitrary file read in ArcadeDB before version 26.8.1 allows authenticated users holding trigger creation privileges to
Cluster token exposure in ArcadeDB before 26.7.2 enables any authenticated user to escalate privileges to root-level adm
Privilege escalation in ArcadeDB before 26.7.3 allows any user holding UPDATE_SCHEMA permission to create server-wide ad
Remote OS command execution in ArcadeDB before 26.7.2 is reachable by authenticated schema administrators through JavaSc
EUVD-2026-113930
GHSA-7ggx-x32v-fc5c
NVD
CVE.org
EPSS
Exploit-DB