Skip to main content
VulnerabilityPublished

CVE-2026-59971: MySQL MCP Server · Missing Origin/Host Validation in SSE Transport Enables Unauthenticated SQL Execution (DNS Rebinding / Direct Exposure)

Affects mysql-mcp-serverSource GCVE Database

0
Authoritative record:CVE-2026-59971· Critical 10.0

Not known to be exploited · CVSS 10.0 Critical : upgrade to 0.4.2 as a priority.

Data as of 27 Oct 2026, 05:11 UTC

CVSS 3.1 base score
10.0Critical
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.4% chance of exploitation in 30 days – higher than 35% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 0.4.2
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 15 Sep 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.

What to do

Upgrade mysql-mcp-server to 0.4.2.

Affected software

ProductAffectedFixed in
PyPImysql-mcp-serverAffected
  • <0.4.2
Fixed in
  • 0.4.2

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

A fix is available in mysql-mcp-server version 0.4.2, which enables DNS rebinding protection by passing TransportSecuritySettings(enable_dns_rebinding_protection=True) to SseServerTransport and recommends binding the service to 127.0.0.1. Users should upgrade to version 0.4.2 or later. Until upgraded, restrict network exposure of the service and avoid using SSE transport mode with default settings.

Description

MySQL MCP Server is a Model Context Protocol server that enables secure interaction with MySQL databases. Prior to 0.4.2, setting MCP_TRANSPORT=sse causes src/mysql_mcp_server/server.py to construct SseServerTransport without security_settings or enable_dns_rebinding_protection, while the Starlette routes /, /sse, and /messages/ have no authentication and the service binds to 0.0.0.0 by default. A network attacker can directly reach execute_sql, or can use DNS rebinding to make a victim's browser relay same-origin requests to a locally bound service, and supply a query that reaches cursor.execute(query). This allows unauthenticated disclosure and modification of the configured database; when the MySQL account has FILE privileges, the same access can read or write server files and may enable code execution. The default stdio transport is not affected. This issue is fixed in 0.4.2.

References

Community reviews

Loading reviews…