Phishing-URL's en domeinen

Homoglyf-controle

Draait lokaalNieuw

De tool zelf is in het Engels; op deze pagina wordt uitgelegd hoe deze werkt in uw taal.

Gebruik Homoglyf-controle

Wat het doet

Plak een domeinnaam, URL of tekst om elk label in Unicode en Punycode te bekijken, evenals het schrift en het UTS #39-prototype van elk teken, en om te zien of de naam verschillende schriften combineert of als een andere ASCII-naam wordt gelezen.

Het draait volledig in je browser: er wordt niets van wat je invoert geüpload.

Hoe gebruik je Homoglyf-controle

  1. Plak de naam. Plak een domeinnaam, een URL, een e-mailadres, meerdere regels of een volledig bericht. Ontkrachtte vormen zoals hxxps:// en [.] worden geaccepteerd, en xn---labels worden gedecodeerd.
  2. Voeg het echte domein toe (optioneel). Typ het domein dat je had verwacht in het veld ‘Vergelijk met het echte domein’, bijvoorbeeld het echte domein van je bank.
  3. Voer de controle uit. De controle vindt plaats terwijl je typt, of wanneer je op Enter of Check drukt. Met Shift+Enter voeg je een nieuwe regel toe.
  4. Lees het vonnis. In het gekleurde vak staat ‘Lookalike-risico’, ‘Controleer dit’, ‘Ziet er goed uit’ of ‘Opmerkingen’, met één regel per bevinding. Bij een melding met meerdere hosts wordt een tabel weergegeven met één resultaat per host.
  5. Zoek de afwijkende letters. Verdachte tekens zijn gemarkeerd in het gemarkeerde domein. In de tabel ‘Tekens’ wordt elk teken vermeld met zijn codepunt, schrift en de ASCII-letter die het nabootst.
  6. Kopieer het of stuur het door. Kopieer de Unicode- of Punycode-vorm, of gebruik ‘Verzenden naar…’ om het domein op te zoeken via ‘DNS over HTTPS Lookup’ of ‘Abuse Contact Lookup’.

Voorbeeld

Cyrillisch-achtig teken in Punycode

