Skip to main content

wezterm-mcp CVE-2026-10279

| EUVDEUVD-2026-33731 LOW
OS Command Injection (CWE-78)
2026-06-01 VulDB GHSA-xrc9-g9fm-hq32
2.1
CVSS 4.0 · Vendor: VulDB

Severity by source

Vendor (VulDB) PRIMARY
2.1 LOW
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

Primary rating from Vendor (VulDB) · only source for this CVE.

CVSS VectorVendor: VulDB

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
X

Lifecycle Timeline

3
Analysis Generated
Jun 01, 2026 - 19:37 vuln.today
Severity Changed
Jun 01, 2026 - 19:22 NVD
MEDIUM LOW
CVSS changed
Jun 01, 2026 - 19:22 NVD
6.3 (MEDIUM) 2.1 (LOW)

DescriptionCVE.org

A vulnerability was identified in hiraishikentaro wezterm-mcp 0.1.0. The affected element is an unknown function of the file src/wezterm_executor.ts of the component switch_pane/write_to_specific_pane. The manipulation of the argument request.params.arguments.pane_id leads to os command injection. The attack can be initiated remotely. The exploit is publicly available and might be used. The project was informed of the problem early through an issue report but has not responded yet.

AnalysisAI

OS command injection in wezterm-mcp 0.1.0 allows a remotely authenticated attacker with low privileges to execute arbitrary shell commands by supplying a crafted pane_id argument to the switch_pane or write_to_specific_pane MCP tool handlers. The unsanitized parameter is passed directly to a shell invocation in src/wezterm_executor.ts, giving an MCP client - such as an AI assistant or automation pipeline - the ability to break out of intended terminal pane management and run arbitrary commands in the host user's context. Publicly available exploit code exists per a GitHub issue report; no patch has been released as the vendor has not responded to the disclosure.

Technical ContextAI

wezterm-mcp is a Model Context Protocol (MCP) server written in TypeScript that exposes WezTerm terminal emulator functionality - including pane switching and writing - to AI agents and automation clients over the MCP interface. The root cause (CWE-78: OS Command Injection) lies in src/wezterm_executor.ts, where the pane_id field from the incoming MCP tool request (request.params.arguments.pane_id) is interpolated directly into a shell command string without sanitization or validation. Because MCP servers are typically invoked by AI assistants or orchestration tools that accept attacker-influenced input, the injection surface is reachable by any client authorized to call these tools. Affected product is identified by CPE cpe:2.3:a:hiraishikentaro:wezterm-mcp:*:*:*:*:*:*:*:*, covering version 0.1.0 and any earlier releases matching the wildcard.

RemediationAI

No vendor-released patch has been identified at time of analysis; the project maintainer has not responded to the disclosure report filed via GitHub issue #7. Organizations using wezterm-mcp should immediately consider disabling or removing the package from any environment where MCP tool arguments may be influenced by untrusted input - including AI assistant integrations, CI pipelines, or multi-user MCP deployments - as the injection surface cannot be mitigated at the network layer alone. As a specific compensating control, restrict invocation of the switch_pane and write_to_specific_pane MCP tools to trusted, internally generated callers only, and validate pane_id values against a strict allowlist of known integer or alphanumeric pane identifiers before passing them to any shell context. Organizations capable of patching the source directly should modify src/wezterm_executor.ts to pass pane_id as a positional argument to a child process rather than interpolating it into a shell string, eliminating the injection vector without functional trade-off. Monitor the upstream repository at https://github.com/hiraishikentaro/wezterm-mcp/ and VulDB entry https://vuldb.com/vuln/367572 for patch availability.

Share

CVE-2026-10279 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy