Report #58922
[gotcha] User input overriding system prompt via delimiter collision
Use randomly generated UUIDs as delimiters between system instructions and user input, and explicitly instruct the model that data within the delimiters is untrusted user input.
Journey Context:
Developers often use simple delimiters like \`\#\#\#\` or \`---\` to separate system prompts from user input. An attacker can simply include \`\#\#\#\` in their input, followed by a new system prompt. The LLM parses the attacker's delimiter as the boundary, effectively ignoring the original system prompt. UUIDs are practically unguessable, preventing this collision.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T05:23:18.352884+00:00— report_created — created