Hace menos de un mes saltaba la polémica a causa de un grave
problema de seguridad en Hotmail, el servicio de cuentas de
correo gratuitas más empleado del mundo. Si bien aquellos
agujeros fueron parcheados convenientemente por Microsoft, Georgi
Guninski ha descubierto un nuevo método para robar las
contraseñas de los usuarios.
El bug anterior permitía acceder al correo de cualquier usuario
de Hotmail sin necesidad de conocer su contraseña, en esta
ocasión, Georgi Guninski, ya habitual en esta sección de
noticias, ha descubierto un medio por el cual se puede conseguir
robar la contraseña del usuario que se desee.
El nuevo problema radica en la posibilidad de inyectar y ejecutar
código JavaScript dentro de un mensaje e-mail en Hotmail a través
del uso del tag . La vulnerabilidad está presente si el
usuario emplea Internet Explorer 5.0 o Netscape Communicator 4.x
(aunque la forma de llevar a cabo el ataque es diferente
dependiendo del navegador). El ejecutar código JavaScript cuando
el usuario abre un mensaje puede permitir mostrar una pantalla de
acceso falsa de tal forma que cuando el usuario introduzca su
contraseña esta sea robada.
Georgi Guninski también está convencido de la posibilidad de leer
los mensajes del usuario atacado, enviar mensajes empleando su
cuenta y otras muchas acciones semejantes. Hace aproximadamente
un año, cuando se demostró la posibilidad de robar contraseñas
empleando código JavaScript Hotmail implementó diversos filtros
para buscar etiquetas JavaScript dentro de los mensajes y
dejarlas inoperativas.
Tras esta limitación, se encontró que el código JavaScript podía
ser implementado con el mismo resultado en las etiquetas de
cabeceras de los mensajes e-mail. Rápidamente Microsoft volvió a
implementar un nuevo filtro que eliminaba todo tipo de scripts y
elementos peligrosos de los mensajes entrantes. Pero Guninski ha
encontrado otra forma de saltarse esta protección, al incorporar
el código en las etiquetas de estilo.
Como se comprueba en la demostración del autor, el ataque se
lleva a cabo mucho más fácilmente si el usuario utiliza Internet
Explorer 5, que si su navegador es Netscape Communicator.
Para IE 5:
<P STYLE="left:expression(eval('alert(\'JavaScript is
executed\’);window.close()’))» >
Para Netscape Communicator:
alert(‘JavaScript is executed’);
a=window.open(document.links[2]);
setTimeout(‘alert(\’The first message in your Inbox is from:
\’+a.document.links[26].text)’,20000);
Más información:
Georgi Guninski:
http://www.nat.bg/~joro
News.com:
http://news.cnet.com/news/0-1005-200-117672.html?tag=st.cn.1fd2.
Deja una respuesta