Authorization Bypass in ArcadeDB SQL DEFINE FUNCTION
ArcadeDB versions before 26.7.2 contain an authorization bypass vulnerability (CVE-2026-67341) that permits unprivileged users to execute arbitrary JavaScript code via the DEFINE FUNCTION statement.
What's new
ArcadeDB versions prior to 26.7.2 are vulnerable to an authorization bypass flaw, tracked as CVE-2026-67341. The vulnerability exists within the SQL engine's handling of the DEFINE FUNCTION command when the LANGUAGE parameter is set to js. The application fails to properly enforce security checks that should restrict the registration of functions to administrative users. An attacker with database access can leverage this defect to register and execute arbitrary JavaScript code. This vulnerability has a critical impact, potentially allowing for full system compromise or unauthorized access to sensitive database data, as the code executes within the context of the database process.
Attack Chain
- Attacker establishes a connection to the target ArcadeDB instance.
- Attacker crafts a malicious SQL
DEFINE FUNCTIONstatement specifyingLANGUAGE js. - Attacker embeds arbitrary JavaScript payload into the function body.
- Attacker executes the SQL statement against the target database.
- The ArcadeDB engine fails to validate the user's authorization level for the
DEFINE FUNCTIONoperation. - The database engine registers the malicious function.
- Attacker invokes the newly created function to execute the malicious JavaScript payload.
- Attacker achieves command execution within the database engine context.
Impact
Successful exploitation of this vulnerability allows unauthorized users to achieve arbitrary code execution within the database engine. This can lead to full compromise of the database integrity, confidentiality, and availability, depending on the permissions of the database process. The vulnerability affects all ArcadeDB deployments running versions prior to 26.7.2.
Recommendation
- Upgrade all ArcadeDB instances to version 26.7.2 or later immediately to address the authorization check failure.
- Audit database logs for the usage of the
DEFINE FUNCTIONcommand, specifically looking for JavaScript-based functions created by non-administrative service accounts. - Restrict network access to the ArcadeDB management ports to prevent unauthorized actors from reaching the database interface.
- Monitor database activity for unexpected execution of custom functions.
Detection coverage 2
Detect CVE-2026-67342 Exploitation - ArcadeDB Unauthorized API Access
highDetects potential exploitation of CVE-2026-67342 by monitoring for unauthorized access attempts to sensitive ArcadeDB endpoints.
Detect ArcadeDB Cluster Token Impersonation
highDetects exploitation of CVE-2026-67343 by identifying suspicious requests using the cluster token impersonation headers.
Detection queries are available on the platform. Get full rules →