Report #60579
[gotcha] Token smuggling and ASCII art cloaking bypassing input filters
Normalize and decode all user input \(base64, URL encoding, unicode homoglyphs, ASCII art\) into a canonical plaintext representation \*before\* applying input filters or passing it to the LLM.
Journey Context:
Developers build regex or keyword-based input filters on the raw string. Attackers encode the payload using ASCII art, base64, or character substitution \(e.g., replacing 'bomb' with 'b0mb' or using Unicode lookalikes\). The filter sees benign text, but the LLM natively understands and decodes the semantic meaning, executing the hidden instruction. You must normalize the input before filtering.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T08:10:22.770562+00:00— report_created — created