Wojciech Purczynski a découvert qu'il était possible que des scripts envoient du texte à sendmail, comme s'il s'agissait d'un suffixe de la ligne de commande, lors de l'envoi d'un courriel avec PHP même lorsque le « safe_mode » est activé. L'envoi d'un cinquième argument devrait être désactivé lorsque PHP est configuré avec le « safe_mode ». Cela concerne les nouvelles versions de PHP et les versions précédentes. Cela ne concerne toutefois pas PHP3.
Wojciech Purczynski a également découvert que des caractères de contrôle ASCII pouvaient être ajoutés arbitrairement dans la chaîne d'argument de la fonction mail(). Si les arguments de la fonction mail() sont fournis par l'utilisateur, ce dernier peut modifier le contenu du message et également les en-têtes du courriel.
Ulf Härnhammar a découvert que file() et fopen() étaient vulnérables à l'ajout de CRLF. Un assaillant peut l'utiliser pour contourner certaines restrictions et ajouter un texte de son choix pour brouiller les requêtes HTTP qui sont envoyées.
Cependant, cela survient uniquement si quelque chose est passé en argument de ces fonctions. Il ne peut s'agir ni d'un nom de fichier valide, ni d'une url valide. En effet une chaîne de caractère qui contiendrait des caractères de contrôle ne serait pas une url valide. Avant de passer une chaîne de caractères représentant une URL, à une fonction, vous devez utiliser urlencode() pour l'encoder.
Trois problèmes ont été identifiés dans PHP :
Ces problèmes ont été corrigés dans la version 3.0.18-23.1woody1 pour PHP3 et 4.1.2-5 pour PHP4 pour l'actuelle distribution stable (Woody), dans la version 3.0.18-0potato1.2 pour PHP3 et 4.0.3pl1-0potato4 pour PHP4 dans l'ancienne distribution stable (Potato) et dans la version 3.0.18-23.2 pour PHP3 et 4.2.3-3 pour PHP4 dans la distribution unstable (Sid).
Nous vous recommandons de mettre à jour vos paquets PHP.
Les sommes MD5 des fichiers indiqués sont disponibles sur la page originale de l'alerte de sécurité.