Denegacion de servicio en PHP 5.3.*

Iniciado por RooT_Shell, Junio 25, 2010, 05:51:18 PM

Tema anterior - Siguiente tema

0 Miembros y 2 Visitantes están viendo este tema.

Denegación de servicio a través de la función "php_dechunk" en PHP 5.3.x
------------------------------------------------------------------------

Stefan Esser, conocido investigador de seguridad especializado en
vulnerabilidades en el lenguaje de programación PHP, ha descubierto
un fallo en la última versión publicada.

Se trata de un error de desbordamiento de entero en la función
"php_dechunk" de "ext/standard/filters.c" al procesar ciertas peticiones
HTTP. Esta función se usa para decodificar fragmentos (chunks)
codificados de un flujo HTTP.

La función efectúa una comparación del tamaño del fragmento a
decodificar y el búfer reservado, empleando para ello un entero
con signo, "chunk_size", miembro de la estructura
"_php_chunked_filter_data".

El uso de un entero positivo interpretado como negativo podría provocar
la copia de datos, entre memorias intermedias reservadas en el heap, de
tamaño entre 2 y 4 Gb, resultando en una corrupción de memoria y
provocando que la aplicación deje de responder.

Esto podría permitir a un atacante remoto causar una denegación de
servicio a través de peticiones HTTP especialmente manipuladas.

Según Esser, son vulnerables las versiones inferiores de la 5.3.2 a
la 5.3 incluidas. No existe parche para esta vulnerabilidad.


Más información

MOPS-2010-003: PHP dechunk Filter Signed Comparison Vulnerability



No tienes permitido ver los links. Registrarse o Entrar a mi cuenta