Report #82201
[gotcha] Input filters bypassed using Unicode characters that look like standard ASCII but map differently
Normalize all user input to standard ASCII \(NFKC normalization\) before applying safety filters or feeding it to the LLM. Reject or strip inputs containing suspicious Unicode homoglyphs.
Journey Context:
Attackers replace characters like 'a' with 'а' \(Cyrillic\) or use zero-width joiners. A simple string-matching filter looking for 'bomb' will miss 'bоmb' \(Cyrillic o\). The LLM, however, often processes the semantic meaning correctly despite the Unicode trick. Developers miss this because they assume string matching on raw bytes is sufficient for filtering.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T20:34:10.924476+00:00— report_created — created