Le 21 octobre 2026, le projet PHP a publié des correctifs pour deux vulnérabilités critiques dans PHP lui-même. Toutes deux affichent un score CVSS 9.2, et les chercheurs qui les ont découvertes les appellent php2shell. Le problème ne vient ni de PrestaShop ni d'un module, mais comme chaque boutique PrestaShop fonctionne sous PHP, il touche pratiquement tous les sites. Ci-dessous : ce qui se passe, quelles versions de PHP sont corrigées et ce que vous devez faire aujourd'hui.
Quel est le problème ?
Les deux vulnérabilités se trouvent dans le moteur d'exécution de PHP, la couche qui s'exécute avant le code propre à PrestaShop. Selon l'annonce, un attaquant peut les utiliser pour faire planter les processus PHP, lire des données sensibles ou, dans le pire des cas, exécuter du code sur votre serveur sans être connecté.
- CVE-2026-109618 : lorsque PHP manque de mémoire, les données de requête peuvent rester à moitié initialisées, et le nettoyage ultérieur traite ces données incomplètes comme valides.
- CVE-2026-109619 : l'état d'une requête interne peut persister après que sa mémoire a été libérée, de sorte qu'une requête ultérieure sur le même processus PHP peut utiliser cet état obsolète.
Chaque installation PHP traitant des requêtes web est menacée : PHP-FPM, Apache avec mod_php, php-cgi, FrankenPHP et LiteSpeed. Le risque est maximal avec mod_php.
Pourquoi une mise à jour de PrestaShop ne suffit pas
Mettre à jour PrestaShop ou vos modules ne résout pas ce problème. La protection au sein de l'application ne peut pas bloquer une attaque qui se produit avant l'exécution du code de l'application. La seule vraie solution est une version PHP mise à jour sur votre serveur.
Quelles versions de PHP sont corrigées ?
| Branche PHP | Version corrigée |
|---|---|
| PHP 8.5 | 8.5.12 |
| PHP 8.4 | 8.4.27 |
| PHP 8.3 | 8.3.36 |
| PHP 8.2 | 8.2.35 |
Pour PHP 7.4, 8.0 et 8.1, le projet PHP a publié des correctifs rétroportés (backports) minimaux. Notez que les distributions Linux appliquent parfois le correctif sans modifier le numéro de version, si bien qu'une version qui semble plus ancienne peut tout de même être corrigée. C'est pourquoi vous devez demander confirmation à votre hébergeur plutôt que de vous fier uniquement au numéro.
Ce que vous devez faire maintenant
1. Vérifiez votre version de PHP
Dans le panneau d'administration de PrestaShop, allez dans Paramètres avancés > Informations. Vous y verrez la version PHP sur laquelle tourne votre boutique.
2. Demandez une confirmation écrite à votre hébergeur
Contactez votre fournisseur d'hébergement et demandez si le correctif pour CVE-2026-109618 et CVE-2026-109619 a été appliqué sur votre serveur. Demandez une réponse écrite.
3. Gérez-vous votre propre serveur ?
- Installez les paquets PHP mis à jour de votre distribution ou les versions officielles de PHP.
- Redémarrez chaque processus PHP : pools PHP-FPM, Apache, LiteSpeed et workers FrankenPHP. Une mise à jour installée mais non chargée ne vous protège pas.
- Le jour de la sortie, le projet PHP a conseillé d'éviter d'attendre le dépôt géré par des bénévoles
rpms.remirepo.netet a recommandé les paquets de distribution ou une compilation à partir des sources. - Vous utilisez Docker ? Reconstruisez vos images sur l'image de base mise à jour et redéployez-les.
4. Toujours sous PHP 8.1 ou antérieur ?
Demandez à votre hébergeur si votre version de PHP a été corrigée. Mettre à niveau PrestaShop vers une version compatible avec des PHP plus récents est une tâche distincte à long terme, pas un correctif d'urgence. Pour planifier : PrestaShop 9 prend en charge PHP 8.1 à 8.5, et PHP 8.2 arrive en fin de vie le 31 décembre 2026. Les boutiques PrestaShop 1.7 et 8.x fonctionnent généralement encore sous PHP 7.x ou 8.1.
Mesures temporaires si vous ne pouvez pas encore mettre à jour
Ces mesures s'adressent aux équipes techniques. Testez-les d'abord sur un environnement de staging ; elles réduisent le risque mais ne remplacent pas la mise à jour PHP.
Pour CVE-2026-109618 :
- Réduisez
post_max_size: l'avis suggère8Msi votre boutique n'accepte aucun téléchargement et32Msi elle en accepte. Maintenezupload_max_filesizeen dessous de cette valeur. - Appliquez également des limites de taille de requête dans votre serveur web ou reverse proxy.
Pour CVE-2026-109619 :
- Définissez
session.upload_progress.enabled=0dansphp.ini, le pool PHP-FPM ou la configuration du serveur, et redémarrez tous les workers.ini_set()ou.user.inine suffisent pas. - Sur PHP 8.5, définissez également
fatal_error_backtraces=0et redémarrez les workers.
Masquer les erreurs avec error_reporting, display_errors ou @ n'aide pas. La liste complète des mesures se trouve dans l'avis de sécurité officiel de PHP.
Un pare-feu applicatif web (WAF) aide-t-il ?
Cloudflare a déployé des règles WAF dédiées pour php2shell, actives par défaut depuis le 21 octobre. Sur un forfait payant, vérifiez que l'ensemble de règles géré est défini sur block. Gardez à l'esprit qu'un WAF protège uniquement le trafic qui le traverse : assurez-vous que votre serveur n'accepte le trafic web que provenant de votre fournisseur WAF. Un WAF est une couche supplémentaire, pas un remplacement de la mise à jour PHP.
Besoin d'aide ?
Vous ne savez pas si votre serveur a été corrigé ou vous êtes toujours sur une ancienne version de PHP ? Nous vérifions votre version de PHP et votre configuration, posons les bonnes questions à votre hébergeur et vous aidons à planifier le passage à une version de PHP et de PrestaShop prise en charge. En savoir plus sur notre service de sécurité, planifier une mise à niveau ou nous poser une question.
Source : « Critical PHP security updates: what PrestaShop users need to know » sur build.prestashop-project.org (21 octobre 2026), et les avis de sécurité PHP pour CVE-2026-109618 et CVE-2026-109619.