lunes, 7 de noviembre de 2011

Lectura de ficheros arbitrarios en PhpMyAdmin

Se ha publicado una vulnerabilidad que afecta a PhpMyAdmin y que podría permitir a un atacante con permisos para la creación de bases de datos, leer ficheros arbitrarios del servidor donde se aloja la aplicación.

El fallo se localizaría en la función 'simplexml_load_string' del fichero 'libraries/import/xml.php'. Un atacante remoto autenticado podría obtener información sensible a través de un fichero XML especialmente manipulado.

Esta vulnerabilidad ha sido descubierta por 80sec y publicada a través de la web china de recopilación de exploits, wooyun.org

Junto con el advisory se ha hecho pública una prueba de concepto que demuestra la vulnerabilidad. Se trata de un fichero XML para poder aprovechar el fallo, en el que en la etiqueta "ENTITY" se especifica la ruta al fichero al que se desea tener acceso.

Para conseguirlo, el atacante debería importar el archivo XML proporcionado por la prueba de concepto y esto mostraría el contenido del fichero del servidor elegido dentro del mensaje de error que devuelve.


Es importante destacar que el atacante debe estar autenticado en PhpMyAdmin para poder realizar importación de ficheros y por tanto aprovechar el fallo. También necesitaría permisos para la creación de bases de datos. Este escenario es especialmente crítico en sistemas de hosting compartido.

El problema está confirmado en la versión 3.4.7, aunque posiblemente afecte a otras. No se ha publicado solución oficial aún.

Más información:


Google translate

Borja Luaces

Sergio de los Santos
Twitter: @ssantosv