PHP 5.4.3 et PHP 5.3.13 publiées venant corriger la faille CVE-2012-1823

Une brève rapide pour vous indiquer que les développeurs de PHP ont publié la troisième mise à jour pour PHP 5.4 (5.4.3), la dernière version de leur populaire langage de script, et une mise à jour de PHP 5.3 (5.3.13), l’ancienne branche stable du langage. Les développeurs indiquent que tous les utilisateurs de PHP sont fortement encouragés à mettre à jour leurs instances vers ces nouvelles versions.

Alors que le groupe PHP avait publié en urgence les mises à jour de PHP 5.3.12 et PHP 5.4.2 pour corriger des failles, celles-ci s’étaient avérées inefficaces. En effet, le 9 mai dernier, Stefan Esser, le créateur de Suhosin une extension de sécurité pour PHP, a indiqué via Twitter que le correctif CVE-2012-1823 inclus dans PHP 5.3.12 et PHP 5.4.2 peut facilement être contourné :

Le groupe avait alors reconnu l’inefficacité de son patch et prévoyait une mise à jour le plus rapidement possible, chose faite aujourd’hui !
Pour rappel, un grand nombre de sites à travers le monde sont menacés par une vulnérabilité non corrigée dans le langage de script PHP et dont de nombreux hackers ont déjà exploité celle-ci afin de prendre à distance le contrôle de serveurs sous-jacents.
Pour empirer les choses, tous les détails du bug ont été rendus public la semaine dernière, donnant aux hackers tout ce qu’il faut pour localiser et exploiter les sites vulnérables.

Les attaques d’exécution de code menacent des sites Web PHP seulement si ces derniers fonctionnent en mode CGI (Common Gateway). Personne ne sait exactement combien de sites sont actuellement à risque, tout simplement car ces derniers doivent également répondre à plusieurs autres critères pour être vulnérables, y compris de ne pas avoir un pare-feu qui bloque certains ports. Néanmoins, les sites fonctionnant avec PHP configuré en CGI sur le serveur web Apache sont par défaut vulnérables aux attaques ce qui permet aisément aux pirates d’exécuter du code par des portes dérobées ou de télécharger des fichiers contenant des données sensibles des utilisateurs. Ainsi, il était simple de dévoiler du code source depuis les scripts PHP !

Les mises à jour proposées aujourd’hui par le groupe PHP, les versions 5.4.3 et 5.3.13 viennent donc corriger définitivement ces deux failles capables de générer une exécution de code à distance. Ainsi, la faille connue sous le nom CVE-2012-1823 dans php-cgi, est un bug qui change l’interprétation de la chaîne de caractères contenant - pour que le composant php-cgi puisse gérer des lignes de commandes, comme -s, -d, -c.
Cela peut, par exemple, provoquer des serveurs affectés à retourner le code source d’une page si la chaîne de caractères ?-s est fixée à la fin d’une URL (par exemple http://www.blog-nouvelles-technologies.fr/?-s). Le code peut également être exécuté de cette façon.

Avec la sortie des versions 5.3.13 et 5.4.3, les développeurs ont renouvelé leur promesse que le bug est désormais fixé, et que les premiers tests s’avèrent concluants. Un dépassement du tampon dans la fonction apache_request_headers a également été fixé à la branche 5.4.

Pendant ce temps, Facebook a pris l’opportunité d’utiliser la faille CGI pour ses propres fins. Les visiteurs de la page http://facebook.com/?-s pourront retrouver le code PHP qui les dirigeront vers une page de recrutement d’un ingénieur de sécurité.

PHP 5.4.3 et PHP 5.3.13 publiées venant corriger la faille CVE-2012-1823 - Facebook s'amuse avec la faille CGI

Pour les téléchargements de sources de PHP 5.4.3 et PHP 5.3.13 rendez-vous sur la page de téléchargements de PHP, les binaires Windows peuvent être trouvés sur windows.php.net/download/. La liste des modifications sont enregistrées dans le ChangeLog.

Avez-vous fait la mise à jour ? Votre site était-il impacté ? Venez réagir…