Description
Arc is an open, SQL-native time-series database for telemetry. Prior to version 26.06.1, Arc's user-SQL validator (`internal/api/query.go:ValidateSQLRequest`) blocked only `read_parquet(` and `arc_partition_agg(` via regex denylist. The broader DuckDB I/O function family — `read_csv_auto`, `read_csv`, `read_json`, `read_json_auto`, `read_text`, `read_blob`, `glob`, `parquet_metadata`, `parquet_schema`, `read_xlsx`, etc. — was not blocked. RBAC table-reference extraction inspected only `FROM`/`JOIN` clauses, so scalar table functions in the `SELECT` list slipped past both layers. This is fixed in 2026.06.1 via a structural sandbox at the DuckDB layer. After lockdown, DuckDB refuses to open any file outside the allowlist and refuses further `INSTALL`/`LOAD`. Already-loaded extensions remain callable. Some workarounds are available. Restrict API access to known-trusted networks via firewall rules or, as a temporary mitigation, add `read_csv*`/`read_json*`/`glob` etc. to `dangerousSQLPattern` in `internal/api/query.go`.
Published: 2026-08-21
Score: 7.1 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Arc, an open SQL‑native time‑series database, contains an authenticated local‑file read flaw that allows a user with legitimate credentials to extract arbitrary files from the host. The vulnerability arises because the user‑SQL validator only blocks a narrow set of DuckDB I/O functions, while the broader set of functions such as read_csv, read_json, and glob are not restricted. RBAC checks that inspect FROM and JOIN clauses are bypassed because scalar table functions used in the SELECT list do not trigger table‑level enforcement. The flaw thereby permits reading sensitive files, violating confidentiality and potentially exposing credentials or configuration data, as identified by CWE‑200, CWE‑22, and CWE‑918.

Affected Systems

The affected product is Basekick‑Labs Arc. Versions prior to 26.06.1 are impacted; all releases 26.06.1 and newer contain the structural sandbox that blocks file access outside the allowlist. Users of older releases should verify their installed version against this fix.

Risk and Exploitability

The CVSS score is 7.1, indicating high risk. Exploitation requires authentication and requires that the attacker is a valid Arc user; no remote unauthenticated vector is present. EPSS data is not available and the vulnerability is currently not listed in CISA’s KEV catalog, so the likelihood of exploitation is uncertain, but the potential impact on confidential data is significant. Once patched, the database will refuse to open files outside the allowed list and reject further INSTALL/LOAD operations, preventing the flaw from being reused beyond pre‑loaded extensions.

Generated by OpenCVE AI on August 22, 2026 at 00:21 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to Arc 26.06.1 or later to enforce DuckDB sandbox restrictions
  • Configure firewall rules to restrict API access to trusted networks only
  • If an immediate upgrade is not possible, edit internal/api/query.go to add read_csv*, read_json*, glob, etc. to the dangerousSQLPattern list as a temporary mitigation
  • Consider disabling the affected DuckDB I/O functions for users who do not require them

Generated by OpenCVE AI on August 22, 2026 at 00:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-p2j4-c4g6-rpf5 Arc has an authenticated arbitrary local-file read via DuckDB I/O functions that bypasses RBAC table-level checks
History

Fri, 21 Aug 2026 23:00:00 +0000

Type Values Removed Values Added
Description Arc is an open, SQL-native time-series database for telemetry. Prior to version 26.06.1, Arc's user-SQL validator (`internal/api/query.go:ValidateSQLRequest`) blocked only `read_parquet(` and `arc_partition_agg(` via regex denylist. The broader DuckDB I/O function family — `read_csv_auto`, `read_csv`, `read_json`, `read_json_auto`, `read_text`, `read_blob`, `glob`, `parquet_metadata`, `parquet_schema`, `read_xlsx`, etc. — was not blocked. RBAC table-reference extraction inspected only `FROM`/`JOIN` clauses, so scalar table functions in the `SELECT` list slipped past both layers. This is fixed in 2026.06.1 via a structural sandbox at the DuckDB layer. After lockdown, DuckDB refuses to open any file outside the allowlist and refuses further `INSTALL`/`LOAD`. Already-loaded extensions remain callable. Some workarounds are available. Restrict API access to known-trusted networks via firewall rules or, as a temporary mitigation, add `read_csv*`/`read_json*`/`glob` etc. to `dangerousSQLPattern` in `internal/api/query.go`.
Title Arc has an authenticated arbitrary local-file read via DuckDB I/O functions that bypasses RBAC table-level checks
Weaknesses CWE-200
CWE-22
CWE-918
References
Metrics cvssV4_0

{'score': 7.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-21T22:42:55.886Z

Reserved: 2026-05-19T22:16:39.503Z

Link: CVE-2026-47735

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-21T23:16:24.917

Modified: 2026-08-21T23:16:24.917

Link: CVE-2026-47735

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-22T00:30:16Z

Weaknesses
  • CWE-200

    Exposure of Sensitive Information to an Unauthorized Actor

  • CWE-22

    Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

  • CWE-918

    Server-Side Request Forgery (SSRF)