Skip to main content

ArcadeDB EUVDEUVD-2026-78786

| CVE-2026-54077 HIGH
Path Traversal (CWE-22)
2026-07-16 https://github.com/ArcadeData/arcadedb GHSA-8w86-m9h8-hvqg
7.1
CVSS 3.1 · Vendor: https://github.com/ArcadeData/arcadedb
Share

Severity by source

Vendor (https://github.com/ArcadeData/arcadedb) PRIMARY
7.1 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:L
vuln.today AI
7.6 HIGH

Network-reachable SQL endpoint with only low-privileged authentication (PR:L), no user interaction; high confidentiality from file/metadata read, low integrity since fetched data is written as records, low availability from DTD entity expansion.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (https://github.com/ArcadeData/arcadedb).

CVSS VectorVendor: https://github.com/ArcadeData/arcadedb

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
Low

Lifecycle Timeline

3
Source Code Evidence Fetched
Jul 16, 2026 - 20:33 vuln.today
Analysis Generated
Jul 16, 2026 - 20:33 vuln.today
CVE Published
Jul 16, 2026 - 20:05 github-advisory
HIGH 7.1

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 16 maven packages depend on com.arcadedb:arcadedb-engine (8 direct, 8 indirect)

Ecosystem-wide dependent count for version 26.6.1.

DescriptionCVE.org

Impact

The SQL IMPORT DATABASE statement did not require administrative privileges and passed its source URL to the importer without validation. Any authenticated user with SQL command access (not only root/administrators) could therefore:

  • Server-Side Request Forgery (CWE-918): cause the server to issue HTTP(S) requests to arbitrary destinations, including cloud metadata endpoints (e.g. 169.254.169.254) and internal-only services, and ingest the responses as queryable records.
  • Arbitrary local file read (CWE-22): read local files reachable by the server process (e.g. /etc/passwd, credential files) by importing file:// paths, exposing their contents as records.

The server administration endpoint (/api/v1/server) was already restricted to the root user and was not affected; the exposure was through the database SQL command/query endpoints (/api/v1/command, /api/v1/query).

A related lower-severity hardening gap (CWE-776): the XML importer did not disable DTD processing, leaving entity-expansion (Billion Laughs) possible.

Affected component

integration/src/main/java/com/arcadedb/integration/importer/SourceDiscovery.java (no host allow-list for http(s); no path validation for file://), reached from engine/.../query/sql/parser/ImportDatabaseStatement.java.

Patches

  • IMPORT DATABASE now requires the administrative updateSecurity permission (no-op in embedded mode).
  • Import sources are validated in SourceDiscovery: HTTP(S) hosts resolving to loopback / link-local / private (site-local) / wildcard / multicast addresses are blocked by default (arcadedb.server.security.importBlockLocalNetworks, default true), and an optional local-path allow-list (arcadedb.server.security.importAllowedLocalPaths) restricts file:// reads.
  • The XML importer now disables DTD processing and external entities.

Fixed in commit referenced by pull request #4422.

Workarounds

Restrict SQL command/query access to trusted administrative users; do not grant query access to untrusted users on servers that can reach sensitive networks or hold sensitive local files. Upgrading is strongly recommended.

Credit

Reported by Bin Luo (luob87709@gmail.com).

AnalysisAI

Server-Side Request Forgery and arbitrary local file read in ArcadeDB before 26.6.1 let any authenticated user with SQL command/query access - not just root/administrators - abuse the SQL IMPORT DATABASE statement, whose source URL was passed to the importer unchecked. Because it required no administrative privileges, a low-privileged user could force the server to fetch arbitrary HTTP(S) endpoints (including cloud metadata at 169.254.169.254 and internal-only services) and ingest the responses as queryable records, or read local files such as /etc/passwd and credential files via file:// paths. No public exploit identified at time of analysis; the flaw was privately reported and fixed in release 26.6.1.

Technical ContextAI

ArcadeDB is a Java-based multi-model (graph/document/key-value/time-series) database exposing an HTTP API and an OrientDB-like SQL dialect. The vulnerability lives in the importer subsystem: integration/src/main/java/com/arcadedb/integration/importer/SourceDiscovery.java had no host allow-list for http(s) sources and no path validation for file:// sources, and it was reachable from engine/.../query/sql/parser/ImportDatabaseStatement.java via the /api/v1/command and /api/v1/query endpoints. The primary root cause is CWE-22 (Path Traversal / improper limitation of a pathname) for the file:// local-file read, combined with CWE-918 (SSRF) for the outbound-request abuse - a classic pattern where a user-supplied URL is dereferenced server-side without scheme, host, or path restrictions. A secondary CWE-776 (improper restriction of recursive entity references) exists because the XML importer left DTD processing and external entities enabled, permitting Billion Laughs entity-expansion. The already-hardened /api/v1/server administration endpoint (root-only) was not the exposure path; the SQL command/query endpoints were.

RemediationAI

Vendor-released patch: upgrade to ArcadeDB 26.6.1 (https://github.com/ArcadeData/arcadedb/releases/tag/26.6.1), which fixes the issue via pull request #4422. The patch requires the administrative updateSecurity permission to run IMPORT DATABASE, validates import sources in SourceDiscovery so HTTP(S) hosts resolving to loopback, link-local, private/site-local, wildcard, or multicast addresses are blocked by default (config arcadedb.server.security.importBlockLocalNetworks, default true), adds an optional file:// allow-list (arcadedb.server.security.importAllowedLocalPaths), and disables DTD/external-entity processing in the XML importer. If you cannot upgrade immediately, apply the vendor workaround: restrict SQL command/query access (/api/v1/command, /api/v1/query) to trusted administrative users only and do not grant SQL query access to untrusted or lower-tier users - the trade-off is reduced self-service query access for non-admin accounts. As additional compensating controls, place the server on a network segment that cannot reach cloud metadata endpoints (169.254.169.254) or sensitive internal services, and run the server process under a least-privilege OS account whose filesystem access excludes credential and secret files, accepting that this constrains legitimate local-import use cases. Consult GHSA-8w86-m9h8-hvqg for authoritative details.

More in Java

View all
CVE-2012-4681 CRITICAL POC
9.8 Aug 28

Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m

CVE-2015-7450 CRITICAL POC
9.8 Jan 02

Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti

CVE-2013-2465 CRITICAL POC
9.8 Jun 18

Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2010-1871 HIGH POC
8.8 Aug 05

JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to

CVE-2012-1723 CRITICAL POC
9.8 Jun 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2012-0507 CRITICAL POC
9.8 Jun 07

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up

CVE-2015-4852 CRITICAL POC
9.8 Nov 18

The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers

CVE-2012-5076 CRITICAL POC
9.8 Oct 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow

CVE-2017-3066 CRITICAL POC
9.8 Apr 27

Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla

CVE-2012-0391 CRITICAL POC
9.8 Jan 08

The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during

Share

EUVD-2026-78786 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy