Se
ha confirmado un
problema en Chrome y Firefox que podría permitir la realización de ataques de phishing mediante el uso de
caracteres Unicode. Conocidos como ataques homográficos, representan un
problema que los navegadores intentan evitar, pero se ha descubierto una forma para
evitar los controles actuales. Se puede visitar https://www.аррӏе.com/
para entender las implicaciones.
![]() |
¿A qué cuela? |
Con el uso de Punycode se pueden representar
caracteres Unicode mediante el subconjunto de caracteres ASCII empleado para
los nombres en Internet. De esta forma se pueden registrar dominios que hagan
uso de caracteres no permitidos, por ejemplo podríamos registrar un dominio
como España.com que quedaría como xn--espaa-rta.com. Evidentemente no es muy
empleado porque para temas como el SEO, promoción y marca, no es muy eficiente.
Queda raro que haya que escribir algo como xn--espaa-rta.com.
Ahora bien, las implicaciones en
el mundo de la seguridad que pueden representar estos dominios son grandes, ya que muchos
caracteres Unicode pueden ser difíciles de distinguir de los caracteres ASCII
normales. De esta forma, es posible registrar dominios como "xn--pple-43d.com",
equivalente a "аpple.com" por el uso de la a en cirílico "а"
(U+0430) en vez de la "a" en ASCII (U+0041). Este tipo de ataques son conocidos como homográficos.
Asusta, eh? (vía https://t.co/YZOR49q342) pic.twitter.com/Ua6UWAWzcr— David García (@dgn1729) 18 de abril de 2017
Los navegadores modernos tienen
mecanismos para evitar o limitar este tipo de ataques. En Chrome y Firefox la
forma Unicode se esconde si un dominio contiene caracteres de varios lenguajes
diferentes. De esta forma, por ejemplo el dominio "xn--pple-43d.com" aparecerá
como tal (en vez de "аpple.com") al contar con caracteres de dos
lenguajes, de esta forma se evita la confusión con el dominio real.
Pero el sistema de protección
ante ataques homográficos falla si todos los caracteres son sustituidos con un carácter
similar del mismo lenguaje. El dominio "аррӏе.com" registrado como "xn--80ak6aa92e.com"
evita el filtro al emplear únicamente caracteres cirílicos. Esta forma de
evitar la protección afecta a Chrome y Firefox, mientras que Internet Explorer,
Microsoft Edge y Safari se libran del problema.
El desarrollador Xudong Zheng (@Xudong_Zheng) reportó el fallo a Chrome
y Firefox el 20 de enero de 2017 y confirma que ha quedado corregido en la rama
de Chrome 59, aunque finalmente se incluirá en Chrome 58 que estará disponible en
torno a la semana que viene. Por ahora sigue sin corregir en Firefox ya que no
han decidido si está dentro de su alcance.
Como contramedida
en Firefox se puede configurar desde about:config y asignar network.IDN_show_punycode
a true. Esto fuerza a Firefox a mostrar siempre los dominios IDN en su forma Punycode,
lo que permite identificar los dominios maliciosos.
Más información:
Phishing with Unicode Domains
Punycode
Registrar un dominio con ñ
Phishing with Unicode Domains (Reddit)
Antonio Ropero
Twitter: @aropero
No hay comentarios:
Publicar un comentario