Información Importante Sobre el Contenido
Estas accediendo al contenido antiguo del blog. Este artículo "Cross-Site Scripting en El Mercurio On-Line (EMOL)" es de dominio público y no será mantenido a futuro. Cualquier error o problema acerca del contenido por favor contactate conmigo desde la sección contacto.
EMOL es un portal web de noticias que tiene una gran cantidad de visitas a nivel nacional, según dicen es una de las principales plataformas “noticiosas” del país.
El bug esta en no filtrar los parametros de entrada cuando se muestra el error 404 de una pagina inexistente, por ejemplo: https://www.emol.com/pagina_no_existe
Mostrara el mensaje
Si cambiamos “pagina_no_existe” por “prueba_de_concepto”
(https://www.emol.com/prueba_de_concepto) mostrará
Asi mismo, si insertamos codigo HTML o JavaScript, este sera ejecutado.
La prueba de concepto que he hecho es:
https://www.emol.com/%3c%73%63%72%69%70%74%3e%61%6c%65%72%74%28%2f%58%53%53%2f%29%3c%2f%73%63%72%69%70%74%3e
La única restricción es que tenemos un límite de caracteres, creo que son 35 caracteres que podemos “inyectar”,
para explotarla debemos ser muy ingeniosos. Al ingresar mas de 35 caracteres, por ejemplo la URL
https://www.emol.com/123456789123456789123456789123456789 (36 caracteres) el mensaje mostrado es:
Entonces el codigo queda truncado. Si pensamos en meter un codigo javascript hay que pensar que tan solo escribiendo “<script></script>” tenemos 17 caracteres, por lo que solo nos quedarán 18 caracteres libres para poder escribir el código. Habría que probar otras técnicas como incluir un JS remoto (con src=) o bien usando el tag “style” para ahorrarnos 3 caracteres.
La vulnerabilidad fue reportada el 13 de Junio del 2011 y corregida el mismo día. Excelente tiempo de respuesta. Reportada vía email y en secureless.
EDITADO (30 de Junio)
En un comentario de un post anterior, ar4b14n ha reportado otro XSS en el sitio de EMOL. Tambien se ha agregado a secureless y se ha informado para que se solucione.
Información Importante Sobre el Contenido
Estas accediendo al contenido antiguo del blog. Este artículo "Cross-Site Scripting en El Mercurio On-Line (EMOL)" es de dominio público y no será mantenido a futuro. Cualquier error o problema acerca del contenido por favor contactate conmigo desde la sección contacto.
junio 13, 2011 a las 7:31 pm
😮 y quien ve esos errores? el programador de la pagina?
junio 13, 2011 a las 7:33 pm
Hola @royalgnz: Deben tener un “equipo de desarrollo” y ahi debe haber un responsable del sitio, supongo que ellos lo corrigen 🙂