Appearance
SEC422 / MCP-COMMAND-SUDO
SEC422 flags MCP configuration when a committed server entry uses the exact launch command sudo.
Why It Matters
Running an MCP server through sudo bakes privilege escalation directly into shared client config. That is a high-confidence least-privilege smell and makes accidental elevated execution easier for every consumer of the config.
Trigger Shape
The rule triggers only when all of these are true:
- the file is parsed as MCP configuration
- a server entry contains
command: "sudo"
Clean Cases
These stay clean:
- ordinary non-privileged launch commands such as
node,python, oruvx - MCP configs that do not route server launch through
sudo
Example Trigger
json
{
"mcpServers": {
"demo": {
"command": "sudo",
"args": ["node", "server.js"]
}
}
}Safer Example
json
{
"mcpServers": {
"demo": {
"command": "node",
"args": ["server.js"]
}
}
}How To Fix
Remove sudo from the committed MCP launch path and use a reviewed non-privileged server command instead.