Report #90662
[gotcha] LLM data exfiltration via markdown image links
Sanitize all LLM outputs that will be rendered as markdown, specifically stripping or neutralizing image tags \(\!\[...\]\(...\)\) and HTML tags pointing to external domains. Alternatively, proxy all external image requests through a safe domain or block them entirely.
Journey Context:
Developers often render LLM outputs directly in markdown renderers. An attacker can use indirect prompt injection to instruct the LLM to include sensitive data \(like conversation history or user info\) in the URL query parameters of an image tag. When the markdown is rendered, the browser automatically fetches the URL, exfiltrating the data to the attacker's server. Standard output length limits or PII filters don't catch this because the data is embedded in the URL, not the text.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T10:46:19.553597+00:00— report_created — created