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.
Published: 2026-09-15
Score: 10 Critical
EPSS: < 1% Very Low
KEV: No
Impact: Unauthenticated SQL execution and data modification
Action: Immediate Patch
AI Analysis

Impact

Without origin or host validation, the MySQL MCP server’s SSE transport exposes its execute_sql endpoint to anyone who can reach the service. An attacker who can reach the host directly, or who can trick a victim’s browser into performing same‑origin requests via DNS rebinding, can submit arbitrary SQL queries. This allows full reading and alteration of the configured MySQL database, and if the database account has FILE privileges, reading or writing arbitrary files on the server and potentially executing code. The weakness is a lack of authentication (CWE‑306) and missing origin validation (CWE‑346).

Affected Systems

All versions of designcomputer MySQL MCP Server released before 0.4.2 are vulnerable. The default transport that binds to 0.0.0.0 is the affected configuration; the stdio transport is unaffected.

Risk and Exploitability

With a CVSS score of 10, the vulnerability is classified as critical. The EPSS score is < 1%, indicating a very low but nonzero exploitation probability. The vulnerability is not yet listed in the CISA KEV catalog. An attacker could exploit it via direct network access to the SSE endpoints or via a browser exploiting DNS rebinding to send requests to the locally bound service. No special user privileges are required on the client side, and the impact spans confidentiality, integrity, and potentially availability of the database and underlying server.

Generated by OpenCVE AI on September 17, 2026 at 15:41 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the MySQL MCP Server to version 0.4.2 or newer, which implements security settings and DNS rebinding protection.
  • If upgrading is not immediately possible, reconfigure the service to bind only to trusted interfaces or localhost and restrict network access with firewall rules.
  • Ensure that any exposed MySQL accounts are granted the minimal privileges required for application use, eliminating FILE or superuser rights that could allow file access or code execution.

Generated by OpenCVE AI on September 17, 2026 at 15:41 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-rqfv-2mw9-78g2 MySQL MCP Server: Missing Origin/Host Validation in SSE Transport Enables Unauthenticated SQL Execution (DNS Rebinding / Direct Exposure)
History

Tue, 15 Sep 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Tue, 15 Sep 2026 16:00:00 +0000

Type Values Removed Values Added
First Time appeared Designcomputer
Designcomputer mysql-mcp-server
Vendors & Products Designcomputer
Designcomputer mysql-mcp-server

Tue, 15 Sep 2026 14:30:00 +0000

Type Values Removed Values Added
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.
Title MySQL MCP Server: Missing Origin/Host Validation in SSE Transport Enables Unauthenticated SQL Execution (DNS Rebinding / Direct Exposure)
Weaknesses CWE-306
CWE-346
References
Metrics cvssV3_1

{'score': 10, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H'}


Subscriptions

Designcomputer Mysql-mcp-server
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-15T15:08:40.961Z

Reserved: 2026-07-07T19:41:00.003Z

Link: CVE-2026-59971

cve-icon Vulnrichment

Updated: 2026-09-15T15:07:51.058Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-09-15T15:17:19.947

Modified: 2026-09-30T17:43:24.057

Link: CVE-2026-59971

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-17T15:45:17Z

Weaknesses
  • CWE-306

    Missing Authentication for Critical Function

  • CWE-346

    Origin Validation Error