Skip to main content

Tabularis EUVDEUVD-2026-96430

| CVE-2026-108604 MEDIUM
Incorrect Authorization (CWE-863)
2026-10-10 VulnCheck GHSA-jj9h-m6r9-g37h
5.8
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Deliver prompt injection to agent or connect rogue MCP client
  2. Delivery
    Craft SELECT wrapping side-effecting function
  3. Exploit
    Bypass run_query read-only classifier
  4. Execution
    Execute DELETE/setval on PostgreSQL
  5. Impact
    Modify or destroy data without approval

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires a Tabularis instance (≤0.27.0) using its MCP run_query feature with an AI agent or MCP client connected in read-only mode against a backend (PostgreSQL) that exposes side-effecting functions such as setval, nextval, or query_to_xml. Exploitation depends on the attacker either influencing the agent via prompt injection or acting as an untrusted/malicious MCP client, and on the user operating that agent (UI:P). Limiting factors: exploitation is local to the MCP channel (AV:L), not remote/network-facing; it only matters when read-only mode is relied upon as a safety control; and impact is confined to data integrity/availability on the connected database with no confidentiality exposure.

Impact

This is a moderate-severity authorization flaw (CVSS 4.0 base 5.8) whose real-world risk is tightly bounded by its preconditions rather than its impact. The vector CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:P/VC:N/VI:H/VA:H is internally consistent with the description: AV:L reflects that exploitation occurs through a locally-connected MCP client/agent rather than over the network, AT:P and UI:P capture the dependency on an AI agent processing attacker-influenced input (prompt injection) and a user operating that agent, and VI:H/VA:H with VC:N correctly captures a data-integrity/availability problem (unapproved DELETE/setval) with no confidentiality loss. PR:N indicates no authentication to the Tabularis MCP surface, but this is mitigated by AV:L and UI:P. No EPSS score, no CISA KEV listing, and no POC flag were provided in the input, so there is no signal of active or widespread exploitation; a public technical write-up (hackmd) and the exact vulnerable source lines are referenced, which lowers the bar for exploit development but does not by itself constitute confirmed exploit code. There is no SSVC decision data in the input. Net: this is a legitimate but situational issue - a priority only for environments actually running Tabularis with AI/MCP integration against writable databases, not a broad emergency. Note one tension to verify: the 'Authentication Bypass' tag conflicts with the actual weakness (CWE-863 incorrect authorization / read-only-mode bypass), which is an authorization control failure, not an authentication bypass.

Exploit ScenarioDerived

A user runs Tabularis (≤0.27.0) with an AI agent over MCP in read-only mode against a PostgreSQL database. An attacker plants a prompt injection in data the agent ingests, or connects as an untrusted MCP client, and submits a statement that is classified as a benign SELECT but wraps a side-effecting function (e.g., query_to_xml containing a DELETE, or setval/nextval). The run_query safety gate approves it as read-only, so the write executes without the normal approval prompt. No public exploit code is identified at time of analysis, though a technical write-up and the vulnerable code lines are publicly referenced.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 10, 2026

Read-only mode bypass in Tabularis through 0.27.0 lets prompt-injected AI agents or untrusted MCP clients execute data-modifying SQL that the run_query safety gate misclassifies as read-only, allowing side-effecting statements such as setval, nextval, or PostgreSQL query_to_xml with an embedded DELETE to alter or destroy data without triggering an approval prompt. The issue is a local, MCP-channel authorization flaw (assessed CVSS:3.1 AV:L/AC:L/PR:N/UI:R, C:N/I:H/A:H; CVSS 4.0 base 5.8) that only matters when read-only mode is relied upon as a security control against a backend exposing such functions, and the provided CVSS vector indicates no privileges are required (PR:N) while the operator still must interact with the agent (UI:P). No public exploit code was identified at time of analysis and there is no CISA KEV listing, so risk is driven by preconditions-an exposed MCP run_query connection to PostgreSQL-rather than by active exploitation.

RemediationAI

No vendor-released patch was identified at time of analysis, and the advisory covers all Tabularis versions through 0.27.0, so administrators should plan to upgrade to the first release after 0.27.0 once it is published and meanwhile treat the built-in read-only mode as unreliable. The most effective compensating control is to enforce read-only semantics at the database rather than in the MCP gate: connect the agent using a PostgreSQL role that has no INSERT, UPDATE, DELETE, or sequence-modification privileges, or set the session to a read-only transaction (default_transaction_read_only = on), which blocks the write paths the bypass exploits-at the cost of breaking any legitimate write workflow that shares that credential. Alternatively or additionally, revoke EXECUTE on side-effecting functions from the connection role (REVOKE EXECUTE ON FUNCTION setval(...), nextval(...), query_to_xml(...) FROM the MCP role), accepting the trade-off that legitimate applications depending on sequence advancement through the same role will fail. Where practical, disable the MCP run_query capability or restrict which MCP clients and agents may connect, and do not expose production database credentials to prompt-driven agents, since prompt injection is a stated exploitation precondition. Monitor database audit logs for SELECT statements invoking setval, nextval, or query_to_xml as an interim detection measure. Consult the VulnCheck advisory (https://www.vulncheck.com/advisories/tabularis-through-0.27.0-read-only-bypass-via-mcp-run-query-select-classification) and the upstream repository (https://github.com/TabularisDB/tabularis) for updated fix guidance; released patch versions are not confirmed by the available data.

Affected VersionsENISA

tabularis 0 ≤0.27.0

Affected Packages

euvd tabularis no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability resides in Tabularis's Model Context Protocol (MCP) integration, specifically the run_query safety gate in src-tauri/src/mcp/mod.rs (lines ~1136-1171) and the AI activity handling in src-tauri/src/ai_activity.rs (lines ~357-416). That gate attempts to enforce a read-only mode by classifying incoming SQL statements-presumably treating statements beginning with SELECT as harmless-but it does not account for PostgreSQL functions that perform writes while being invoked through a SELECT expression. Functions such as setval and nextval mutate sequence state, and query_to_xml can encapsulate and execute embedded DML including DELETE, so a SELECT-shaped statement can carry side effects. This is CWE-863 (Incorrect Authorization): the authorization decision is based on an insufficient check of statement semantics rather than on actual capability. Because MCP is designed to let external AI agents and clients drive tool calls, a prompt-injected agent or a malicious untrusted MCP client can supply a crafted statement that passes the gate, defeating the read-only guarantee without producing an approval prompt. The CPE cpe:2.3:a:tabularisdb:tabularis:*:*:*:*:*:*:*:* marks all Tabularis builds up to and including 0.27.0 as potentially affected, with a PostgreSQL backend required for the side-effecting function classes described.

Know when Tabularis gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 5.8 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:P/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.1 HIGH

Exploitation runs through a local MCP agent channel (AV:L) with no authentication to that surface (PR:N) but needs a user operating the agent (UI:R); impact is unapproved writes/deletes, so I:H/A:H and C:N.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Tabularis through 0.27.0 contains an incorrect authorization vulnerability in the MCP run_query safety gate that allows prompt-injected agents or untrusted MCP clients to bypass read-only mode by submitting side-effecting SELECT statements. Attackers can run statements like SELECT setval, nextval, or PostgreSQL query_to_xml with embedded DELETE to modify data without approval prompts.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Low
niche open-source AI database client, small deployment footprint
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

29
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +29
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

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