PhpMyAdmin corrige un XSS detectado por ElevenPaths (CVE-2014-9219)

jueves, 4 de diciembre de 2014

El pasado 28 de noviembre, durante el desarrollo de un módulo de intrusión sobre el gestor de MySQL PhpMyAdmin por parte del equipo de desarrollo de Faast, se detectó una vulnerabilidad de cross site scripting desconocida hasta el momento en el popular programa. Se ha reportado a los responsables de forma privada y finalmente le han asignado el CVE-2014-9219. Afectaba a todas las versiones de éste producto hasta la fecha.

Anuncio y corrección de la vulnerabilidad

El equipo de PhpMyAdmin ha actuado con bastante rapidez, y en apenas tres días han solucionado el problema y publicado la nueva versión. La vulnerabilidad (actualmente explotable en cualquier versión inferior a la 4.2.13.1) radica en un mal filtrado en la línea 31 del fichero "url.php", en el que se estaba utilizando incorrectamente la función htmlspecialchars.

En la siguiente imagen se observa el parche aplicado en donde se remplaza la función htmlspecialchars por PMA_escapeJsString.

Commit 9b2479b7216dd91a6cc2f231c0fd6b85d457f6e2 con la línea corregida

Filtrando solamente los caracteres especiales HTML, su explotación resultaba trivial. Además, se evadían las protecciones anti-XSS que implementan los navegadores debido a que el código inyectado era reflejado dentro de un tag "script". Éste tipo de vulnerabilidades son unas de las más comunes en aplicaciones web, y permiten entre otras la obtención de cookies de sesión del usuario atacado, como se muestra en la siguiente imagen.

Explotación del XSS

Si actualmente en tu organización se está usando alguna versión de PhpMyAdmin, se recomienda actualizar lo antes posible a la última versión (4.2.13.1) o aplicar el parche proporcionado por sus desarrolladores. Adicionalmente también recomendamos el uso de nuestro escáner de vulnerabilidades Faast que por supuesto ya detecta esta vulnerabilidad "de serie".

Además, recuerda que disponemos de un plugin específico de Latch para PhpMyAdmin. Toda la información de cómo instalarlo aquí.

Manuel Fernández
manuel.fernandez@11paths.com

No hay comentarios:

Publicar un comentario en la entrada