Avis du CERT-FR

Objet : Vulnérabilité dans PHP

Gestion du document

Référence CERTA-2006-AVI-433
Titre Vulnérabilité dans PHP
Date de la première version10 octobre 2006
Date de la dernière version10 octobre 2006
Source(s)

Une gestion de version détaillée se trouve à la fin de ce document.

Risques

  • Contournement de la politique de sécurité
  • Exécution de code arbitraire à distance

Systèmes affectés

  • les versions PHP 4.x, antérieures à 4.3.0 ;
  • les versions PHP 5.x, antérieures ou égales à la 5.1.6.

Résumé

Une vulnérabilité a été identifiée dans PHP. Celle-ci permettrait à une personne malveillante distante d'exécuter des commandes arbitraires sur le serveur Web vulnérable.

Description

PHP (venant de l'acronyme récursif PHP: Hypertext Preprocessor) est un langage généralement interprété par un serveur Web, afin de générer des documents comme des pages HTML.

Une vulnérabilité a été identifiée dans celui-ci. Elle concerne la fonction unserialize() se trouvant dans le fichier zend_alloc.c. Cette fonction fait appel à une autre fonction, nommée ecalloc(), qui ne vérifierait pas correctement certaines données avant d'allouer la mémoire. Une personne malveillante pourrait injecter des données afin de provoquer un débordement de cette mémoire et parvenir à exécuter des commandes arbitraires sur le serveur Web vulnérable. Cela est notamment rendu possible par les valeurs de variables Cookie envoyées au serveur.

Tout code PHP faisant appel à la fonction unserialize() serait vulnérable. Cela inclut en particulier plusieurs applications Web, dont phpBB, Invision Board, vBulletin, Serendpity, dotclear, etc.

Solution

Se référer aux mises à jour des éditeurs pour l'obtention des correctifs (cf. section Documentation). Une mise à jour provisoire est disponible sur le serveur CVS de PHP, ainsi que sur le site Hardened-PHP.

Documentation

Gestion détaillée du document

Date Description
10 octobre 2006 version initiale.
Choisissez un thème pour personnaliser l'apparence du site.