Ataques homógrafos usando nombres de dominio internacionalizados

Incluso desde antes de Internet, en los más primitivos editores de texto ya había cierta confusión para diferenciar entre "l" (letra minúscula "ele") / "1" (el número "uno") y "O" (letra mayúscula para vocal "o") / "0" (el número "cero"). Por ejemplo G00GLE.COM se parece mucho a GOOGLE.COM en algunas fuentes.
Eso es porque hasta ASCII tiene caracteres parecidos u homógrafos que pueden aprovecharse para realizar diversos tipos de ataques de phishing y conseguir redireccionar a un usuario a otra página web distinta de la que cree que va a visitar...

El tema se pone más divertido aún si tenemos en cuenta que existen caracteres visualmente idénticos de diferentes alfabetos que naturalmente tienen asignado distintos códigos Unicode. Es decir, por ejemplo a vista de un humano una "O" será igual en latín, griego o cirílico, pero sin embargo un ordenador los tratará de manera diferente cuando la procese.

Por otro lado y como si el Diablo invitara a pecar, en 2003 el Sistema de Nombres de Dominio de Internet se liberó de la restricción del uso único de caracteres en ASCII mediante el IDNA (Internationalizing Domain Names in Applications), un mecanismo que permite el uso de caracteres latinos diacríticos (ñ, é) o que no utilizan el alfabeto latino como el árabe, Hangul, Hiragana, Kanji, etc...

¡Bingo! un atacante podría registrar un nombre de dominio que se parezca al de un sitio web legítimo, pero en el que algunos de los caracteres han sido sustituidos por homógrafos en otro alfabeto. Por ejemplo, la letra "a" en latín se parece mucho a la cirílica "
а", por lo que alguien podría registrar http://ebаy.com (http://xn--eby-7cd.com/), lo que fácilmente podría confundirse con http://ebay.com. Esto se conoce como un ataque homógrafo usando nombres de dominio internacionalizados, y es más crítico en navegadores como Safari muestran los caracteres diacríticos incluso en la barra de la URL (prueba http://░͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇.ws o apple͢.com).

Fuentes:
Wikipedia: Internationalized domain name
Wikipedia: IDN homograph attack
Artem Dinaburg's Blog:
Stupid IDN Tricks: Unicode Combining Characters (or http://░͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇͇.ws)

Comentarios