Фишинговые URL и домены

Проверка гомоглифов

Работает локальноНовый

Сам инструмент доступен на английском языке; на этой странице приведено его описание на вашем языке.

Используйте Проверка гомоглифов

Для чего это нужно

Вставьте домен, URL или текст, чтобы увидеть каждую метку в Unicode и punycode, письменность и прототип UTS #39 каждого символа, а также узнать, смешивает ли имя письменности и не читается ли оно как другое ASCII-имя.

Приложение работает полностью в браузере: никакие введенные вами данные не передаются на сервер.

Как использовать Проверка гомоглифов

  1. Вставьте имя. Вставьте домен, URL, адрес электронной почты, несколько строк или целое сообщение. Обезвреженные формы вроде hxxps:// и [.] принимаются, а метки xn-- декодируются.
  2. Добавьте настоящий домен (необязательно). Введите ожидаемый домен в поле Compare with the real domain (сравнить с настоящим доменом), например настоящий домен вашего банка.
  3. Запустите проверку. Проверка выполняется по мере ввода, или нажмите Enter либо Check. Shift+Enter добавляет новую строку.
  4. Прочитайте вердикт. Цветной блок показывает Lookalike risk, Check this, Looks clean или Notes, по строке на каждую находку. Для сообщения с несколькими хостами выводится таблица с отдельным результатом для каждого хоста.
  5. Найдите странные буквы. Подозрительные символы выделены в подсвеченном домене. Таблица Characters перечисляет каждый из них с кодовой точкой, письменностью и ASCII-буквой, которую он имитирует.
  6. Скопируйте или передайте дальше. Скопируйте форму Unicode или punycode или используйте Send to…, чтобы проверить домен в DNS over HTTPS Lookup или Abuse Contact Lookup.

Пример

Кириллический двойник в punycode

Ввод
xn--80ak6aa92e.example
Результат (зафиксировано 2026-10-20)
Lookalike risk: Label "аррӏе" is written in Cyrillic but reads as the ASCII name "apple" (whole-script confusable).
Highlighted domain
аррӏе.example
Unicode form
аррӏе[.]example

Punycode (ACE) form
xn--80ak6aa92e[.]example

RESTRICTION LEVEL
Single Script
SCRIPTS
Cyrillic, Latin
READS AS
apple[.]example
Labels
UNICODE	ACE	SCRIPTS	MIXED	RESTRICTION LEVEL	SKELETON
аррӏе	xn--80ak6aa92e	Cyrillic	no	Single Script	apple
example	example	Latin	no	ASCII-Only	ASCII only
Characters
CHAR	CODE POINT	SCRIPT	UTS #39 PROTOTYPE	ID STATUS	FLAG
а	U+0430	Cyrillic	a (U+0061)	Allowed	looks like ASCII
р	U+0440	Cyrillic	p (U+0070)	Allowed	looks like ASCII
р	U+0440	Cyrillic	p (U+0070)	Allowed	looks like ASCII
ӏ	U+04CF	Cyrillic	l (U+006C)	Allowed	looks like ASCII
е	U+0435	Cyrillic	e (U+0065)	Allowed	looks like ASCII
e	U+0065	Latin	itself	Allowed	ASCII
x	U+0078	Latin	itself	Allowed	ASCII
a	U+0061	Latin	itself	Allowed	ASCII
m	U+006D	Latin	rn (U+0072 U+006E)	Allowed	ASCII
p	U+0070	Latin	itself	Allowed	ASCII
l	U+006C	Latin	itself	Allowed	ASCII
e	U+0065	Latin	itself	Allowed	ASCII
Comparison with apple[.]example
Confusable: аррӏе[.]example and apple[.]example have the same UTS #39 skeleton, so they can look identical.
SKELETON OF THE INPUT
apple[.]exarnple
SKELETON OF APPLE[.]EXAMPLE
apple[.]exarnple

Декодируется в аррӏе.example: все пять букв кириллические и читаются как apple, поэтому метка отмечается как whole-script confusable (двойник целиком из другой письменности), а каждый символ выделяется. Load example также подставляет apple.example в поле сравнения — у него тот же skeleton.

Что проверяется

