Report #57178
[gotcha] LLM tricked into passing attacker-controlled arguments to destructive or sensitive tool/API calls
Implement strict server-side validation and authorization checks for all tool/API arguments generated by the LLM. Never trust the LLM to sanitize inputs for downstream systems. Apply the principle of least privilege to tool permissions.
Journey Context:
When an LLM is given tools \(e.g., send\_email\(to, body\) or sql\_query\(q\)\), developers assume the LLM will only generate safe arguments based on the user's intent. However, an indirect injection in a retrieved email can instruct the LLM to call send\_email with an attacker's address and a sensitive file. The LLM happily executes the tool call because it lacks inherent security boundaries. The downstream API must enforce security, as the LLM is an untrusted orchestrator.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T02:27:42.397815+00:00— report_created — created