Alexander Gavrun publicó en su blog personal una falla de seguridad que ha descubierto en la función 'phar_parse_tarfile' de PHP 5.
'phar' es una extensión concebida para empaquetar aplicaciones PHP y facilitar así su distribución e instalación en otros sistemas. Proporciona además una abstracción para manipular archivos ZIP y TAR.
La falla se encuentra en el archivo 'ext\phar\tar.c'. Existe un error de programación que introduce un desbordamiento de enteros durante el manejo de las cabeceras de los archivos TAR. Un atacante puede manipular el valor 'entry.filename_len' al haber sido asignado después de operar con el resultado de la función 'phar_tar_number' que utiliza como argumento el 'header->size'.
Al llamar a la función 'php_stream_read' intentaría copiar datos a un buffer que no ha sido previamente reservado, lo que provoca una denegación de servicio y potencialmente permitiría ejecutar código arbitrario.
Alexander Gavrun ha publicado una prueba de concepto en su blog, codificada en Base64. Hasta el momento php.net no ha publicado ninguna solución oficial.
Se recomienda no procesar con esta función archivos TAR en los que no se confíe.
Si quieren más información pueden visitar: http://www.hispasec.com/unaaldia/4569
'phar' es una extensión concebida para empaquetar aplicaciones PHP y facilitar así su distribución e instalación en otros sistemas. Proporciona además una abstracción para manipular archivos ZIP y TAR.
La falla se encuentra en el archivo 'ext\phar\tar.c'. Existe un error de programación que introduce un desbordamiento de enteros durante el manejo de las cabeceras de los archivos TAR. Un atacante puede manipular el valor 'entry.filename_len' al haber sido asignado después de operar con el resultado de la función 'phar_tar_number' que utiliza como argumento el 'header->size'.
Al llamar a la función 'php_stream_read' intentaría copiar datos a un buffer que no ha sido previamente reservado, lo que provoca una denegación de servicio y potencialmente permitiría ejecutar código arbitrario.
Alexander Gavrun ha publicado una prueba de concepto en su blog, codificada en Base64. Hasta el momento php.net no ha publicado ninguna solución oficial.
Se recomienda no procesar con esta función archivos TAR en los que no se confíe.
Si quieren más información pueden visitar: http://www.hispasec.com/unaaldia/4569
No hay comentarios:
Publicar un comentario