Report #38066
[gotcha] Attackers use invisible Unicode characters or homoglyphs to hide injection payloads from naive input filters
Normalize and sanitize user input before passing it to the LLM. Strip zero-width characters and normalize Unicode to a standard form \(NFKC\) to defeat homoglyph attacks before applying any regex or string-matching filters.
Journey Context:
Developers build naive string-matching filters \(e.g., 'if ignore previous instructions in input: block'\). Attackers easily bypass this by inserting zero-width spaces between characters. Normalization breaks the obfuscation before the filter runs, making the filter effective against the intended payload.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T18:22:09.304033+00:00— report_created — created