<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Arcadedb-Server (&lt; 26.7.2) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/arcadedb-server--26.7.2/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Thu, 16 Jul 2026 20:21:14 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/arcadedb-server--26.7.2/feed.xml" rel="self" type="application/rss+xml"/><item><title>ArcadeDB Cross-Database IDOR Vulnerability Allows Unauthorized Data Access</title><link>https://feed.craftedsignal.io/briefs/2026-07-arcadedb-idor/</link><pubDate>Thu, 16 Jul 2026 20:21:14 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-07-arcadedb-idor/</guid><description>ArcadeDB server versions prior to 26.7.2 are vulnerable to a cross-database Insecure Direct Object Reference (IDOR) due to improper authorization checks in several HTTP handlers, enabling a user authorized for a specific database to gain full read and write access to other unauthorized databases by directly accessing specific API endpoints.</description><content:encoded><![CDATA[<p>ArcadeDB, an open-source NoSQL graph database, contains a critical Insecure Direct Object Reference (IDOR) vulnerability (GHSA-x8mg-6r4p-87pf) affecting server versions prior to 26.7.2. This flaw allows a user with valid credentials, who is authorized to access only one database, to bypass authorization checks and gain full read and write access to other, unauthorized databases within the same ArcadeDB instance. The vulnerability stems from 14 specific HTTP handlers (including those for batch operations, time-series data, Prometheus, and Grafana integrations) which directly extend <code>AbstractServerHttpHandler</code> instead of the secure <code>DatabaseAbstractHandler</code>, failing to invoke the crucial <code>user.canAccessToDatabase()</code> function. Exploitation of this vulnerability grants attackers unauthorized control over sensitive data across different databases, posing a significant risk of data exfiltration, manipulation, or integrity compromise. This issue directly impacts organizations using ArcadeDB for multi-tenant or segmented data storage.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li><strong>Initial Authentication</strong>: An attacker obtains valid user credentials for an ArcadeDB instance, successfully authenticating and gaining authorized access to at least one specific database (e.g., 'DB A').</li>
<li><strong>Identify Vulnerable Endpoints</strong>: The attacker identifies specific ArcadeDB HTTP API endpoints, such as <code>/api/v1/batch/{db}</code>, <code>/api/v1/ts/{db}/write</code>, or <code>/api/v1/ts/{db}/prom/api/v1/query</code>, which are known to be affected by the IDOR vulnerability.</li>
<li><strong>Craft Malicious HTTP Request</strong>: The attacker crafts an HTTP request (GET or POST) targeting one of the identified vulnerable endpoints. Crucially, the attacker substitutes the database identifier in the URL path parameter (e.g., <code>{db}</code>) from their authorized database ('DB A') to an unauthorized target database ('DB B').</li>
<li><strong>Authorization Bypass</strong>: Upon receiving the request, the ArcadeDB server's vulnerable HTTP handler (e.g., PostBatchHandler or PostTimeSeriesWriteHandler) processes the <code>{database}</code> path parameter without invoking the necessary <code>user.canAccessToDatabase()</code> authorization check.</li>
<li><strong>Unauthorized Database Access</strong>: The server proceeds to resolve and access the target database ('DB B') despite the attacker's lack of explicit authorization for it.</li>
<li><strong>Perform Unauthorized Operations</strong>: The attacker successfully executes read (e.g., via <code>/api/v1/ts/b/prom/api/v1/query</code>) or write (e.g., via <code>/api/v1/batch/b</code> or <code>/api/v1/ts/b/write</code>) operations on the unauthorized 'DB B', receiving a &quot;200 OK&quot; HTTP status code.</li>
<li><strong>Data Exfiltration or Manipulation</strong>: Through these unauthorized operations, the attacker gains full control over 'DB B', allowing for data exfiltration, modification, or deletion, leading to compromise of data confidentiality and integrity.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this IDOR vulnerability allows an authenticated attacker to bypass authorization controls, gaining complete read and write access to any database within the ArcadeDB instance, regardless of their assigned permissions. This leads to a severe compromise of data confidentiality and integrity across all databases. Attackers can exfiltrate sensitive information, alter critical data, or even delete entire database contents. Organizations utilizing ArcadeDB for multi-tenant environments or to segregate data by user/department are particularly at risk, as an attacker with low-privilege access to one database could escalate their privileges to access all others.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li><strong>Patch ArcadeDB</strong>: Immediately upgrade ArcadeDB server instances to version 26.7.2 or later to apply the necessary security fixes.</li>
<li><strong>Monitor Webserver Logs</strong>: Deploy the Sigma rule in this brief to your SIEM and monitor webserver logs for HTTP requests targeting the vulnerable <code>/api/v1/batch/</code> and <code>/api/v1/ts/</code> API endpoints.</li>
<li><strong>Review Access Logs</strong>: Periodically review webserver access logs for anomalous requests to the <code>/api/v1/batch/{db}</code> and <code>/api/v1/ts/{db}/*</code> paths, particularly for requests to database names that the originating user should not have access to.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>idor</category><category>authorization-bypass</category><category>arcadedb</category><category>web-application</category></item></channel></rss>