Vulnerability DatabaseGHSA-2fw8-7jmw-r937

GHSA-2fw8-7jmw-r937: 
JavaScript vulnerability analysis and mitigation

Summary

After a user calls a tool on a malicious MCP server, the server can return a result that triggers catastrophic backtracking in its advertised outputSchema.pattern. Inspector validates that result synchronously on the UI path, so the app can become unresponsive.

Details

Inspector treats a remote server’s outputSchema as trusted validator input. After a tool call it runs the server’s schema (including any pattern) against the server’s structuredContent on the main thread with no complexity limit or timeout. Key locations (v2, reviewed revision 0cac110a809e93753fa353810b9b4c91e89810fc): core/mcp/inspectorClient.ts (~4214-4219, 4313-4318): calls validateToolOutput after receiving the result and constructs an AjvJsonSchemaValidator. core/mcp/toolOutputValidation.ts (~41-43): compiles and executes the validator synchronously: const validate = provider.getValidator(tool.outputSchema as JsonSchemaType); const validation = validate(structured); return validation.valid ? undefined : validation.errorMessage; A classic ReDoS pattern such as ^(a+)+$ combined with a near-match string of as produces exponential slowdown. Bounded local tests with AJV 8.20.0 showed clear nonlinear growth (tens to hundreds of ms at ~20–26 characters; longer inputs become practical stalls).

Proof of concept

  1. Run a malicious MCP server that advertises a tool whose outputSchema contains a ReDoS pattern, e.g.: { "type": "object", "properties": { "data": { "type": "string", "pattern": "^(a+)+$" } } }
  2. On tool call, return a near-match payload, e.g. a long string of as that fails only at the end.
  3. Connect to the server with Inspector v2 and invoke the tool. Observed behavior (helper-level probe):

~5–46 ms at 20 as ~289–300 ms at 26 as Exponential trend continues with longer inputs, stalling the synchronous validation path.

Impact

A connected malicious MCP server can make the Inspector unresponsive while processing the tool result. The user must initiate the connection and the tool call. No established information disclosure, integrity violation, or remote code execution. A validator timeout or worker isolation would mitigate it.


Source: NVD

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

GHSA-2rxj-6v32-2v6jHIGH8.2
  • JavaScript logoJavaScript
  • parse-server
NoYesNov 04, 2026
GHSA-4997-47j2-9w2qHIGH8.1
  • JavaScript logoJavaScript
  • teamctx
NoYesNov 04, 2026
GHSA-2w5v-vj22-jp27MEDIUM6.8
  • JavaScript logoJavaScript
  • basic-ftp
NoYesNov 04, 2026
GHSA-2fw8-7jmw-r937MEDIUM6.5
  • JavaScript logoJavaScript
  • @modelcontextprotocol/inspector
NoYesNov 04, 2026
CVE-2026-121707MEDIUMN/A
  • JavaScript logoJavaScript
  • effect
NoYesNov 04, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Additional Wiz resources

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management