Búsqueda

viernes, marzo 18, 2005

IDN y la seguridad en Internet

El mes pasado se hizo relativamente famoso un tipo de engaño conocido como IDN spoofing o ataques homográficos. Básicamente se trata de que en un correo o página maliciosa, aparece un enlace de una supesta empresa seria (un banco, una tienda online), pero el enlace en realidad lleva a otra página sin que el usuario se entere, que imita la original. Así, el usuario engañado podría introducir datos sensibles en esa página falsa. En varios medios (como aquí) apareció como noticia el hecho de que el Explorer era el único inmune a esos ataques, que si bien no es mentira, lo cierto es que es imune por no tener implementada la funcionalidad de IDN (luego veremos qué es eso), y se hacía hincapie en que el problema se debía a un error en la implementación IDN de los navegadores afectados. Logotipo de FirefoxEse mismo mes, se publicó la noticia de la última actualización del navegador Firefox (excelente navegador que recomiendo a todo el mundo) corregía una serie de vulnerabilidades (el que esté libre de pecado, que tire la primera piedra) y mencionaba nuevamente que una de ellas era el error en el uso de IDN.

Vale, pero ¿qué es esto del IDN? IDN son las siglas de International Domain Names, y es un estándar que permite utilizar caracteres internacionales en los nombres de dominio. De todos es conocida la limitación de los nombres de dominio tradicionales, que no podían contener eñes ni vocales acentuadas (y no digamos ya caracteres japoneses). El IDN supera esta limitación permitiendo el uso de caracteres Unicode, que es un estandar para la representación de todo tipo de caracteres de todos los lenguajes del mundo (incluso hay un borrador para incluir las runas de los lenguajes inventados por Tolkien). De esta manera, podríamos tener dominios como www.españa-cañí.es o www.jamón.com que antes era imposible. Aunque el estándar comenzó a crearse a finales de los 90 y los ataques homográficos ya se advirtieron en 2001, hasta hace poco no había demasiados navegadores que lo implementaran, ni demasiados dominios que lo utilizaran.

¡Fantástico! Entonces ¿cuál es el problema? Pues que como la inventiva humana no tiene límites en cuanto a engañar al prójimo (y si se le puede robar, pues mucho mejor) en seguida hay quien se dio cuenta de que podría registrar nombres de dominio gráficamente idénticos a otros ya existentes (de ahí lo de homográfico). ¿Pero cómo? Muy fácil. Hay alfabetos no latinos, como el cirílico, que contiene caracteres gráficamente idénticos a nuestro alfabeto latino. Pensemos por ejemplo en las famosas siglas CCCP (que no son las letras "ce" y "pe" latinas, sino las "es" y "er" cirílicas). La trampa consiste en registrar por ejemplo el dominio www.cajamadrid.es y que en realidad la "c" no sea la "ce" latina, sino la "es" cirílica. Sería un dominio diferente al de la caja que todos conocemos, y perfectamente legal, pero si resulta que el propietario le da por duplicar su apariencia para ver si algún incauto introduce sus números de tarjeta, pues... Aquí hay un ejemplo práctico (eso sí, no funcionará con el Explorer, ya que no implementa IDN).

Así pues, el problema de los ataques homográficos no es que los navegadores lo implementen mal. El Firefox lo implementa correctamente (supongo que los otros también, pero no los he probado). El problema es que no existe una regulación en la asignación de dominios que evite estos usos indebidos. Y no es necesario el uso de IDN, ya que con buena imaginación se pueden registrar dominios engañosos que nada tienen que ver con el que quieren imitar. Podemos probar con www.cajademadrid.com, que no es precisamente la web oficial de Caja Madrid, que es www.cajamadrid.es.

Hay un gran debate sobre cómo solucionar este asunto. Mientras no haya una política en la concesión de dominios que dificulte estos engaños, hay que recurrir a "trampas" o a avisos cuando se va a una dirección IDN. Y hay que hacerlo sin considerar los dominios IDN como "raros" o "peligrosos", ya que los hay perfectamente legítimos como http://räksmörgås.josefsson.org. La solución temporal del Firefox (y que aparece en la actualización) es la posibilidad de que el usuario decida si desea ver la URL tal cual en la barra de direcciones , o si por el contrario quiere verla en Punycode. ¡Vaya hombre! Otro palabro. Bueno, para entendernos digamos el el Punycode es una forma de codificar caracteres Unicode en el limitado juego de caracteres original de nombres de dominio, para permitir a navegadores anticuados que no implementan IDN visitar esos dominios. Así, en vez de, por ejemplo, http://räksmörgås.josefsson.org, veríamos http://xn--rksmrgs-5wao1o.josefsson.org (esta última URL se puede abrir con el Explorer).

Bueno, para resumir: el error es considerar que la implementación del IDN del Firefox y otros es erronea, ya que como hemos visto, es un problema de política de concesión de dominios.

4 comentarios:

  1. Hola Alf

    Desde Malaprensa, buena suerte para Malaciencia.
    Un saludo
    Josu

    ResponderEliminar
  2. Gracias. Espero que con el tiempo, Malaciencia sea igual de leído que Malaprensa.

    ResponderEliminar
  3. ProBizXProsolx has been established business by professional peo ple who have already offered offered excellent serv
    ices in Web Designing and Online Promotions of Business. Our objective is to bring the best results in our expertise field ranging from management, business consulting, IT solutions, offshore outsourcing, web solutions and SEM.

    ResponderEliminar
  4. para serte franca me preocupa un poco saber muy poco al respecto, desde luego que es un poco difícil de comprender.. pero seria de gran utilidad...

    ResponderEliminar

Nota: solo los miembros de este blog pueden publicar comentarios.