An MCP server launches via a shell interpreter
What this means
An MCP server wrapped in a shell interpreter (bash -c …).
How to fix it
Replace a bash -c/sh -c MCP command with a direct executable + args. Wrapping a server in a shell turns any string in its config into an execution surface.
Check it yourself
Run a scan and look for BLWK-AI-005 in the results:
sh
bulwark scan
bulwark ai scanInstalled the standalone CLI package instead of the app? The command is bulwarkctl.
References
Related checks
- A Python startup hook runs code in every Python process ·
BLWK-PERSIST-005 - Traces of the LiteLLM 1.107.0 credential stealer were found ·
BLWK-ROOTKIT-002 - An MCP server runs an unpinned package from a registry ·
BLWK-AI-003 - An MCP server uses mcp-remote (critical command-injection ≤ 0.1.15) ·
BLWK-AI-004 - An MCP server runs a privileged or host-mounting container ·
BLWK-AI-019