Invoer
xn--80ak6aa92e.example
Uitvoer (vastgelegd op 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

Dit wordt gedecodeerd naar аррӏе.example: alle vijf letters zijn Cyrillisch en worden uitgesproken als ‘apple’, dus het label wordt gemarkeerd als ‘verwarrend binnen hetzelfde schrift’ en elk teken wordt gemarkeerd. Met ‘Load example’ wordt ook ‘apple.example’ in het vergelijkingsveld geplaatst, dat dezelfde structuur heeft.

Wat er wordt gecontroleerd

SignaalWat dit betekent
Verschillende lettertypen op één etiketLatijnse tekens vermengd met Cyrillische of Griekse tekens binnen één label worden rood weergegeven. Combinaties die door UTS #39 worden geaccepteerd, zoals Latijnse tekens met Japanse tekens, worden alleen vermeld als een teken op ASCII lijkt.
Een kopie van het volledige scriptElke letter is afkomstig uit een ander alfabet, maar het label leest als een ASCII-woord, zoals het Cyrillische ‘аррӏе’ voor ‘apple’. Dit is rood.
Verschil dat uitsluitend in de klemtoon ligtEen woord als ‘wället’ lees je als ‘wallet’ als je het accent over het hoofd ziet. Dit is een gele. Controleer deze bevinding.
UTS #39-prototypeDe tabel ‘Tekens’ geeft aan welke ASCII-letter of -cijfer elk teken nabootst, aangeduid als ‘lijkt op ASCII’, ‘niet-ASCII’ of ‘ASCII’.
BeperkingsniveauVan ‘Alleen ASCII’ naar ‘Onbeperkt’, conform UTS #39. ‘Minimaal beperkend’ en ‘Onbeperkt’ worden in het rood weergegeven omdat deze de meest risicovolle combinaties toestaan.
Onzichtbare tekens en browsertoewijzingAls de browser de host zou herschrijven, bijvoorbeeld door een teken met nulbreedte weg te laten of letters met volledige breedte om te zetten in normale letters, krijg je een gele waarschuwing en verschijnt het veld ‘Wat de browser opent’. Als de browser de host niet kan toewijzen, worden onzichtbare tekens daarin rood weergegeven.
Vreemde stippenIdeografische punten of punten met volledige breedte (U+3002, U+FF0E, U+FF61) worden in browsers als punten weergegeven, maar kunnen door filters glippen die platte tekst vergelijken.
Gebroken PunycodeEen xn---label dat niet correct wordt gedecodeerd, is rood.
ASCII-trucsGewone ASCII-namen waarin een 0 voor de letter o, een 1 voor de letter l, 'rn' voor de letter m of 'vv' voor de letter w wordt gebruikt, krijgen een opmerking. Gebruik het vergelijkingsveld om dit te controleren.
VergelijkingsresultaatHetzelfde domein, Verwarrend (dezelfde structuur), Verwarrend als hoofdletters en kleine letters buiten beschouwing worden gelaten, Verschilt alleen in accenten, 1 of 2 aanpassingen nodig (waarschijnlijk typo-squatting) of Niet verwarrend.

Nog meer voorbeelden

De Cyrillische letter „а“ in een Latijnse naam, vergeleken met „wallet.example“

Invoer
wаllet.example
Resultaat

Risico op verwarring: het label "wаllet" bevat een mix van schriftsoorten (Latijns + Cyrillisch, beperkingsniveau: minimaal beperkend); 1 teken lijkt op ASCII en het wordt gelezen als "wallet". Punycode-vorm xn--wllet-4ve[.]example. Vergelijking: Verwarrend, beide skeletten zijn wallet[.]exarnple.

Cijfer 1 in plaats van l, vergeleken met wallet.example

Invoer
wa1let.example
Resultaat

Ziet er netjes uit: hostnaam uitsluitend in ASCII: geen homoglyfen, geen gemengde schriften. Volgens een opmerking bevat het label een „1“ (die als „l“ kan worden gelezen). Vergelijking: Verwarrend, omdat beide namen de basisstructuur wallet[.]exarnple hebben.

Letter met accent, vergeleken met wallet.example

Invoer
wället.example
Resultaat

Let eens op: het label „wället“ wordt gelezen als „wallet“ als je de accenten over het hoofd ziet. Punycode-vorm: xn--wllet-gra[.]example, beperkingsniveau: Single Script. Vergelijking: het enige verschil zit in de accenten.

Veelgestelde vragen

Wat controleert de tester?

Elk label wordt vanuit Punycode gedecodeerd met een RFC 3492-decoder; elk teken krijgt zijn Unicode-script en zijn UTS #39-prototype uit confusables.txt (Unicode 18.0), en het label ondergaat een controle op gemengde scripts en krijgt een UTS #39-beperkingsniveau toegewezen. Labels waarvan alle letters als ASCII worden gelezen, worden gemarkeerd als ‘whole-script confusables’.

Kan het een lookalike over het hoofd zien of een echt domein als verdacht markeren?

Ja. UTS #39 heeft betrekking op tekens die op elkaar lijken, niet op typefouten, dus een verwisselde of ontbrekende letter komt alleen naar voren via de bewerkingsafstand in het vergelijkingsveld, en ASCII-trucs zoals ‘rn’ voor ‘m’ worden als opmerkingen vermeld. Legitieme niet-Latijnse namen, bijvoorbeeld sommige Cyrillische domeinen onder .рф, kunnen als Latijnse woorden worden gelezen en als zodanig worden gemarkeerd.

Wordt er iets via het netwerk verzonden?

Nee. Het decoderen, het herkennen van het schrift en het raadplegen van de tabel met verwisselbare tekens vinden op deze pagina plaats; de Punycode-vorm wordt gegenereerd door de URL-parser van je browser en er wordt geen DNS-opzoeking uitgevoerd.

Wat betekenen de beperkingsniveaus?

Ze zijn afkomstig uit Unicode UTS #39. „ASCII-Only” maakt uitsluitend gebruik van standaard ASCII. „Single Script” maakt gebruik van één schriftsysteem. „Highly Restrictive” staat Latijn toe in combinatie met Chinees, Japans of Koreaans. ‘Moderately Restrictive’ staat Latijn toe in combinatie met één ander gangbaar schrift, met uitzondering van Cyrillisch en Grieks. ‘Minimally Restrictive’ staat andere combinaties toe, en ‘Unrestricted’ betekent dat een teken buiten het identificatieprofiel valt.

Waarom geeft de tool aan dat de browser onder een andere naam wordt geopend?

Browsers normaliseren hostnamen met behulp van de UTS #46-toewijzing. Deze zet onder andere letters met volledige breedte om in normale letters en verwijdert onzichtbare tekens, zoals de spatie met nulbreedte en het zachte koppelteken. De link opent vervolgens de toegewezen naam, terwijl de oorspronkelijke tekst nog steeds door filters kan glippen die onbewerkte tekenreeksen vergelijken.

Hoeveel hosts kan ik tegelijkertijd controleren?

Plak een lijst of een bericht en de tool selecteert maximaal 50 hostnamen, waarbij IP-adressen worden overgeslagen. Er wordt tekst van maximaal 20.000 tekens geanalyseerd, en ook eventuele niet-ASCII-woorden buiten de hostnamen worden gecontroleerd.

Uitleg van termen

Onderzoek van PhishDestroy