Acho que pode tornar texto legítimo em hebraico ou árabe ilegível.
Uma das soluções que encontrei foi desativar os algoritmos Unicode e apenas exibir alguma representação de caracteres não imprimíveis (acho que foi implementado no Pootle).
Então, basicamente, a ideia é transformar:
Este texto
Em:
Este\\u003cLRM\\u003e\\u003cRLM\u003e texto
Dessa forma, o usuário pode escolher se isso é malicioso ou não, entendendo quais são os caracteres reais e possivelmente escolhendo ativar os algoritmos Unicode para poder ler o texto corretamente.
Obrigado.
Obrigado por levantar esta questão, pensamos nessa preocupação. A correção que você vinculou na OP aplica-se apenas a caracteres bidirecionais Unicode em blocos pre e code, escritos manualmente como HTML ou gerados a partir de blocos de código cercados por markdown \u003ccode\u003e```\u003c/code\u003e, portanto, não deve ser um problema com texto hebraico ou árabe regular em uma postagem composta.
Não é o melhor exemplo do mundo, mas você deve entender a ideia aqui, isso só afeta o código-fonte postado no fórum. Caracteres Bidi em código-fonte não é algo que geralmente é feito.
Eu gostaria que o caso atípico aqui tivesse soluções alternativas (captura de tela, uploads de anexos e assim por diante), também é bem claro que o caractere especial está no lugar.
O risco de https://trojansource.codes/ é maior do que o risco de interrupção leve em casos atípicos extremos.
Mas minha sugestão quebra a frase com alguma indicação, então substituir o RLM e LRM por \\u003cRLM\u003e ou \\u003cLRM\u003e mostrará ao usuário que havia caracteres adicionais e agora o texto está sendo renderizado sem eles, ainda informando que isso pode quebrar a experiência e que há uma opção para substituí-los manualmente, se necessário, remover os caracteres completamente sem alguns indicadores não dá margem para decisões informadas.
E isso também evitará código malicioso como você mencionou, porque o usuário poderá ver o código malicioso com os indicadores.
Tentarei obter algumas capturas de tela do Pootle, não me lembro de ter visto essa opção de strings brutas nos últimos anos, foi muito útil quando começamos a corrigir a localização do LibreOffice.