Какие символы Юникода опасны?

Какие символы Юникода (точнее, кодовые точки) опасны и должны быть занесены в черный список и запрещены для использования пользователями? Я знаю, что символы переопределения BIDI и" пробел нулевой ширины "являются очень склонны создавать проблемы, но какие еще есть?

Спасибо

9
задан federico-t 3 November 2011 в 14:19
поделиться

1 ответ

'ЗАПОЛНИТЕЛЬ ХАНГЫЛЯ' (U+3164)

Начиная с Unicode 1.1 в 1993, существует пустой широкий, нулевой пробел.

Мы не видим его, ни один скопировать/вставить он один, потому что мы не можем выбрать его!

Это должно быть сгенерировано, сочетание клавиш Unix: CTRL + SHIFT + u + 3164

Это может в значительной степени рџ ’© что-либо : переменные, имя функции, URL, имена файлов, подражают DNS, делают недействительным строки хеша, записи базы данных, сообщения в блоге, логины, позволяют фальсифицировать идентичные учетные записи, и т.д.

<час>

ДЕМОНСТРАЦИЯ 1: Изменение переменных

переменная угнала , содержит символ Заполнителя Хангыля, консольный вызов журнала переменная без символа:

const normal = "Hello w488ld"
const hijaㅤcked = "Hello w488ld"
console.log(normal)
console.log(hijacked)
<час>

ДЕМОНСТРАЦИЯ 2: Угоните URL

Те 3, которые URL приведет к xn--stackoverflow-fr16ea.com:

https://stackㅤㅤoverflow.com

https://stackㅤㅤoverflow.com

https://stackㅤㅤoverflow.com

0
ответ дан 3 November 2019 в 04:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: