CVE-2025-66414

N/A Unknown

📋 TL;DR

This vulnerability allows malicious websites to bypass same-origin policy restrictions via DNS rebinding attacks against local HTTP-based MCP servers running without authentication. It affects users running MCP TypeScript SDK HTTP servers locally without DNS rebinding protection enabled. Attackers could invoke tools or access resources exposed by the vulnerable MCP server.

💻 Affected Systems

Products:
  • MCP TypeScript SDK
Versions: All versions prior to 1.24.0
Operating Systems: All operating systems running Node.js/TypeScript
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects HTTP-based servers using StreamableHTTPServerTransport or SSEServerTransport without authentication and without DNS rebinding protection enabled. Does not affect stdio transport servers.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

An attacker could execute arbitrary tools or access sensitive resources exposed by the MCP server, potentially leading to data theft, system compromise, or unauthorized actions on the local system.

🟠

Likely Case

Limited access to specific tools or resources exposed by the MCP server, depending on what the server makes available to clients.

🟢

If Mitigated

No impact if servers use stdio transport, have authentication enabled, or run with DNS rebinding protection enabled.

🌐 Internet-Facing: LOW - The vulnerability requires local HTTP servers without authentication, which are not typically internet-facing.
🏢 Internal Only: MEDIUM - Risk exists for internal users who run vulnerable local MCP servers and visit malicious websites that can perform DNS rebinding attacks.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

Exploitation requires a malicious website that can perform DNS rebinding attacks and a user visiting that site while running a vulnerable local MCP server.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.24.0

Vendor Advisory: https://github.com/modelcontextprotocol/typescript-sdk/security/advisories/GHSA-w48q-cv73-mx4w

Restart Required: Yes

Instructions:

1. Update MCP TypeScript SDK to version 1.24.0 or later using npm: npm update @modelcontextprotocol/sdk. 2. Restart any running MCP servers to apply the fix.

🔧 Temporary Workarounds

Enable DNS rebinding protection

all

Manually enable DNS rebinding protection on HTTP-based MCP servers

Set enableDnsRebindingProtection: true in server configuration

Use authentication

all

Enable authentication on HTTP-based MCP servers as recommended by MCP security best practices

Configure authentication according to MCP documentation

Use stdio transport

all

Switch from HTTP-based transport to stdio transport which is not affected

Change transport configuration to use stdio instead of HTTP

🧯 If You Can't Patch

  • Enable DNS rebinding protection on all HTTP-based MCP servers
  • Implement authentication on all HTTP-based MCP servers
  • Consider using stdio transport instead of HTTP transport

🔍 How to Verify

Check if Vulnerable:

Check if using MCP TypeScript SDK version <1.24.0 and running HTTP-based servers without enableDnsRebindingProtection enabled

Check Version:

npm list @modelcontextprotocol/sdk

Verify Fix Applied:

Verify MCP TypeScript SDK version is 1.24.0 or higher and DNS rebinding protection is enabled by default

📡 Detection & Monitoring

Log Indicators:

  • Unexpected requests to local MCP servers from external sources
  • DNS rebinding attempts in network logs

Network Indicators:

  • DNS queries with short TTL followed by HTTP requests to localhost
  • Cross-origin requests to local MCP server ports

SIEM Query:

source_ip=external AND dest_ip=127.0.0.1 AND dest_port=(MCP_server_port) AND protocol=HTTP

🔗 References

📤 Share & Export