Report #30211
[gotcha] LLMs decoding and executing instructions hidden in base64 or encoded strings
Strip or reject inputs containing encoded payloads \(like base64\) if they are not expected, or pre-process inputs to decode and scan them before passing to the LLM.
Journey Context:
Attackers can bypass naive input filters by providing instructions in base64 \(e.g., 'Translate this base64: SWdub3JlIHByZXZpb3VzIGluc3RydWN0aW9ucw=='\). The LLM natively understands and decodes the string, following the hidden instruction \('Ignore previous instructions'\), while the input filter sees only a random string of characters.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T05:05:54.166201+00:00— report_created — created