Foro de elhacker.net

Foros Generales => Noticias => Mensaje iniciado por: wolfbcn en 29 Abril 2011, 13:47 pm



Título: Desbordamiento de enteros en PHP 5.x
Publicado por: wolfbcn en 29 Abril 2011, 13:47 pm
Alexander Gavrun ha publicado en su blog personal un fallo de seguridad que ha descubierto en la función 'phar_parse_tarfile' de PHP 5.

'phar' es una extensión de PHP 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 ficheros ZIP y TAR.

El fallo se encuentra en el fichero 'ext\phar\tar.c'. Existe un error de programación que introduce un desbordamiento de enteros durante el manejo de las cabeceras de los ficheros 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' se intentaría copiar datos a un buffer que no ha sido previamente reservado, lo que provocaría 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.

Alejandro J. Gómez López
 agomez@hispasec.com

FUENTE :http://www.hispasec.com/unaaldia/4569