TextWash

This page detects U+202E RIGHT-TO-LEFT OVERRIDE and the other bidi controls. The sample below contains one — notice how the filename lies to you. Everything runs in your browser — nothing is uploaded.

Input

X-ray hover a highlight for details

Cleaned output copied ✓

Cleaning rules

What is U+202E (right-to-left override)?

A Unicode control character that forces subsequent text to render right-to-left, regardless of what the characters are. It exists for legitimate bidirectional-text edge cases — and it is the best-known building block of text-based spoofing attacks.

Why it's a security problem

The filename above is actually invoice_​[RLO]​fdp.exe — an executable — but renders as if it ended in .pdf. The same trick, dubbed Trojan Source (CVE-2021-42574), works inside source code: bidi controls can make a comment or string literal display differently from how the compiler reads it, so the code a reviewer approves is not the code that runs. Compilers (Rust, GCC, Clang) and code hosts now warn about bidi controls in source, but plenty of tooling still renders them silently.

Where it comes from

Legitimately: almost nowhere in ordinary text — mixed Hebrew/Arabic contexts use the newer isolate controls (U+2066–U+2069) instead. If you find a lone RLO in a filename, email subject, or code snippet, treat it as deliberate until proven otherwise.

How to check text

Paste anything suspicious above — RLO and every other bidi control (LRE, RLE, PDF, LRO, LRI, RLI, FSI, PDI) is flagged with a red tag in the x-ray, and the "invisible characters" rule strips them. On the command line: grep -rP '[\x{202A}-\x{202E}\x{2066}-\x{2069}]' .