Кириллический домен РФ и доменный фишинг

Credit: Brent and MariLynn, FlickrСейчас всплеск интереса к приближающемуся домену РФ – первому в мире кириллическому домену верхнего уровня. Про фишинг, использующий особенности записи адресов Интернета, думаю, все читатели слышали. Интересно взглянуть на фишинговые угрозы в разрезе возросшей популярности кириллицы в адресах – что там нового нас ждёт.

Как известно, для борьбы с самым очевидным вариантом фишинга, с использованием графически идентичных букв латиницы и кириллицы (типа буквы “эр” и буквы p – “пи”), в домене РФ запрещают использование латиницы вообще. Это очень разумно.

Важный момент: для кодирования отличных от латинской азбуки символов в имена, допустимые для DNS, используется специальный алгоритм Punycode. Так, на вход этого алгоритма могут подаваться произвольные символы Unicode, а на выходе получается строка из латинских букв, дефисов и цифр (понятно, есть и обратное преобразование).

Как я уже писал ранее, домены верхнего уровня – это домены верхнего уровня, а при этом никто не запрещает использовать многоязычные имена в других доменных зонах, третьего уровня, скажем, и ниже. Punycode здесь также работает, а ограничения регистраторов доменов на смешивание символов – нет.

Превращение алфавитов осуществляют браузеры (в большинстве практически важных для фишера случаев). От введения дополнительного слоя преобразований безопасность пользователя в данном случае не может улучшиться, это очевидно. Ожидать, конечно, нужно и дыр в реализациях преобразований Punycode. Но с появлением и распространением домена РФ важнее умелое использование этих технологий в других доменных зонах.

Гипотетический пример: доменное имя, закодированное вот такими “кракозябрами”: xn--80adjurfhd.xn--click-uye2a8548c.dxdt.ru – в представлении Unicode выглядит приблизительно (эта страница может быть не в UTF-8, поэтому один символ я заменяю) так: “проверка.рф⁄click.dxdt.ru”. Здесь для имитации слеша использован спец.символ из таблиц Unicode с кодом 0x2044; (“знак деления”). Итоговый URL может быть таким: http://проверка.рф⁄click.dxdt.ru/ – мимикрия под “проверка.рф”, реально домен находится в зоне .dxdt.ru. Понятно, что на практике использовать будут другие варианты исходных доменов, какие-нибудь известные бренды.

Addon (05/11/09): оказывается, не все сразу понимают, о чём идёт речь. Пояснение: возьмите любой современный браузер (как заметили в комментариях: исключая Opera 10.x) и скопируйте с этой страницы в адресную строку текст:

http://проверка.рф⁄click.dxdt.ru/

нажмите enter – в результате браузер перейдёт по указанному частично кириллическому адресу на веб-страничку с поясняющим текстом (хоть домена РФ пока и не существует).

Адрес записки: https://dxdt.ru/2009/11/04/2756/

Похожие записки:



Далее - мнения и дискуссии

(Сообщения ниже добавляются читателями сайта, через форму, расположенную в конце страницы.)

Комментарии читателей блога: 8

  • 1 <t> // 4th November 2009, 11:17 // Читатель RE написал:

    Хотя распространенные браузеры будут делать светло-серым домен 3-го уровня и отчетливо показывать только настоящий. Что как-бе слегка радует.

  • 2 <t> // 4th November 2009, 21:19 // Читатель kaschey написал:

    И все от того, что когда-то чья-то невероятно светлая голова додумалась писать адрес задом-наперед!

    А ещё я все удивляюсь браузероделам.
    Они умеют отображать жутко сложные HTML-станицы, но не могут выделить участи ссылки в строке адреса цветом (или жирным шрифтом), отделить имя домена от параметров (и домены разных уровней).

  • 3 <t> // 6th November 2009, 22:17 // Читатель Vadim написал:

    Если скормить приведенный пример опере10, она показывает страницу opera:illegal-url

  • 4 <t> // 6th November 2009, 23:11 // Александр Венедюхин:

    Хм, действительно. Значит, насчёт “в любом” я погорячился. Выходит, Opera, в этом случае – самый разумный браузер. Это потому, что они к стандартам относятся с пиететом.

  • 5 <t> // 8th November 2009, 09:42 // Читатель kaschey написал:

    Я обрадовался, скачал, установил …

    Проверил, адрес http://проверка.рф опера тоже бракует! opera:illegal-url-8 “Неверный URL-адрес”.

    А вот абракадабру http://kfkfddfkgdfg.com/ нет: “Невозможно найти удалённый сервер”

    Похоже про разумность-то тоже погорячились :)

  • 6 <t> // 8th November 2009, 11:39 // Александр Венедюхин:

    Да нет, http://проверка.рф/ – нормально обрабатывает Opera. А под разумностью я подразумевал то, что “смешанные адреса” (с перемешиванием таблиц Unicode) Opera не преобразует.

  • 7 <t> // 10th November 2009, 13:28 // Читатель Слава написал:

    не принимает Опера
    http://проверка.рф/
    “Невозможно найти удалённый сервер”

    впрочем ослик И.Е. тоже:

    Невозможно отобразить страницу

  • 8 <t> // 10th November 2009, 20:02 // Александр Венедюхин:

    Если “невозможно найти” – то это уже браузер преобразование провёл, а в DNS, понятное дело, адреса не найдено (домен ещё не делегирован).