Wojciech Purczynski descubrió que era posible que los scripts pasaran texto arbitrario a sendmail al extender la línea de comandos cuando se mandaba un correo a través de PHP, incluso cuando safe_mode (modo seguro) estaba activado. Se podía desactivar el paso del 5º argumento si PHP estaba configurado en safe_mode, como en el caso de las versiones nuevas y de las versiones de abajo. Esto, sin embargo, no afecta a PHP3.
Wojciech Purczynski también descubrió que se podían inyectar caracteres de control ASCII en argumentos cadena de la función mail(). Si los argumentos de mail() se toman de la entrada del usuario puede dar al usuario la capaidad de alterar el contenido del mensaje, incluyendo los encabezados del correo.
Ulf Härnhammar descubrió que file() y fopen() son vulnerables a la inyección de CRLF. Un atacante podría usarlo para eludir ciertas restricciones y añadir texto arbitrario a las peticiones HTTP que se pasan a través suyo.
Sin embargo, esto sólo ocurre si se pasa algo a estas funciones que ni es un nombre de archivo válido ni una url válida. Cualquier cadena que contenga caracteres de control no puede ser una url válida. Antes de que pase una cadena que deba ser una url a cualquier función, debe usar urlencode() para codificarla.
Se han identificado tres problemas en PHP:
Estos problemas se han corregido en la versión 3.0.18-23.1woody1 para PHP3 y 4.1.2-5 para PHP4 en la distribución estable actual (woody), en la versión 3.0.18-0potato1.2 para PHP3 y en la 4.0.3pl1-0potato4 para PHP4 en la distribución estable anterior (potato) y en la versión 3.0.18-23.2 para PHP3 y 4.2.3-3 para PHP4 en la distribución inestable (sid).
Le recomendamos que actualice los paquetes de PHP.
Las sumas MD5 de los ficheros que se listan están disponibles en el aviso original.