Como protegerse frente a ataques de phishing en dominios Unicode
En 2017 se presentó una prueba de concepto para un ataque conocido como IDN homograph Attack. IDN responde a International Domain Name o nombre de dominio internacional. Aunque los principales navegadores están haciendo los deberes para frenar estos ataques de phishing, podemos utilizar el complemento IDN Safe para estar seguros de que los dominios que visitamos no están manipulados (bajo una falsa apariencia legítima).
Ataque de phishing sobre dominios aparentemente legítimos
Como demostró Xudong Zheng el año pasado, los principales navegadores -Chrome, Firefox, Opera- presentaban debilidades a la hora de evadirse de ataques para este tipo de vulnerabilidad, pudiendo llevarnos a páginas maliciosas a través de ataques de ingeniería social (phishing) y que podrían suponer que un tercero robase nuestras credenciales del navegador.
El siguiente enlace enlace de ejemplo de ejemplo te dará una muestra de ello (es inofensivo).
Si al hacer clic sobre el enlace anterior vemos en la barra de direcciones https://www.аррlе.com estaremos utilizando un navegador vulnerable a lo que se conoce como ataque homógrafo de nombre de dominio internacionalizado. Casi nada, ¿verdad? 🙂
La URL anterior no lleva en ningún caso a la web oficial de Apple, aunque en la barra de direcciones aparece como legítima. Lo que se ha hecho es crear un dominio con caracteres Unicode -en lugar del comúnmente usado alfabeto ASCII– con caracteres extranjeros que nuestro navegador, al traducir, muestra como se ha visto.
La «a» de apple.com es realmente un carácter «a» cirílico (U+0430) y no un carácter ASCII, porque tendría que corresponderse con U+0061.
Detalles del ataque homógrafo de nombre de dominio internacionalizado
Un ataque de este tipo (me niego a volver a escribir semejante «chorizo» de texto) explota el hecho de que los caracteres utilizados en sistemas múltiples de escritura aparezcan representados de forma similar por los navegadores web.
Como ejemplo, una letra C en alfabeto latino se parece a una C en alfabeto cirílico, mientras que solamente en el alfabeto latino, dos letras «i» mayúsculas son representadas de igual forma que dos «l» minúsculas. En 2015 ya se demostró una vulnerabilidad similar con respecto al ciberataque sufrido por Lloyds Bank. Aquí entra en juego lo que se conoce por «punycodes».
La Wikipedia describe un punycode como:
Una sintaxis de codificación usada en programación que usa una cadena Unicode que puede ser traducida en una cadena de caracteres más limitada compatible con los nombres de red. […] La codificación es usada como parte de IDNA, que es un sistema que habilita el uso de IDNA (iniciales de nombres de dominios internacionalizados en inglés) en todos los archivos de órdenes soportados por Unicode.
En su momento no se reportó dicha vulnerabilidad en otros navegadores como Safari, Internet Explorer o Edge, aunque por ejemplo en este último he realizado la prueba y sí ha demostrado ser vulnerable.
Como protegerse de la explotación de nombres de dominio Unicode
Se han lanzado actualizaciones en los últimos meses para proteger a los usuarios, mostrando el Punycode en el nombre de dominio (en lugar de su traducción al alfabeto Unicode) cuando un dominio emplea caracteres correspondientes a sistemas de escritura múltiples (internacionalizados).
Sin embargo estos avisos y contramedidas no consiguen proteger el 100% de las veces frente a estos intentos de phishing. Es conveniente por tanto ayudarnos de otros sistemas que nos eviten caer en estos ataques de ingeniería social.
IDN Safe
El complemento IDN Safe para el navegador nos avisa cuando estamos visitando una URL con nombre de dominio internacionalizado y además bloquea la carga de la página. Más que suficiente para hacernos meditar la situación. Si intentamos cargar el anterior dominio falseado esto es lo que veremos:
Obviamente el hecho de que este complemento bloquee directamente las webs puede suponer un dolor de cabeza -o algo peor para quienes utilizan alfabeto chino- y por eso se incluye una lista blanca a la que podemos ir añadiendo aquellos dominios que queremos dejar pasar nuestro tráfico. Descarga IDN Safe en los siguientes enlaces según tu navegador.
Otras contramedidas
Ya en su día se puso en conocimiento de los usuarios de Firefox una medida de protección, consistente en acceder desde la barra de direcciones a :
about:config
Para después establecer el siguiente valor como verdadero:
network.IDN_show_punycode
Finalmente, los complementos de navegador de los gestores de contraseñas más populares también pueden servirnos de protección en estos casos, así que si tenemos un complemento de este tipo no sería necesario hacer nada más. Por cierto, si estás buscando un gestor de contraseñas te recomiendo leer mi review de Abine Blur.
Categories
deweloper View All
Trabajo como consultor de ciberseguridad y me gusta lo que hago. Aficionado a la informática / tecnología en general, me gusta compartir con la gente lo poco que sé. También soy aficionado al deporte y los videojuegos.