CVE-2025-54994
BaseFortify
Publication date: 2025-09-08
Last updated on: 2025-09-09
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| akoskm | create_mcp_server_stdio | 0.0.13 |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-78 | The product constructs all or part of an OS command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended OS command when it is sent to a downstream component. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
CVE-2025-54994 is a critical command injection vulnerability in the @akoskm/create-mcp-server-stdio package's MCP Server. The vulnerability occurs because the server uses Node.js's `exec` API to run shell commands by concatenating untrusted user input (a TCP port number) directly into command strings without sanitization. This allows an attacker to inject malicious shell commands that the server will execute, potentially leading to remote command execution on the host. The vulnerable tool is called "which-app-on-port". The issue was fixed by replacing `exec` with `execFile`, which avoids shell interpretation by passing commands and arguments separately. [2, 1]
How can this vulnerability impact me? :
This vulnerability can allow an attacker to execute arbitrary commands on the server hosting the MCP Server by injecting malicious input into the "which-app-on-port" tool. This can lead to unauthorized access, data compromise, system disruption, or complete control over the affected system. Because the vulnerability allows remote command execution without authentication or user interaction, it poses a high risk to the confidentiality, integrity, and availability of the system. [2]
How can this vulnerability be detected on my network or system? Can you suggest some commands?
You can detect this vulnerability by checking if your MCP Server is running a vulnerable version (prior to 0.0.13) of @akoskm/create-mcp-server-stdio that uses the unsafe `exec` calls in the 'which-app-on-port' tool. Specifically, look for usage of commands like `lsof -t -i tcp:<port>` and `ps -p <pid> -o comm=` executed via Node.js's `exec` API with untrusted input. To detect exploitation attempts, monitor for suspicious or unexpected shell commands involving these tools or unusual process executions. There are no explicit detection commands provided, but you can audit the source code or running processes for the vulnerable pattern. [1, 2]
What immediate steps should I take to mitigate this vulnerability?
The immediate mitigation is to upgrade the MCP Server to version 0.0.13 or later, where the vulnerability is fixed by replacing the unsafe `exec` calls with `execFile` calls that do not invoke a shell and pass arguments as arrays, preventing command injection. Additionally, ensure that any user input is properly sanitized and avoid concatenating untrusted input into shell command strings. Using the `--` double dash notation to separate command options from positional arguments is also recommended to prevent interpretation of input as flags. [1, 2]