URL y dominios de phishing

Detector de homoglifos

Se ejecuta localmenteNueva

La herramienta en sí está en inglés; en esta página se explica en tu idioma.

Utiliza Detector de homoglifos

Para qué sirve

Pega un dominio, una URL o un texto para ver cada etiqueta en Unicode y en punycode, la escritura y el prototipo UTS #39 de cada carácter, y si el nombre mezcla escrituras o se lee como otro nombre ASCII.

Funciona íntegramente en tu navegador: no se sube nada de lo que introduzcas.

Cómo utilizar Detector de homoglifos

  1. Pega el nombre. Pega un dominio, una URL, una dirección de correo, varias líneas o un mensaje completo. Se aceptan formas neutralizadas como hxxps:// y [.], y las etiquetas xn-- se decodifican.
  2. Añade el dominio real (opcional). Escribe el dominio que esperabas en Compare with the real domain (Comparar con el dominio real), por ejemplo el dominio real de tu banco.
  3. Ejecuta la comprobación. La comprobación se ejecuta mientras escribes, o pulsa Intro o Check (Comprobar). Mayús+Intro añade una línea nueva.
  4. Lee el veredicto. El recuadro de color dice Lookalike risk (Riesgo de imitación), Check this (Revisar), Looks clean (Parece limpio) o Notes (Notas), con una línea por hallazgo. Un mensaje con varios hosts da una tabla con un resultado por host.
  5. Encuentra las letras extrañas. Los caracteres sospechosos se marcan en el dominio resaltado. La tabla Characters lista cada uno con su punto de código, su escritura y la letra ASCII que imita.
  6. Copia o pásalo a otra herramienta. Copia la forma Unicode o punycode, o usa Send to… (Enviar a…) para consultar el dominio en DNS over HTTPS Lookup o Abuse Contact Lookup.

Ejemplo

Imitación en cirílico codificada en punycode

