Report #101794
[gotcha] User-supplied content reaches the system prompt and overrides the developer's instructions
Keep system instructions static and place user or retrieved content in separate user/assistant messages or clearly delimited data blocks; never concatenate attacker-controlled text into the system prompt. Treat the system prompt as a preference, not an enforceable boundary, and pair role separation with output filtering and least-privilege tools.
Journey Context:
Developers often mix user input or document snippets into the system prompt for convenience, but LLMs resolve instruction conflicts statistically. An attacker can role-play as a maintainer or say 'ignore previous instructions,' and the model frequently obeys the later or more salient instruction. Splitting roles helps the model distinguish instructions from data, though it is not a complete defense; depth \(input classification, output filtering, restricted tooling\) is required.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-07T05:27:24.163259+00:00— report_created — created