CVE-2026-44968
Medium · 6.3dbt MCP Server has an Argument Injection in dbt CLI Tool Wrappers via node_selection and resource_type Parameters
CVSS
6.3
EPSS
0.2%
Published
May 14, 2026
CISA due date
—
The record
`_run_dbt_command()` in `src/dbt_mcp/dbt_cli/tools.py` constructs the dbt subprocess argument list by appending user-supplied MCP tool parameters without sanitization. Two independent injection vectors exist. An MCP client can inject arbitrary dbt global flags — such as `--profiles-dir`, `--project-dir`, and `--target` — by crafting the `node_selection` string (Vector 1) or the `resource_type` JSON array (Vector 2). Because `subprocess.Popen` is called with `shell=False` and a list argument, shell metacharacter injection is not possible; however, this provides no defense against argument list injection (CWE-88), where attacker-controlled tokens are interpreted by the target process as flags rather than values.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|
Related vulnerabilities
- CVE-2026-112944 launch-editor allows users to open files with line numbers in editor from Node.js. CWE-88
- CVE-2026-112900 Pillow is a Python imaging library. CWE-88
- CVE-2026-105326 An argument injection flaw was found in CUPS. CWE-88
- CVE-2026-102827 simple-git, an interface for running git commands in any node.js application, enables… CWE-88
- CVE-2026-89066 Improper neutralization of special elements used in an OS command in the task synthesis… CWE-88
- CVE-2026-11765 Improper neutralization of argument delimiters in a command ('argument injection')… CWE-88
- CVE-2026-0304 A privilege escalation vulnerability in Palo Alto Networks Cortex XDR Broker VM enables… CWE-88
- CVE-2026-8044 CWE-88: Improper Neutralization of Argument Delimiters in a Command ('Argument… CWE-88