Skip to content

CVE-2026-48774

Improper Input Validation: Is CVE-2026-48774 real, exploitable, or a false positive? Here's the community verdict.

signals

public sources

Exploited in wild
Not listed
CISA KEV
Public exploit
None known
Metasploit/EDB/PoC
Base severity
7.5 High
CVSS
Exploitation prob.
0.2%
FIRST EPSS
Weakness
CWE-20 · Improper Input Validation
CWE

High CVSS base score, but low real-world exploitation probability (EPSS). Likely less urgent than the score implies.

baseline read

auto · not a community verdict

Officially disputed

The CVE record itself is disputed or rejected upstream — a strong candidate for a false positive in scanners. Confirm with a verdict.

Based on NVD record status

Confirm or dispute →

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N

ProxySQL is a proxy for MySQL and its forks, as well as PostgreSQL. In versions 3.0.0 through 3.0.8, ProxySQL's GenAI/MCP `run_sql_readonly` tool violates its documented read-only contract for MySQL targets. The tool validates only the full input string with a substring blacklist and first-keyword allowlist, but then executes the entire SQL string on a backend connection created with `CLIENT_MULTI_STATEMENTS`. As a result, a caller can submit a read-only first statement followed by a side-effecting second statement, such as `SELECT 1; RENAME TABLE ...`. The validator accepts the payload because it starts with `SELECT` and because side-effecting MySQL statements such as `RENAME TABLE`, `SET`, `RESET`, `LOCK TABLES`, and `KILL` are not rejected by the blacklist. In a live MCP runtime test, the `/mcp/query` endpoint accepted a `run_sql_readonly` request. The MCP response reported success for the first `SELECT`, and direct backend verification showed that the table had actually been renamed. This violates the endpoint's read-only security contract and lets an MCP caller perform backend writes or administrative SQL, limited by the configured MCP target account's database privileges. Version 3.0.9 contains a fix. Other operator mitigations include: keeping MCP disabled unless required; setting a non-empty `mcp-query_endpoint_auth` token before exposing `/mcp/query`; restricting MCP listener network exposure; configuring MCP backend target credentials as database-level read-only users; and adding temporary MCP query rules to block obvious multi-statement patterns.

Published

Embed this verdict
TruePositive verdict for CVE-2026-48774
Markdown
[![TruePositive verdict](https://www.truepositive.app/cve/CVE-2026-48774/badge.svg)](https://www.truepositive.app/cve/CVE-2026-48774)
HTML
<a href="https://www.truepositive.app/cve/CVE-2026-48774"><img src="https://www.truepositive.app/cve/CVE-2026-48774/badge.svg" alt="TruePositive verdict for CVE-2026-48774"></a>

Live badge that updates automatically as the community verdict changes.

Community ground truth

Be the first practitioner to weigh in

So far this is only TruePositive's editorial baseline from public sources. Add your real-world verdict below — it becomes the signal the next person triaging this relies on.

🥇 The first 50 practitioners to contribute earn a Founding Contributor badge.

In your experience, is this finding real and exploitable?

awaiting field verdicts
Real, but not a risk here
Not a real issue

No account needed. Anonymous verdicts post as an unverified signal. Log in to make yours verified and earn reputation.

Field notes & remediation

Verdicts are the quick signal. Notes are the evidence and fixes behind them.

No notes yet. Be the first to share what you saw, or a fix that worked.

    Add a field note or remediationoptional
    Note type

    What are you adding?

    Markdown supported · minimum 20 characters.

    Same weakness: CWE-20 · Improper Input Validation.