СигналЧто это означает
Смешанные письменности в одной меткеЛатиница вперемешку с кириллицей или греческим внутри одной метки отмечается красным. Сочетания, которые допускает UTS #39, например латиница с японским, только упоминаются в примечаниях, если ни один символ не похож на ASCII.
Двойник целиком из другой письменностиВсе буквы из другого алфавита, но метка читается как ASCII-слово, например кириллическое аррӏе вместо apple. Это отмечается красным.
Отличие только в диакритикеМетка вроде wället читается как wallet, если не заметить диакритический знак. Это жёлтая находка Check this.
Прототип UTS #39Таблица Characters показывает, какую ASCII-букву или цифру имитирует каждый символ, с пометкой looks like ASCII, non-ASCII или ASCII.
Уровень ограниченийОт ASCII-Only до Unrestricted, по UTS #39. Minimally Restrictive и Unrestricted показываются красным, потому что допускают самые рискованные сочетания.
Невидимые символы и преобразование браузеромЕсли браузер перепишет хост, например отбросит символ нулевой ширины или превратит полноширинные буквы в обычные, вы увидите жёлтое предупреждение и поле What the browser opens (что откроет браузер). Если браузер не может преобразовать хост, невидимые символы в нём отмечаются красным.
Необычные точкиИдеографические и полноширинные точки (U+3002, U+FF0E, U+FF61) работают в браузерах как обычные точки, но могут проскочить мимо фильтров, сравнивающих простой текст.
Сломанный punycodeМетка xn--, которая не декодируется корректно, отмечается красным.
ASCII-трюкиОбычные ASCII-имена с 0 вместо o, 1 вместо l, rn вместо m или vv вместо w получают примечание. Для подтверждения используйте поле сравнения.
Результат сравненияSame domain, Confusable (same skeleton), Confusable once case is ignored, Differs only by accents, 1 or 2 edits away (likely typo-squat) или Not confusable.

Еще примеры

Кириллическая «а» в латинском имени в сравнении с wallet.example

Ввод
wаllet.example
Результат

Lookalike risk: метка «wаllet» смешивает письменности (латиница и кириллица, уровень ограничений: Minimally Restrictive); 1 символ похож на ASCII, и метка читается как «wallet». Форма punycode — xn--wllet-4ve[.]example. Сравнение: Confusable, у обоих имён skeleton wallet[.]exarnple.

Цифра 1 вместо l в сравнении с wallet.example

Ввод
wa1let.example
Результат

Looks clean: хост только из ASCII, без гомоглифов и смешанных письменностей. Примечание сообщает, что метка содержит «1» (может читаться как l). Сравнение: Confusable, потому что у обоих имён skeleton wallet[.]exarnple.

Буква с диакритикой в сравнении с wallet.example

Ввод
wället.example
Результат

Check this: метка «wället» читается как «wallet», если не заметить диакритику. Форма punycode — xn--wllet-gra[.]example, уровень ограничений Single Script. Сравнение: Differs only by accents.

Часто задаваемые вопросы

Что проверяет инструмент?

Каждая метка декодируется из punycode декодером по RFC 3492, для каждого символа определяются письменность Unicode и прототип UTS #39 из confusables.txt (Unicode 18.0), а для метки выполняется проверка на смешение письменностей и определяется уровень ограничений UTS #39. Метки, все буквы которых читаются как ASCII, отмечаются как whole-script confusables.

Может ли он пропустить двойника или отметить настоящий домен?

Да. UTS #39 охватывает внешне похожие символы, а не опечатки, поэтому переставленная или пропущенная буква видна только по расстоянию редактирования в поле сравнения, а ASCII-трюки вроде rn вместо m выводятся как примечания. Законные нелатинские имена, например некоторые кириллические домены в .рф, могут читаться как латинские слова и быть отмечены.

Отправляется ли что-нибудь по сети?

Нет. Декодирование, определение письменности и таблица confusables работают на этой странице; форма punycode берётся из встроенного URL-парсера вашего браузера, а DNS-запросы не выполняются.

Что означают уровни ограничений?

Они взяты из Unicode UTS #39. ASCII-Only — только обычный ASCII. Single Script — одна система письма. Highly Restrictive допускает латиницу с китайским, японским или корейским. Moderately Restrictive допускает латиницу с одной другой распространённой письменностью, кроме кириллицы и греческого. Minimally Restrictive допускает другие сочетания, а Unrestricted означает, что символ выходит за пределы профиля идентификаторов.

Почему инструмент сообщает, что браузер откроет другое имя?

Браузеры нормализуют имена хостов по правилам преобразования UTS #46. Среди прочего они превращают полноширинные буквы в обычные и отбрасывают невидимые символы, например пробел нулевой ширины и мягкий перенос. Ссылка тогда открывает преобразованное имя, а исходный текст всё ещё может проскочить мимо фильтров, сравнивающих строки как есть.

Сколько хостов можно проверить за раз?

Вставьте список или сообщение, и инструмент выберет до 50 имён хостов, пропуская IP-адреса. Анализируется до 20 000 символов текста, а слова с не-ASCII символами вне имён хостов тоже проверяются.

Пояснение терминов

Исследование PhishDestroy