<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://cve.radiocsirt.org</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Mon, 05 Oct 2026 14:37:30 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-358626</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-358626</link>
      <description>EUVD-2026-358626</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-358626</guid>
    </item>
    <item>
      <title>fkie_cve-2026-47735</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2026-47735</link>
      <description>&lt;p&gt;Arc is an open, SQL-native time-series database for telemetry. Prior to version 26.06.1, Arc&amp;#39;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`.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Arc is an open, SQL-native time-series database for telemetry. Prior to version 26.06.1, Arc&amp;#39;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`.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2026-47735</guid>
    </item>
    <item>
      <title>GHSA-p2j4-c4g6-rpf5 — Arc has an authenticated arbitrary local-file read via DuckDB I/O functions that bypasses RBAC table-level checks</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-p2j4-c4g6-rpf5</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: github.com/basekick-labs/arc&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;Arc&amp;#39;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.&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;Any authenticated user, including a token with `permissions: []`, can read arbitrary local files via:&lt;/p&gt;
&lt;p&gt;```
POST /api/v1/query
Authorization: Bearer &amp;lt;token&amp;gt;
{&amp;#34;sql&amp;#34;: &amp;#34;SELECT * FROM read_csv_auto(&amp;#39;/etc/passwd&amp;#39;, header=false, columns={&amp;#39;l&amp;#39;:&amp;#39;VARCHAR&amp;#39;}) LIMIT 5&amp;#34;}
```&lt;/p&gt;
&lt;p&gt;Confirmed reachable targets:&lt;/p&gt;
&lt;p&gt;- `auth.db` — bcrypt hashes for every API token, plus legacy SHA-256 rows.
- `arc.toml` — S3 secrets, TLS keys.
- `/proc/self/environ` — environment-variable secrets.
- Cross-tenant Parquet files — bypasses RBAC because the tenant scope is enforced at the table layer, not on raw file paths.
- SSRF when `httpfs` is loaded (any S3-backed deployment) — `read_csv_auto(&amp;#39;http://169.254.169.254/latest/meta-data/...&amp;#39;)` reaches instance metadata IPs.&lt;/p&gt;
&lt;p&gt;### Patches&lt;/p&gt;
&lt;p&gt;Fixed in 2026.06.1 (PR #442) via a structural sandbox at the DuckDB layer:&lt;/p&gt;
&lt;p&gt;1. `SET GLOBAL allowed_directories = [...]` enumerates Arc&amp;#39;s legitimate filesystem prefixes (storage roots + tier prefixes + import upload dir + com…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: github.com/basekick-labs/arc&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;Arc&amp;#39;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.&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;Any authenticated user, including a token with `permissions: []`, can read arbitrary local files via:&lt;/p&gt;
&lt;p&gt;```
POST /api/v1/query
Authorization: Bearer &amp;lt;token&amp;gt;
{&amp;#34;sql&amp;#34;: &amp;#34;SELECT * FROM read_csv_auto(&amp;#39;/etc/passwd&amp;#39;, header=false, columns={&amp;#39;l&amp;#39;:&amp;#39;VARCHAR&amp;#39;}) LIMIT 5&amp;#34;}
```&lt;/p&gt;
&lt;p&gt;Confirmed reachable targets:&lt;/p&gt;
&lt;p&gt;- `auth.db` — bcrypt hashes for every API token, plus legacy SHA-256 rows.
- `arc.toml` — S3 secrets, TLS keys.
- `/proc/self/environ` — environment-variable secrets.
- Cross-tenant Parquet files — bypasses RBAC because the tenant scope is enforced at the table layer, not on raw file paths.
- SSRF when `httpfs` is loaded (any S3-backed deployment) — `read_csv_auto(&amp;#39;http://169.254.169.254/latest/meta-data/...&amp;#39;)` reaches instance metadata IPs.&lt;/p&gt;
&lt;p&gt;### Patches&lt;/p&gt;
&lt;p&gt;Fixed in 2026.06.1 (PR #442) via a structural sandbox at the DuckDB layer:&lt;/p&gt;
&lt;p&gt;1. `SET GLOBAL allowed_directories = [...]` enumerates Arc&amp;#39;s legitimate filesystem prefixes (storage roots + tier prefixes + import upload dir + com…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-p2j4-c4g6-rpf5</guid>
    </item>
  </channel>
</rss>