Entrada
xn--80ak6aa92e.example
Resultado (registrado el 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

Se decodifica como аррӏе.example: las cinco letras son cirílicas y se leen como apple, así que la etiqueta se marca como confundible de escritura completa y se señala cada carácter. Load example también pone apple.example en el campo de comparación, que tiene el mismo esqueleto.

Qué comprueba

SeñalQué significa
Escrituras mezcladas en una etiquetaEl latino mezclado con cirílico o griego dentro de una etiqueta aparece en rojo. Las mezclas que UTS #39 acepta, como latino con japonés, solo se anotan, salvo que un carácter parezca ASCII.
Imitación de escritura completaTodas las letras proceden de otro alfabeto, pero la etiqueta se lee como una palabra ASCII, como el cirílico аррӏе por apple. Aparece en rojo.
Diferencia solo de acentosUna etiqueta como wället se lee como wallet si se pasa por alto el acento. Es un hallazgo amarillo Check this.
Prototipo UTS #39La tabla Characters muestra qué letra o dígito ASCII imita cada carácter, marcado como looks like ASCII, non-ASCII o ASCII.
Nivel de restricciónDe ASCII-Only a Unrestricted, según UTS #39. Minimally Restrictive y Unrestricted se muestran en rojo porque permiten las mezclas más arriesgadas.
Caracteres invisibles y mapeo del navegadorSi el navegador reescribiría el host, por ejemplo eliminando un carácter de ancho cero o convirtiendo letras de ancho completo en normales, recibes un aviso amarillo y un campo What the browser opens (Lo que abre el navegador). Si el navegador no puede mapear el host, los caracteres invisibles que contiene aparecen en rojo.
Puntos extrañosLos puntos ideográficos o de ancho completo (U+3002, U+FF0E, U+FF61) funcionan como puntos en los navegadores, pero pueden esquivar los filtros que comparan texto sin más.
Punycode rotoUna etiqueta xn-- que no se decodifica correctamente aparece en rojo.
Trucos ASCIILos nombres solo ASCII con 0 por o, 1 por l, rn por m o vv por w reciben una nota. Usa el campo de comparación para confirmarlo.
Resultado de la comparaciónSame domain, Confusable (same skeleton), Confusable once case is ignored, Differs only by accents, 1 or 2 edits away (likely typo-squat) o Not confusable: mismo dominio, confundible (mismo esqueleto), confundible si se ignoran las mayúsculas, solo difiere en los acentos, a 1 o 2 ediciones (probable typosquatting) o no confundible.

Más ejemplos

a cirílica en un nombre latino, comparado con wallet.example

Entrada
wаllet.example
Resultado

Lookalike risk: Label "wаllet" mixes scripts (Latin + Cyrillic, restriction level: Minimally Restrictive); 1 character(s) look like ASCII and it reads as "wallet". Forma punycode xn--wllet-4ve[.]example. Comparación: Confusable, ambos esqueletos son wallet[.]exarnple.

Dígito 1 en lugar de l, comparado con wallet.example

Entrada
wa1let.example
Resultado

Looks clean: ASCII-only host: no homoglyphs, no mixed scripts. Una nota indica que la etiqueta contiene «1» (puede leerse como l). Comparación: Confusable, porque ambos nombres tienen el esqueleto wallet[.]exarnple.

Letra acentuada, comparada con wallet.example

Entrada
wället.example
Resultado

Check this: Label "wället" reads as "wallet" if the accents are overlooked. Forma punycode xn--wllet-gra[.]example, nivel de restricción Single Script. Comparación: Differs only by accents.

Preguntas frecuentes

¿Qué comprueba el detector?

Cada etiqueta se decodifica de punycode con un decodificador RFC 3492, cada carácter recibe su escritura Unicode y su prototipo UTS #39 de confusables.txt (Unicode 18.0), y la etiqueta pasa una comprobación de escrituras mezcladas y recibe un nivel de restricción UTS #39. Las etiquetas cuyas letras se leen todas como ASCII se marcan como confundibles de escritura completa.

¿Puede pasar por alto una imitación o marcar un dominio real?

Sí. UTS #39 cubre caracteres que se parecen, no errores tipográficos, así que una letra cambiada o que falta solo aparece mediante la distancia de edición en el campo de comparación, y los trucos ASCII como rn por m se listan como notas. Los nombres legítimos no latinos, por ejemplo algunos dominios cirílicos bajo .рф, pueden leerse como palabras latinas y marcarse.

¿Se envía algo por la red?

No. La decodificación, la detección de escrituras y la tabla de confundibles se ejecutan en esta página; la forma punycode procede del propio analizador de URL de tu navegador y no se hace ninguna consulta DNS.

¿Qué significan los niveles de restricción?

Proceden de Unicode UTS #39. ASCII-Only usa ASCII sin más. Single Script usa un solo sistema de escritura. Highly Restrictive permite el latino con chino, japonés o coreano. Moderately Restrictive permite el latino con otra escritura común, salvo el cirílico y el griego. Minimally Restrictive permite otras mezclas, y Unrestricted significa que un carácter está fuera del perfil de identificadores.

¿Por qué la herramienta dice que el navegador abre otro nombre?

Los navegadores normalizan los nombres de host con el mapeo UTS #46. Entre otras cosas, convierte las letras de ancho completo en normales y elimina caracteres invisibles como el espacio de ancho cero y el guion suave. El enlace abre entonces el nombre mapeado, mientras que el texto tal como está escrito puede seguir esquivando los filtros que comparan cadenas sin procesar.

¿Cuántos hosts puedo comprobar a la vez?

Pega una lista o un mensaje y la herramienta extrae hasta 50 nombres de host, omitiendo las direcciones IP. El texto se analiza hasta 20 000 caracteres, y también se comprueban las palabras no ASCII que estén fuera de los nombres de host.

Explicación de los términos

Investigación de PhishDestroy