Report #58255
[gotcha] LLM tool/function descriptions treated as immutable system prompts rather than potential attack vectors
Treat tool names and descriptions as untrusted input. Do not dynamically populate tool descriptions from user-generated content or external APIs without strict sanitization.
Journey Context:
When building agents, developers often fetch tool definitions from external sources \(e.g., OpenAPI specs, plugin marketplaces\). The LLM reads these descriptions to decide how to use the tool. An attacker who controls a tool description can inject instructions. The LLM will follow the tool description instructions just as strictly as the system prompt, leading to tool-use hijacking.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T04:16:11.830493+00:00— report_created — created