sábado, noviembre 22, 2014

Premio Bitácoras 2014 como mejor blog de Seguridad Informática. ¡Gracias Hackers!

Ayer se entregaron los Premios Bitácoras 2014, y El lado del mal recibió el premio al Mejor Blog de Seguridad Informática. Este es el segundo año que lo consigue - también lo logró en 2012 -, y esta vez sí me pasé a por él, ya que la vez anterior no pude hacerlo. Quería aprovechar los pocos minutos que se tienen cuando te dan este premio para hacer una petición a los bloggers que allí se congregan, así que, a pesar de llevar un largo día a las espaldas, me pasé a recoger el premio.

Figura 1: Premio Bitácoras 2014 al mejor blog de seguridad informática

El premio se lo dan a El lado del Mal, y no a Chema Alonso, ya que sois muchos los que escribís artículos aquí, culpables todos ellos de que otros muchos visitantes vengan a leerlos y día a día sea un poco más conocido. Pero también se lo dan a los hackers que no tienen un blog popular pero hacen investigaciones durante semanas y/o meses para publicar su trabajo en un post. Gracias a todos esos hackers que con - pequeños en tráfico pero grandes en valor - sus blogs aumentan el conocimiento general de la seguridad informática. Es por eso hice el discurso que podéis ver aquí.


Figura 2: Premios Bitácoras 2014: Mejor Blog de Seguridad

Como podéis ver, aproveché mis tres minutos para pedirle a todos los allí presentes, que nunca utilicen el término de hacker tal y como la RAE lo ha recogido en su diccionario. La acepción de "Pirata Informático" y su directa criminalizacíon no es algo que sea justo para con el termino. Les pedí que utilicen el término de hacker como los recoge el IETF hace décadas, que es como creo que debería haber estado recogido por la RAE.

Figura 3: Hacker según el RFC 1392 de 1993

Así, mientras las empresas tecnológicas siguen contratando a los mejores hackers para evolucionen los sistemas y los hagan más seguros, algunos media siguen confundiendo a hackers con hacktivistas o ciberciminales. Ya hemos pasado las 5.000 firmas para que se cambie la definición, y espero que al final, poco a poco, la gente acabe entendiendo que los hackers son grandes. Este premio es de todos aquellos que han investigado algo, por pequeño que sea, y lo han publicado para que la gente aprenda, a pesar de que su blog no sea famoso.

Saludos Malignos! 

viernes, noviembre 21, 2014

JQuery Validation: Un bug XSS en la demo de validación

JQuery Validation es un plugin que permite validar el contenido de los formularios. Para que la gente aprenda a utilizarlos, las librerías se distribuyen con un conjunto de pequeñas pruebas de concepto que enseñan a utilizar las diferentes opciones de validación. Pues bien, si no parcheas JQuery Validation o eliminas esas demos, estás poniendo en riesgo la seguridad de tu plataforma, ya que tiene un XSS reflejado en una de ellas, tal y como se puede ver en la este artículo.

Figura 1: Elimina el XSS de la demo de JQuery Validation

Las demos de las librerías se encuentran dentro de una carpeta llamada demo de la ruta de instalación de JQuery Validation. Es fácil localizar sitios en Internet con este componente, ya que la ruta de la web suele ser jquery-validation más la versión concreta de las librerías.

Figura 2: Demos en una instalación de JQuery Validation

Dentro de esas demos, hay unas para validación por AJAX de los valores del captcha que puedes encontrar dentro de la ruta %jquery-validation-path%/demo/captcha/index.php. Al invocar esa URL en un sitio con las demos del componetne activadas aparecerá este pequeño formulario.

Figura 3: Demo de validación de Captcha por AJAX en JQuery Validation

Pues bien, el investigador Sijmen Ruwhof ha publicado que en ese fichero exacto hay un bug de XSS reflejado que hace años que no querían arreglar en el proyecto, pero por suerte, después del ruido generado con su publicación han arreglado. El bug se encuentra en la generación de un enlace que utiliza la ruta que del fichero.

Figura 4: Código vulnerable en la demo

Un atacante puede inyectar algo tan sencillo como cerrar el hipervínculo y abrir una sección de código Script para lanzar cualquier código.

Figura 5: En amarillo la inyección necesaria en el exploit

Cuando se crea el enlace en la respuesta se ejecuta el Script al quedar el código como sigue.

Figura 6: Código resultante con ejecución de script
Al final, el tener los ficheros de demo publicados en una web en producción es el fallo de seguridad en sí, y deberías simplemente quitarlos. Si no lo quitas, puedes actualizar el componente que el desarrollador del plugin JQuery Validation ya lo ha arreglado. Él no fue quién introdujo el bug, sino el creador de la demostración pero si tienes este fichero sin parchear alguien podría hacer un ataque de hijacking para robar las cookies de la sesión de usuario.

Figura 7: Explotación de bug de XSS Reflejado en demo de JQuery Validation

Por supuesto, si las cookies de sesión de tu web están bien definidas con valores HTTP-Only, Secure, con la zona de aplicación restringida a los directorios concretos y no para todo el sitio, si tienes correctamente forzado el uso de filtros Anti-XSS en las variables de X-XSS-Protection y/o has configurado unas Content Security Policies para evitar la inserción en medio del código de comandos Script, entonces el impacto sería menor. En cualquier caso, tengas el framework que tengas, si usas JQuery Validation mi recomendación es que actualices a la última versión y luego quites todas las demos.

Saludos Malignos!

Entrada destacada

Hacking IA: Jailbreak, Prompt Injection, Hallucinations & Unalignment. Nuestro nuevo libro en 0xWord

Pocas veces me ha hecho tanta ilusión que saliera un nuevo libro en 0xWord como con este libro de " Hacking IA: Jailbreak, Prompt Inje...

Entradas populares