
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2025-53818 is a command injection vulnerability in the GitHub Kanban MCP Server (@sunwood-ai-labs/github-kanban-mcp-server), a Model Context Protocol (MCP) server for managing GitHub issues in Kanban board format. The vulnerability affects versions up to and including 0.3.0 (and 0.4.0 per ENISA data), with no patched version available as of the advisory publication date. It was disclosed by researcher Liran Tal and published to the GitHub Advisory Database on July 12, 2025, with NVD publication on July 14, 2025. The vulnerability carries a CVSS v4.0 base score of 8.9 (High) (GitHub Advisory).
The root cause is CWE-78 (Improper Neutralization of Special Elements used in an OS Command), classified as OS Command Injection. The vulnerable add_comment tool in src/handlers/comment-handlers.ts uses Node.js's exec API to construct shell commands by directly concatenating user-supplied input — specifically args.issue_number and args.repo — into strings like `gh issue ${command} ${args.issue_number} --repo ${args.repo}` without any sanitization or escaping (GitHub Advisory, comment-handlers.ts). Because exec passes the full string to a shell interpreter, special characters such as ;, &&, or | in user input can break out of the intended command and execute arbitrary OS commands. The attack vector is network-based, requires no privileges, and no user interaction, making it exploitable by any party that can interact with the MCP server or manipulate the LLM into calling the tool with crafted input (e.g., via prompt injection) (GitHub Advisory).
Successful exploitation allows an attacker to execute arbitrary OS commands on the host running the MCP server, with the privileges of the server process. This can result in full system compromise, unauthorized access to sensitive data (including GitHub tokens and credentials available to the process), data destruction, and potential lateral movement within the host environment. The CVSS v4.0 assessment rates confidentiality, integrity, and availability impacts on the vulnerable system as all High (GitHub Advisory).
A proof-of-concept exploitation scenario is described in the advisory: an LLM connected to the MCP server can be manipulated via prompt injection to call the add_comment tool with a payload such as ; rm -rf /tmp;# in the issue_number parameter, causing arbitrary command execution on the server host (GitHub Advisory). The EPSS score is approximately 0.47–1.845% (varying by source), placing it in the 83rd percentile for exploitation likelihood within 30 days. There is no confirmed evidence of in-the-wild exploitation or threat actor attribution at this time, and the vulnerability is not listed in the CISA KEV catalog (GitHub Advisory).
@sunwood-ai-labs/github-kanban-mcp-server, version ≤ 0.3.0) connected to an LLM agent (e.g., Claude, Cursor).add_comment MCP tool with a shell-metacharacter payload in the issue_number field, for example: 1; <malicious_command> ;#.add_comment with the crafted issue_number.handleAddComment() function passes the unsanitized issue_number directly to Node.js exec, constructing a shell command like gh issue close 1; <malicious_command> ;# --repo owner/repo. The shell interprets the injected command and executes it on the server host.console.error output) showing unexpected errors from gh issue commands with unusual arguments; Node.js process logs containing shell metacharacters (;, &&, |) in command strings.sh, bash, curl, wget, python) visible via ps or process monitoring tools./tmp; missing files if destructive payloads (e.g., rm -rf) were executed.GITHUB_TOKEN, GH_TOKEN) that may be present in the MCP server's process environment (GitHub Advisory).No patched version of @sunwood-ai-labs/github-kanban-mcp-server was available as of the advisory publication date (July 12–15, 2025). The recommended remediation is to replace the use of Node.js exec with execFile, which accepts the command and arguments as separate array elements and does not invoke a shell, preventing injection. Additionally, use the -- double-dash notation to separate command-line flags from user-supplied values. As an immediate workaround, disable or remove the add_comment tool from the MCP server configuration, implement strict input validation (allow only numeric values for issue_number), and apply the principle of least privilege to the server process. Monitor for a patched release from the maintainer (GitHub Advisory).
The vulnerability was disclosed by security researcher Liran Tal, who has published prior work on MCP server command injection and Node.js secure coding practices, referenced in the advisory. The advisory links to Tal's prior research on exploiting MCP servers vulnerable to command injection, indicating this is part of a broader pattern of security issues in the emerging MCP ecosystem. Coverage appeared in security aggregators and newsletters including Secret CISO and TLDR InfoSec, reflecting growing community awareness of MCP server security risks (GitHub Advisory).
comment-handlers.ts source codeSource: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."