CVE-2026-93596: Missing Authorization in ArcadeData arcadedb
ArcadeDB before 26.9.1 (com.arcadedb:arcadedb-engine <= 26.8.1) fails to bind the authenticated principal onto the DatabaseAsyncTransaction async worker threads used by the parallel edge-connect phase of POST /api/v1/batch/{database}. Because those workers have no current user, LocalDatabase.checkPermissionsOnFile returns early and allows the write, bypassing per-type CREATE_RECORD/UPDATE_RECORD ACL enforcement. In deployments that rely on per-type or per-group ACLs, an authenticated low-privilege user holding CREATE_RECORD on an edge type E but with CREATE_RECORD/UPDATE_RECORD revoked on a vertex type V can submit a graph edge-load batch request (with parallelFlush at its default value of true) and durably append edges to protected vertices of type V by writing records into V's <V>_out_edges/<V>_in_edges buckets, resulting in unauthorized modification of graph adjacency. Setting parallelFlush=false causes the request to be correctly rejected. This is an incomplete fix of GHSA-c23x-pqcj-7hfm, which bound the principal only on the HTTP handler thread.
AI Analysis
Technical Summary
CVE-2026-93596 affects ArcadeDB versions prior to 26.9.1 (specifically com.arcadedb:arcadedb-engine <= 26.8.1). The vulnerability is due to failure to bind the authenticated principal to asynchronous worker threads used in the parallel edge-connect phase of POST /api/v1/batch/{database}. Without the principal context, LocalDatabase.checkPermissionsOnFile prematurely returns, allowing writes that bypass per-type CREATE_RECORD/UPDATE_RECORD ACL enforcement. An authenticated user with CREATE_RECORD permission on an edge type but revoked permissions on a vertex type can exploit this to append edges to protected vertices, modifying graph adjacency without authorization. This is a partial regression of a previous fix (GHSA-c23x-pqcj-7hfm) that only bound the principal on the HTTP handler thread. Disabling parallelFlush (setting it to false) causes correct permission enforcement and request rejection.
Potential Impact
Authenticated low-privilege users can bypass per-type and per-group ACLs to modify protected graph vertices by appending edges, resulting in unauthorized modification of graph adjacency data. This can lead to integrity violations in graph data structures where vertex permissions are intended to restrict modifications. The impact is limited to environments relying on per-type or per-group ACLs and using parallelFlush=true in batch requests.
Mitigation Recommendations
A fixed version (26.9.1 or later) is available that addresses this issue by properly binding the authenticated principal to async worker threads. Until upgrading, setting the batch request parameter parallelFlush to false prevents exploitation by disabling the parallel edge-connect phase that triggers the vulnerability. Users should upgrade to version 26.9.1 or later to fully remediate this vulnerability.
CVE-2026-93596: Missing Authorization in ArcadeData arcadedb
Description
ArcadeDB before 26.9.1 (com.arcadedb:arcadedb-engine <= 26.8.1) fails to bind the authenticated principal onto the DatabaseAsyncTransaction async worker threads used by the parallel edge-connect phase of POST /api/v1/batch/{database}. Because those workers have no current user, LocalDatabase.checkPermissionsOnFile returns early and allows the write, bypassing per-type CREATE_RECORD/UPDATE_RECORD ACL enforcement. In deployments that rely on per-type or per-group ACLs, an authenticated low-privilege user holding CREATE_RECORD on an edge type E but with CREATE_RECORD/UPDATE_RECORD revoked on a vertex type V can submit a graph edge-load batch request (with parallelFlush at its default value of true) and durably append edges to protected vertices of type V by writing records into V's <V>_out_edges/<V>_in_edges buckets, resulting in unauthorized modification of graph adjacency. Setting parallelFlush=false causes the request to be correctly rejected. This is an incomplete fix of GHSA-c23x-pqcj-7hfm, which bound the principal only on the HTTP handler thread.
CVSS v4.0
Score 5.3medium
Affected software
ArcadeData
arcadedb
pkg:maven/com.arcadedb/arcadedb-engineRun on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
CVE-2026-93596 affects ArcadeDB versions prior to 26.9.1 (specifically com.arcadedb:arcadedb-engine <= 26.8.1). The vulnerability is due to failure to bind the authenticated principal to asynchronous worker threads used in the parallel edge-connect phase of POST /api/v1/batch/{database}. Without the principal context, LocalDatabase.checkPermissionsOnFile prematurely returns, allowing writes that bypass per-type CREATE_RECORD/UPDATE_RECORD ACL enforcement. An authenticated user with CREATE_RECORD permission on an edge type but revoked permissions on a vertex type can exploit this to append edges to protected vertices, modifying graph adjacency without authorization. This is a partial regression of a previous fix (GHSA-c23x-pqcj-7hfm) that only bound the principal on the HTTP handler thread. Disabling parallelFlush (setting it to false) causes correct permission enforcement and request rejection.
Potential Impact
Authenticated low-privilege users can bypass per-type and per-group ACLs to modify protected graph vertices by appending edges, resulting in unauthorized modification of graph adjacency data. This can lead to integrity violations in graph data structures where vertex permissions are intended to restrict modifications. The impact is limited to environments relying on per-type or per-group ACLs and using parallelFlush=true in batch requests.
Mitigation Recommendations
A fixed version (26.9.1 or later) is available that addresses this issue by properly binding the authenticated principal to async worker threads. Until upgrading, setting the batch request parameter parallelFlush to false prevents exploitation by disabling the parallel edge-connect phase that triggers the vulnerability. Users should upgrade to version 26.9.1 or later to fully remediate this vulnerability.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- VulnCheck
- Date Reserved
- 2026-09-18T11:00:32.755Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 6aad3d5b55bf5e2cf51004f2
Added to database: 09/18/2026, 13:32:11 UTC
Last enriched: 09/18/2026, 13:47:43 UTC
Last updated: 09/18/2026, 23:26:23 UTC
Views: 11
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.