Web en péril

Des dizaines de milliers de sites web ont une version vulnérable de PHP

| mise à jour

PHP 5.6 vient d’arriver en fin de vie, exposant des dizaines de milliers de sites internet, dans le monde et en Suisse, à des vulnérabilités non corrigées. Un expert en cybersécurité livre son analyse et met en garde contre de réels risques.

(Source: Pixabay)
(Source: Pixabay)

PHP 5.6, l’un des langages de programmation le plus utilisé du web, est arrivé en fin de vie. Des dizaines de milliers de sites internet, dans le monde et en Suisse, se retrouvent dès lors exposés à d’éventuelles vulnérabilités de sécurité non corrigées. «PHP est un langage de programmation utilisé presque exclusivement côté serveur. De ce fait, PHP est fondamentalement exposé sur internet et tout bug exploitable à distance sera immédiatement critique, comme cela a déjà été le cas à quelques reprises», précise à ICTjournal Patrick Zwahlen, architecte sécurité chez Navixia.

Urgence de passer aux versions 7.2 ou 7.3

Wordpress, Drupal et Joomla, les trois CMS (Content Management System) les plus populaires font appel à PHP. Ce langage est ainsi utilisé par près de 80% des sites de la Toile, selon les chiffres de w3techs. La version 5.6 de PHP, lancé en 2014, est encore la plus employée à l’heure actuelle. Le hic? Elle ne bénéficie plus de mises à jour de sécurité depuis ce 1er janvier 2019. «Les utilisateurs de cette version devraient procéder à une mise à niveau dès que possible», prévient ainsi l’équipe en charge de développement de PHP. Et autant passer directement à la version 7.2 ou 7.3 (sortie tout récemment), puisque que la 7.0 est aussi arrivée en fin de vie et que la 7.1 ne profitera de patchs que jusqu’à fin 2019.

Une majorité des sites suisses fonctionnent avec une version PHP dépassée

Peu de sites en Suisse et dans le monde ne font pour l’heure appel aux versions 7.X de PHP. En Suisse, la version 5.6 est la plus utilisée et de nombreux sites font encore appel à des versions antérieures, selon les données transmises à ICTjournal par la start-up zurichoise BinaryEdge, qui a procédé à un scan pour compter le nombre de ports liés aux différentes versions de PHP. Il en ressort que plus d’un tiers des sites suisses fonctionnent sur PHP 5.6, et 40% sur les versions 5.2, 5.4 ou 5.5. Seul un site sur dix fait appel à PHP 7.1 ou 7.2.

Que recommandent les principaux CMS?

Les exigences techniques et recommandations en matière de versions de PHP dépendent des versions du CMS installé pour faire tourner un site web. Parmi les trois CMS leaders du marché, seul Drupal va prochainement obliger un passage à PHP 7.1 au minium pour sa version 8. Les exigences minimales de Joomla reste PHP 5.3, et celles de WordPress PHP 5.2. Mais pour que les dernières moutures de ces deux CMS fonctionnent comme il se devrait, les deux éditeurs recommandent les versions 7.1 et ultérieures.

L’analyse et les conseils d’un expert

Que risquent concrètement les sites web fonctionnant sous une version dépassée de PHP? Une mise à niveau est-elle obligatoire? L’expert de Navixia Patrick Zwahlen livre ici son analyse:

«De manière générale, il est capital de s’assurer que les briques softwares utilisées par les applications soient maintenues par leurs éditeurs respectifs et de ce fait il est effectivement très risqué de garder aujourd’hui une application tournant sous PHP 5.X. Cela participe à la dette technique, qui avec les campagnes de phishing et les mots de passe faibles sont les méthodes d’intrusions privilégiées des attaquants.

Ce qui rend la situation plus complexe, c’est qu’une mise à jour majeure de PHP implique souvent une mise à jour majeure de l’application et dans le cas d’un CMS (Joomla, Drupal, Wordpress), cela signifie en général une réécriture des templates (visuels) et donc un nouveau projet de développement web.

Néanmoins, il y a matière à relativiser. Même si depuis le 1er janvier 2019, le projet open-source PHP ne fournit plus de correctifs pour PHP 5.X, ces anciennes versions sont souvent intégrées dans des distributions logicielles formant la base d’un système d’exploitation Linux. Prenons le cas de Redhat. Les versions 6 et 7 sont supportées jusqu’en juin 2024 au minimum et contiennent toutes les deux des «vieilles» versions 5.X de PHP. En vendant une distribution, l’éditeur s’engage à fournir des correctifs pour l’ensemble des composants.

Il reste une zone grise qui concerne les versions de PHP mises à disposition par les hébergeurs. Dans ce cas, il est souvent compliqué pour le client final de savoir si PHP est fourni au travers d’une distribution supportée par un éditeur ou si l’hébergeur n’a pas recompilé sa propre version de PHP pour satisfaire à certaines contraintes (comme on le voit très/trop souvent). Les hébergeurs ayant recompilés leurs propres packages PHP seront dans la quasi-impossibilité de fournir des correctifs en cas de bug et si le nombre de leurs clients utilisant PHP 5 est trop important, ils ne pourront pas non plus supprimer ces versions en les forçant à migrer. Le risque ira donc en augmentant, rapidement. Le plus raisonnable pour ceux qui ont un doute est de poser la question à leur hébergeur.»

Webcode
DPF8_120736