Substituições bidirecionais
RIGHT-TO-LEFT OVERRIDE (U+202E)
Um controle invisível que força todos os caracteres seguintes a serem dispostos da direita para a esquerda, não importa a que escrita eles pertençam.
- Ponto de código
U+202E- Categoria
- Substituições bidirecionais
- Removido por padrão
- Sim
- Opção que governa
- Nenhuma opção necessária
- Pode ser essencial
- Não
De onde ele vem
Quase nunca de texto legítimo. A fama dele vem do ataque de nome de arquivo com sobreposição da direita para a esquerda: `faturafdp.exe` aparece como `faturaexe.pdf`, e a pessoa dá dois cliques em um executável achando que é um documento.
Por que ele importa
Ele muda o que o leitor vê sem mudar o que o computador lê. Essa é a definição de um caractere de falsificação: a ordem exibida e a ordem lógica discordam, então um nome de arquivo, uma URL ou um identificador de código podem parecer o que não são.
Antes e depois
Antes da limpeza, a maioria dos programas exibe isto como “faturaexe.pdf”. Os bytes nunca disseram isso.
O caractere aparece como uma etiqueta para você ver onde ele fica. No seu texto, ele não desenha absolutamente nada.
Quando ele é legítimo
Na prática, nunca em texto corrido. O texto bidirecional correto é produzido pelo algoritmo bidirecional do Unicode a partir dos próprios caracteres, e quando uma dica explícita é mesmo necessária, os isolamentos (U+2066–U+2069) são a escolha moderna e segura.
Como remover
A limpeza padrão remove, em todo contexto, sem opção de manter. O Ghostchars trata os cinco controles de incorporação e de sobreposição do mesmo jeito.
Ele é uma marca-d’água de IA?
Não é marca-d’água
Não. Isto é uma ferramenta de falsificação, não uma marca de procedência. Se você encontrar um em um nome de arquivo, em um nome de pacote ou em um arquivo-fonte, trate como hostil, e não como curiosidade.
Nenhuma relação com texto gerado por máquina. Ele vem de algum software, de um teclado ou de uma pessoa.
Perguntas
O que é o ataque de nome de arquivo com RTL override?
Colocar um U+202E dentro de um nome de arquivo inverte a exibição de tudo o que vem depois, então um executável pode aparecer com extensão de documento. O arquivo em disco continua o mesmo; só a renderização mente.
Isso importa em código-fonte?
Importa. Controles bidi dentro de comentários e de literais de string podem fazer o código revisado aparecer diferente do que compila. A maioria dos compiladores hoje avisa quando encontra um.
Existe alguma razão para manter esse caractere?
Não no texto que você está limpando. Texto bidirecional de verdade não precisa dele, e os caracteres de isolamento fazem o mesmo trabalho sem reordenar o texto que não tem nada com isso.
Confira o seu próprio texto
Cole qualquer coisa no limpador para ver todos os caracteres ocultos que ela contém, com posição, ponto de código e o que acontece com cada um. Nada é enviado para lugar nenhum.