Un ataque homógrafo (Homograph Attack o IDN Homograph Attack) es una técnica que emplea caracteres Unicode visualmente idénticos o muy similares para falsificar nombres de dominio legítimos. Por ejemplo, la letra latina "a" (U+0061) y la letra cirílica "a" (U+0430) son indistinguibles a simple vista, pero el ordenador las trata como caracteres diferentes.
Un caso ilustrativo: reemplazar la "a" latina de "apple.com" por una "a" cirílica produce un dominio que parece idéntico pero que en realidad es completamente distinto, permitiendo alojar un sitio falso de Apple. En 2017, el investigador de seguridad Xudong Zheng demostró esta técnica y generó gran repercusión.
El sistema de nombres de dominio internacionalizados (IDN) es lo que hace posible este ataque. IDN permite usar caracteres no ASCII (japonés, árabe, cirílico, etc.) en los nombres de dominio, que internamente se convierten a Punycode (codificación que comienza con xn--). Como la barra de direcciones del navegador muestra la versión Unicode, el usuario difícilmente detecta la suplantación.
La relación entre las URL acortadas y los ataques homógrafos presenta un doble riesgo. Primero, el propio dominio del servicio de acortamiento puede ser suplantado mediante homógrafos. Segundo, la URL de destino de un enlace acortado puede ser un sitio de phishing con un dominio homógrafo. Los servicios de URL acortadas deben convertir los dominios registrados a Punycode y compararlos con bases de datos de dominios de phishing conocidos.
Los principales navegadores han implementado contramedidas. Chrome y Firefox muestran la versión Punycode del dominio cuando detectan mezcla de scripts (sistemas de escritura) diferentes, alertando al usuario de que el dominio podría ser sospechoso. Puedes encontrar libros relacionados en Amazon.