Wygeneruj domeny typu „typosquat” w stylu dnstwist i sprawdź, które z nich są rozpoznawane w systemie DNS.
Adresy URL i domeny phishingowe
Narzędzie do sprawdzania homografów
Samo narzędzie jest w języku angielskim; na tej stronie znajdziesz wyjaśnienia w Twoim języku.
Użyj Narzędzie do sprawdzania homografów
Jak to działa
Wklej domenę, adres URL lub tekst, aby wyświetlić każdą etykietę w formacie Unicode i punycode, skrypt oraz prototyp UTS #39 każdego znaku, a także informację, czy nazwa zawiera elementy z różnych alfabetów lub czy odczytuje się ją jako inną nazwę ASCII.
Działa całkowicie w przeglądarce: żadne wprowadzone dane nie są przesyłane.
Jak korzystać z Narzędzie do sprawdzania homografów
- Wklej nazwę. Wklej domenę, adres URL, adres e-mail, kilka wierszy lub całą wiadomość. Akceptowane są formy z usuniętymi niebezpiecznymi elementami, takie jak hxxps:// i [.], a etykiety xn-- są dekodowane.
- Dodaj domenę rzeczywistą (opcjonalnie). W polu „Porównaj z rzeczywistą domeną” wpisz domenę, której się spodziewałeś, na przykład rzeczywistą domenę swojego banku.
- Przeprowadź kontrolę. Sprawdzanie odbywa się na bieżąco podczas wpisywania lub po naciśnięciu klawisza Enter lub przycisku „Sprawdź”. Kombinacja klawiszy Shift+Enter dodaje nowy wiersz.
- Zapoznaj się z wyrokiem. W kolorowym polu widnieje napis „Ryzyko podobieństwa”, „Sprawdź to”, „Wydaje się w porządku” lub „Uwagi”, a każda pozycja zawiera jedną linię. Komunikat dotyczący kilku hostów zawiera tabelę z jednym wynikiem dla każdego hosta.
- Znajdź litery, które się nie pasują. W podświetlonej domenie zaznaczono podejrzane znaki. W tabeli znaków wymieniono każdy z nich wraz z punktem kodowym, alfabetem oraz literą ASCII, którą naśladuje.
- Skopiuj lub przekaż dalej. Skopiuj formę Unicode lub Punycode albo skorzystaj z opcji „Wyślij do…”, aby sprawdzić domenę w serwisie DNS over HTTPS Lookup lub Abuse Contact Lookup.
Przykład
Odmiana cyrylicy w kodowaniu Punycode
xn--80ak6aa92e.exampleLookalike 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[.]exarnplePo dekodowaniu otrzymujemy „аррӏе.example”: wszystkie pięć liter to znaki cyrylickie, a wymawia się je jako „apple”, więc etykieta zostaje oznaczona jako „całopismowa” (możliwa do pomylenia), a każdy znak jest odpowiednio zaznaczony. Przykład „load” umieszcza również „apple.example” w polu porównawczym, które ma ten sam szkielet.
Co jest sprawdzane
| Sygnał | Co to oznacza |
|---|---|
| Różne skrypty w jednej etykiecie | Znaki łacińskie połączone z cyrylicą lub alfabetem greckim w obrębie jednej etykiety są zaznaczone na czerwono. Połączenia akceptowane przez UTS #39, takie jak znaki łacińskie z japońskimi, są jedynie odnotowywane, chyba że jakiś znak wygląda jak znak ASCII. |
| Podobieństwo całego skryptu | Każda litera pochodzi z innego alfabetu, ale etykieta brzmi jak słowo w kodzie ASCII, na przykład cyrylica „аррӏе” oznaczająca „jabłko”. To jest czerwone. |
| Różnica polegająca wyłącznie na akcencie | Nazwa taka jak „wället” brzmi jak „wallet”, jeśli pominąć akcent. To jest żółte. Sprawdź to spostrzeżenie. |
| Prototyp UTS nr 39 | W tabeli znaków pokazano, którą literę lub cyfrę ASCII naśladuje każdy znak, oznaczając je jako „wygląda jak ASCII”, „nie jest ASCII” lub „ASCII”. |
| Poziom ograniczeń | Od „Tylko ASCII” do „Bez ograniczeń”, zgodnie z UTS nr 39. Poziomy „Minimalne ograniczenia” i „Bez ograniczeń” są zaznaczone na czerwono, ponieważ dopuszczają najbardziej ryzykowne kombinacje. |
| Niewidoczne znaki i mapowanie w przeglądarce | Jeśli przeglądarka zmieniłaby zapis nazwy hosta, na przykład usuwając znak o zerowej szerokości lub zamieniając litery o pełnej szerokości na zwykłe, pojawi się żółte ostrzeżenie oraz pole „Co otwiera przeglądarka”. Jeśli przeglądarka nie może rozpoznać nazwy hosta, niewidoczne znaki w niej zawarte są zaznaczone na czerwono. |
| Dziwne kropki | Kropki ideograficzne lub o pełnej szerokości (U+3002, U+FF0E, U+FF61) działają w przeglądarkach jak zwykłe kropki, ale mogą ominąć filtry porównujące zwykły tekst. |
| Uszkodzony kod Punycode | Etykieta typu xn--, która nie jest poprawnie dekodowana, ma kolor czerwony. |
| Sztuczki z ASCII | Nazwy zapisane w zwykłym formacie ASCII, w których litera „o” jest zastąpiona cyfrą 0, „l” – cyfrą 1, „m” – znakiem „rn”, a „w” – „vv”, otrzymują adnotację. Aby to sprawdzić, skorzystaj z pola porównania. |
| Wynik porównania | Ta sama domena, Możliwość pomylenia (ta sama struktura), Możliwość pomylenia po pominięciu wielkości liter, Różnią się jedynie znakami diakrytycznymi, Wymaga 1 lub 2 zmian (prawdopodobnie typo-squatting) lub Nie ma możliwości pomylenia. |
Więcej przykładów
Litera „а” z alfabetu cyrylickiego w nazwie łacińskiej, w porównaniu z „wallet.example”
wаllet.exampleRyzyko podobieństwa: Etykieta „wаllet” zawiera mieszankę alfabetów (łaciński + cyrylica, poziom restrykcji: minimalny); 1 znak wygląda jak znak ASCII, a całość odczytuje się jako „wallet”. Forma Punycode: xn--wllet-4ve[.]example. Porównanie: Możliwość pomylenia, oba szkielety to wallet[.]exarnple.
Cyfra 1 zamiast litery „l”, w porównaniu z wallet.example
wa1let.exampleWygląda na poprawny: host wyłącznie w kodowaniu ASCII: brak homoglifów, brak mieszanych alfabetów. W uwadze zaznaczono, że etykieta zawiera cyfrę „1” (można ją odczytać jako „l”). Porównanie: istnieje ryzyko pomylenia, ponieważ obie nazwy mają tę samą strukturę: wallet[.]exarnple.
Litera z akcentem w porównaniu z wallet.example
wället.exampleZwróć uwagę: Słowo „wället” można odczytać jako „wallet”, jeśli pominie się znaki akcentowe. Forma Punycode: xn--wllet-gra[.]example, poziom ograniczeń: Single Script. Porównanie: Różni się jedynie znakami akcentowymi.
Najczęściej zadawane pytania
Co sprawdza to narzędzie?
Każda etykieta jest dekodowana z formatu punycode za pomocą dekodera zgodnego z RFC 3492, każdy znak otrzymuje swój skrypt Unicode oraz prototyp UTS #39 z pliku confusables.txt (Unicode 18.0), a etykieta jest poddawana kontroli na obecność skryptów mieszanych oraz otrzymuje poziom ograniczenia UTS #39. Etykiety, których wszystkie litery są odczytywane jako znaki ASCII, są oznaczane jako „całoskryptowe” znaki łatwe do pomylenia.
Czy może przeoczyć domenę podobną lub błędnie zidentyfikować prawdziwą domenę?
Tak. UTS nr 39 dotyczy znaków, które wyglądają podobnie, a nie literówek, więc zamieniona lub brakująca litera pojawia się jedynie w odległości edycji w polu porównawczym, a sztuczki ASCII, takie jak „rn” zamiast „m”, są wymienione w uwagach. Prawidłowe nazwy niebędące alfabetem łacińskim, na przykład niektóre domeny cyrylickie w strefie .рф, mogą być odczytywane jako słowa łacińskie i zostać oznaczone.
Czy coś jest przesyłane przez sieć?
Nie. Dekodowanie, wykrywanie skryptów oraz tabela znaków łatwych do pomylenia są przetwarzane na tej stronie; forma w kodzie Punycode pochodzi z własnego parsera adresów URL przeglądarki i nie jest przeprowadzane żadne wyszukiwanie w systemie DNS.
Co oznaczają poziomy ograniczeń?
Pochodzą one z Unicode UTS nr 39. Opcja „Tylko ASCII” wykorzystuje zwykły zestaw znaków ASCII. Opcja „Pojedynczy alfabet” wykorzystuje jeden system pisma. Opcja „Wysoce restrykcyjna” dopuszcza użycie alfabetu łacińskiego wraz z chińskim, japońskim lub koreańskim. Opcja „Umiarkowanie restrykcyjne” zezwala na stosowanie alfabetu łacińskiego wraz z jednym innym popularnym systemem pisma, z wyjątkiem cyrylicy i greckiego. Opcja „Minimalnie restrykcyjne” zezwala na inne kombinacje, a opcja „Bez ograniczeń” oznacza, że znak wykracza poza profil identyfikatora.
Dlaczego narzędzie wskazuje, że przeglądarka otwiera stronę o innej nazwie?
Przeglądarki normalizują nazwy hostów przy użyciu mapowania UTS #46. Między innymi zamienia ono znaki o pełnej szerokości na znaki o normalnej szerokości oraz usuwa znaki niewidoczne, takie jak spacja o zerowej szerokości i miękka myślnik. Link otwiera wówczas zmapowaną nazwę, podczas gdy tekst w oryginalnej postaci może nadal ominąć filtry porównujące surowe ciągi znaków.
Ile hostów mogę sprawdzić jednocześnie?
Wystarczy wkleić listę lub wiadomość, a narzędzie wyodrębni z niej do 50 nazw hostów, pomijając adresy IP. Analizowany tekst może mieć długość do 20 000 znaków; sprawdzane są również wszelkie słowa spoza zestawu znaków ASCII występujące poza nazwami hostów.