Non, ce n'est pas „ la moitié d'Internet “ qui est manifestement touchée. Cependant, les services web PHP non mis à jour peuvent être exposés à deux failles critiques sans authentification préalable. Vérifie donc d'abord les durée de fonctionnement réelle du site Web Au lieu de vous contenter d'utiliser PHP dans le shell, installez le correctif de sécurité publié et redémarrez les workers concernés de manière contrôlée. Les services accessibles au public, mod_php ainsi que les conteneurs et les produits intégrant PHP revêtent une importance particulière.
Bien interpréter le message d'alerte
L'affirmation selon laquelle une faille de sécurité PHP pourrait concerner „ la moitié d'Internet “ est un argument accrocheur, mais ne repose sur aucune donnée chiffrée. Rien ne prouve que la moitié de tous les services Internet soit vulnérable ou ait déjà été compromise. Le risque réel n’en reste pas moins considérable, car PHP est utilisé comme environnement d’exécution dans de nombreux sites Web, boutiques en ligne, API et interfaces d’administration.
Ce qui importe, ce n'est pas de savoir si un site web utilise PHP, mais quelle version de PHP traite ses requêtes web. Les mises à jour de sécurité du 21 octobre 2026 concernent en principe les installations non mises à jour des branches prises en charge, dans la mesure où elles traitent des requêtes via un service web. Un environnement PHP local destiné à des tâches de développement doit donc être considéré différemment d’un portail client accessible depuis l’extérieur.
Le Visibilité sur Internet L'urgence est un facteur déterminant. Une boutique accessible au public, dotée de formulaires et de fonctionnalités de téléchargement, offre davantage de points de contact potentiels qu’un service interne cloisonné. Cependant, un service interne n’est pas non plus automatiquement sécurisé : des accès VPN, des comptes compromis ou d’autres systèmes au sein du réseau peuvent le rendre accessible. La portée à elle seule ne remplace donc pas une évaluation technique des risques.
Le mode de fonctionnement et support de réparation. PHP peut notamment fonctionner via PHP-FPM, en tant que module Apache, via php-cgi ou intégré à un produit. Plusieurs domaines hébergés sur le même serveur peuvent ainsi utiliser des versions différentes et suivre des procédures de mise à jour distinctes. Il serait tout aussi erroné de donner un feu vert général pour tous les sites Web PHP que de supposer que chaque installation est immédiatement vulnérable.
Ce que les failles PHP permettent de faire d'un point de vue technique
A Exécution de code à distance (RCE) signifie qu'un attaquant peut, sous certaines conditions, exécuter du code sur un système distant. Selon l'alerte de sécurité, ces vulnérabilités PHP ne nécessitent pas de connexion préalable. Le code serait d'abord exécuté avec les droits du processus Web, et non automatiquement avec des droits d'administrateur illimités. Les conséquences possibles dépendent donc fortement des droits d'accès aux fichiers, des identifiants d'accès et de l'isolation du serveur.
La vulnérabilité CVE-2026-109618 concerne des chemins d'erreur dans pénurie de mémoire. Si PHP interrompt une requête en raison d'un problème de mémoire insuffisante, les structures de données internes peuvent rester incomplètes. Si ces structures sont réutilisées lors du nettoyage de la requête, cela peut entraîner une corruption de la mémoire. La description officielle mentionne notamment les requêtes multipart, les téléchargements de fichiers et la consommation de mémoire lors de l'analyse d'entrées imbriquées comme contextes techniques pertinents.
CVE-2026-109619 concerne en revanche un état interne lié à une requête dont la mémoire a déjà été libérée. Si un worker réutilisé traite ensuite une autre requête, PHP peut accéder à cet état obsolète avant que l'initialisation normale ne prenne effet. Le bulletin de sécurité fait notamment référence à la progression du chargement des sessions et aux chemins d'erreur. Il s'agit là d'une description de la catégorie d'erreurs, et non d'un guide d'exploitation.
- Les requêtes Web via PHP-FPM, Apache avec mod_php, php-cgi, FrankenPHP et LiteSpeed peuvent être concernées.
- Les erreurs proviennent de l'environnement d'exécution PHP, et non pas principalement de WordPress, Joomla, Shopware, des thèmes ou de certains plugins.
- Les CMS et les frameworks ont une incidence sur les fonctionnalités disponibles, telles que les téléchargements, mais ne remplacent pas une mise à jour de l'interpréteur.
Pourquoi toutes les installations ne présentent pas le même niveau de risque
Plusieurs facteurs déterminent si un service est concrètement menacé. Les principaux sont un moteur PHP non mis à jour et un service web accessible. Viennent ensuite le mode de fonctionnement, les processus réutilisés, les fonctions de téléchargement ou les formulaires complexes, ainsi que les droits du compte du processus web. Un service disposant d’un accès en écriture étendu aux fichiers Web ou d’un accès à d’autres services peut avoir des conséquences plus graves qu’un projet strictement isolé.
Avec Apache, avec mod_php Le projet PHP met particulièrement l'accent sur ce risque : une attaque documentée peut être déclenchée avant même l'exécution du code de l'application proprement dit. Même un CMS correctement entretenu ne protège alors pas contre cette vulnérabilité lors de l'exécution. Cela ne signifie pas pour autant que PHP-FPM, php-cgi, FrankenPHP ou LiteSpeed soient considérés comme inoffensifs ; s'ils ne sont pas à jour, ils doivent également faire l'objet d'une vérification prioritaire.
Une attention particulière doit également être accordée aux produits contenant PHP intégré. Il peut s'agir d'images de conteneurs, d'appareils préconfigurés, de systèmes de gestion NAS ou de produits réseau dont l'interface utilise PHP en interne. Dans ce cas, une commande exécutée sur l'hôte ne reflète souvent pas la version réellement utilisée. De plus, la mise à jour du système d'exploitation ne corrige pas automatiquement un composant PHP vulnérable présent dans une image ou un produit du fabricant.
Un pare-feu, un pare-feu d'applications web ou des limites de téléchargement restrictives peuvent compliquer certaines requêtes et réduire la surface d'attaque. Ils ne remplacent toutefois pas le correctif, car ils ne corrigent pas la gestion défaillante de la mémoire et de l'état dans l'interpréteur. Même un CMS exempt de bogues reste tributaire d’un environnement d’exécution sécurisé. Il est donc essentiel de vérifier et de mettre à jour le niveau de patch du PHP qui traite effectivement les requêtes Web.
Comparer les niveaux de correctifs et l'état de l'assistance
Pour ces deux failles de sécurité, c'est tout d'abord le niveau de correctifs de la branche PHP utilisée qui est déterminant. Le projet PHP indique des versions corrigées spécifiques pour les séries prises en charge. Les versions antérieures de la même série sont considérées comme vulnérables ; une mise à niveau vers la version indiquée ou vers une version plus récente de cette branche constitue la solution complète prévue.
| Branche PHP | Concerne jusqu'à et y compris | Version sécurisée à partir de | État de la prise en charge au 22 octobre 2026 | Mesure recommandée |
|---|---|---|---|---|
| PHP 8.2 | 8.2.34 | 8.2.35 | Uniquement des mises à jour de sécurité jusqu'au 31 décembre 2026 | Effectuer une mise à jour vers la version 8.2.35 au plus tard et planifier la migration. |
| PHP 8.3 | 8.3.35 | 8.3.36 | Uniquement des mises à jour de sécurité jusqu'au 31 décembre 2027 | Effectuez la mise à jour vers la version 8.3.36 au minimum. |
| PHP 8.4 | 8.4.26 | 8.4.27 | Assistance active jusqu'au 31 décembre 2026 | Mettez à jour au moins jusqu'à la version 8.4.27. |
| PHP 8.5 | 8.5.11 | 8.5.12 | Assistance active jusqu'au 31 décembre 2027 | Mettez à jour au moins jusqu'à la version 8.5.12. |
| PHP 8.1 et versions antérieures | Pas de version officielle récente en amont | Pas de version régulière et stable accessible à tous | Non pris en charge officiellement par le projet PHP | Vérifier le backport du fournisseur ou migrer vers une branche prise en charge. |
A Mise à jour du patch reste dans la même branche de développement, par exemple de la version 8.3.35 à la version 8.3.36. Elle est destinée à fournir le correctif de sécurité et présente un cadre de compatibilité plus restreint qu’un passage de la version 8.2 à la version 8.4. Ce dernier constitue une migration : les dépendances, les extensions, le code applicatif et, le cas échéant, le déploiement doivent être vérifiés séparément.
PHP 8.2 reste utilisable pour la correction immédiate, à condition d'utiliser au moins la version 8.2.35. Cette branche arrivera toutefois en fin de support le 31 décembre 2026. C'est pourquoi il ne faut pas s'arrêter à cette mise à jour immédiate : prévoyez la migration vers une branche bénéficiant d'un support plus long, après avoir vérifié la compatibilité de l'application dans un environnement approprié.
Une prudence particulière s'impose avec PHP 8.1 et les versions antérieures. Le projet PHP ne propose pas de version régulière et à jour à cet effet ; des rétroportages minimaux du code source ne peuvent être assimilés à un paquet maintenu et accessible à tous. Un backport de sécurité documenté par l'éditeur du système d'exploitation peut être approprié, mais doit être attesté dans un avis de sécurité ou dans le journal des modifications du paquet. En l'absence d'une telle attestation, une migration s'impose plutôt qu'une simple mise à jour cosmétique de la version.
Vérifier la durée de fonctionnement réelle du site Web
La vérification de la version commence par un état des lieux, mais ne doit pas s'arrêter au niveau du shell. Sur un serveur auto-géré, les commandes suivantes affichent la version de PHP exécutée sur ce serveur ainsi que les fichiers de configuration détectés lors de cet appel. Elles ne modifient ni les paquets ni la configuration et constituent donc une première étape de vérification à faible risque.
La sortie ne décrit que la commande appelée via cette commande shell Durée d'exécution de la CLI. Un site web peut en revanche être hébergé via PHP-FPM, Apache avec mod_php, php-cgi ou un conteneur. Cet environnement d'exécution web peut utiliser une version de PHP et des fichiers de configuration différents de ceux de la commande php -v sur le serveur. Pour l'évaluation de la sécurité, c'est le processus qui traite les requêtes HTTP réelles qui est déterminant.
Dans le cadre de l'hébergement géré, vous devez donc vérifier dans le panneau client la version PHP sélectionnée pour chaque projet ou domaine et, si nécessaire, vous renseigner sur l'état des correctifs du service fourni. En cas de domaines multiples, chaque attribution doit être vérifiée individuellement : un domaine principal peut déjà utiliser la branche mise à jour, tandis qu’une boutique en ligne, une instance de préproduction ou un sous-domaine utilise encore un interpréteur plus ancien.
Sur les serveurs utilisant PHP-FPM, la configuration du service, les paquets installés et la documentation de déploiement vont de pair. Dans les environnements de conteneurs, tu dois en outre vérifier l’image effectivement déployée, et pas seulement un manifeste de build local. Ce qui importe, c’est la révision qui traite les requêtes Web dans le pod ou le conteneur en cours d’exécution ; une image de base mise à jour ne protège pas une instance plus ancienne déjà en cours d’exécution.
Planifier les procédures de mise à jour en fonction du mode de fonctionnement
La méthode de mise à jour appropriée dépend de l'éditeur de l'interpréteur et de l'endroit où celui-ci est exploité. Ce n'est qu'une fois ce cadre de responsabilité clairement défini qu'il est possible de déterminer de manière fiable s'il faut procéder à un changement de panneau, à une mise à jour du paquet, à une nouvelle image ou à une mise à jour du fabricant. La classification suivante distingue ces cas sans mettre sur un pied d'égalité les modes de fonctionnement en termes de risque.
| Mode de fonctionnement | Où vérifier la version actuelle ? | Qui effectue les mises à jour ? | Particularité caractéristique |
|---|---|---|---|
| hébergement partagé | Panneau clients par domaine ou par projet ; informations fournies par l'hébergeur | Fournisseur d'hébergement ou client via une sélection partagée | Les affectations PHP peuvent varier d'un domaine à l'autre. |
| PHP-FPM sous Linux | Pool FPM, paquets installés, configuration des services et du déploiement | Administration de serveurs ou distribution | La version du paquet peut contenir un backport de sécurité documenté. |
| Apache avec mod_php | Configuration des modules Apache et paquets installés | Administration de serveurs ou distribution | Décrit par le projet PHP, qui met particulièrement l'accent sur les risques. |
| Conteneur | Image en cours d'exécution, balise d'image ou résumé, ainsi que durée d'exécution du conteneur | Équipe chargée de la compilation et du déploiement | Les mises à jour du serveur ne modifient pas automatiquement le code PHP intégré à l'image. |
| PHP intégré au produit | Documentation du fabricant, version du produit et avis de sécurité | Fabricant du produit ou gestion du produit | PHP peut faire partie d'une appliance sans qu'il y ait d'installation visible distincte. |
Dans le cas d'un hébergement mutualisé, le fournisseur doit mettre à disposition les correctifs de sécurité pour la version de PHP choisie ; l'administrateur vérifie ensuite le bon fonctionnement de l'application. Avec PHP-FPM ou mod_php, l'administrateur met généralement à jour les paquets, puis redémarre de manière contrôlée le service concerné. Un simple redémarrage sans application du correctif ne remplace pas la mise à jour.
Les distributions Linux fournissent souvent des correctifs de sécurité sous forme de Rétroportage. Dans ce cas, le numéro de version visible du paquet peut différer de celui des versions publiées sur php.net, même si le correctif est inclus. Ne vous contentez donc pas de comparer des chaînes de caractères telles que „ 8.4.26 “, mais consultez également l'avis de sécurité et le journal des modifications du distributeur. Le projet PHP précise que les distributions et les fournisseurs de versions LTS peuvent recevoir des correctifs.
Les conteneurs nécessitent un processus spécifique : créer une image corrigée ou l'obtenir auprès du fournisseur, la déployer et remplacer les anciennes instances. En revanche, pour les interfaces NAS, les périphériques réseau ou les applications web prêtes à l'emploi, la correction incombe au fabricant du produit. Un correctif du système d’exploitation hôte n’atteint pas nécessairement l’interpréteur intégré ; l’inventaire et les consignes du fabricant restent donc indispensables.
Des mesures d'urgence sans fausse sécurité
Le jour de la mise à jour, commencez par dresser un inventaire complet : domaines, API, interfaces d'administration, conteneurs et produits pouvant intégrer du code PHP. Pour chaque service, notez le mode de fonctionnement Web, le canal de mise à jour utilisé et le runtime PHP effectivement utilisé. Ensuite, chaque service accessible au public ou critique pour l'activité est traité en priorité, et pas seulement le serveur dont le numéro de version est le plus évident.
Appliquez ensuite la mise à jour de sécurité publiée par l'hébergeur, le distributeur Linux, le fournisseur de l'image ou le fabricant du produit. Pour les branches PHP prises en charge, la mise à jour vers la version corrigée constitue la solution complète ; un WAF, des règles de téléchargement ou un redémarrage du serveur web ne peuvent pas la remplacer. Organisez cette opération de manière à ce que la mise à jour du paquet, de l'image ou du produit soit documentée de manière traçable et puisse être retracée en cas de problèmes.
Une fois la mise à jour effectuée, il faut tous les anciens travailleurs être arrêtés et remplacés par des processus dont il est prouvé qu'ils ont chargé la version corrigée. N'utilisez la fonction « Reload » que si le gestionnaire de services concerné garantit ce remplacement complet ; dans le cas contraire, un redémarrage contrôlé est nécessaire. Vérifie ensuite les heures de démarrage des processus, l’état des services ou le runtime Web déterminé en interne, au lieu de te contenter de supposer que le remplacement a bien eu lieu. Pour les conteneurs, déploie l’image corrigée et supprime toutes les anciennes instances.
Vérifiez ensuite les principaux flux d'application tels que la connexion, les formulaires, les téléchargements, le processus de paiement et les API. Les tests permettent de vérifier si l'application et ses extensions fonctionnent avec les derniers correctifs installés ; toutefois, ils ne prouvent à eux seuls ni le remplacement complet des workers, ni l'absence de compromission antérieure. Ces points doivent faire l'objet d'évaluations distinctes dans le cadre d'audits opérationnels et de sécurité.
Si un correctif ne peut être appliqué dans l'immédiat, certains paramètres peuvent limiter les vecteurs d'attaque connus, mais ne garantissent pas une sécurité totale. La désactivation de la barre de progression du téléchargement doit être effective avant l'analyse d'une requête. Vérifiez au préalable si des applications ou des interfaces ont besoin de cet indicateur de progression, puis redémarrez chaque worker PHP concerné. Vérifiez ensuite qu’aucun ancien processus ne continue de fonctionner avec le paramètre précédent.
Les limites prudentes imposées aux données POST et les autres options mentionnées dans l'alerte de sécurité ne permettent elles aussi de réduire que partiellement la surface d'attaque. Les données lues tardivement .user.ini-fichiers ou un ini_set() Au sein de l'application, ces mesures ne suffisent pas pour ce paramètre. Considère ces mesures comme une réduction temporaire des risques et continue de te fixer comme objectif la mise à jour de sécurité.
Il convient de distinguer cela de la gestion courante des sessions enregistrées. La contribution à la Collecte des objets obsolètes dans les sessions PHP explique comment le nettoyage, les accès aux fichiers et les workers interagissent en fonctionnement normal. Cette optimisation opérationnelle ne corrige toutefois pas les vulnérabilités abordées ici et ne remplace ni l'application du correctif PHP, ni le remplacement ultérieur des processus en cours d'exécution.
Après l'application du correctif, vérifier le fonctionnement et rechercher d'éventuelles anomalies
Une mise à jour de paquets menée à bien prouve dans un premier temps uniquement que des fichiers ou des paquets ont été installés. Elle ne confirme ni que le processus Web a chargé le nouveau moteur d'exécution, ni que l'application fonctionne correctement avec celui-ci. Vérifiez donc, après le redémarrage, le runtime Web correspondant au service et consignez la date et l'heure, la version, le service redémarré ainsi que le résultat du contrôle de fonctionnement.
Les tests fonctionnels doivent couvrir les processus clés réels : pages publiques importantes, connexion et déconnexion, envoi de formulaires, téléchargement de fichiers, finalisation de commande ou réservation, ainsi que les points de terminaison API et les tâches en arrière-plan. Ne teste que les opérations pour lesquelles tu disposes des autorisations nécessaires et, dans le cas de boutiques en ligne en production, utilise si possible les données de test prévues à cet effet. Vérifie en parallèle les journaux du serveur web, de PHP et de l'application afin de détecter d'éventuelles nouvelles erreurs, des plantages récurrents ou des codes d'état inattendus.
Un nouveau départ est nécessaire pour mettre en place des processus durables et Travailleur Le chargement du code mis à jour ne génère toutefois pas de correction en soi. Sans mise à jour installée, la vulnérabilité persiste. En cas de charge élevée, la fenêtre de maintenance doit être choisie de manière à ce que les requêtes puissent être traitées de manière ordonnée et que les effets d'un redémarrage des workers restent observables.
L'impact d'un redémarrage contrôlé sur le débit dépend du nombre et de la charge des processus PHP. Pour faciliter la planification, il est préférable de prendre en compte les files d'attente, les tâches en cours et les transactions critiques, plutôt que de fermer les processus de manière non coordonnée. Le guide Comprendre les workers PHP explique le rôle de ces processus dans le cadre de requêtes dynamiques parallèles.
Si des anomalies apparaissent après l'application du correctif, distinguez les erreurs de compatibilité de l'application d'un déploiement incomplet. Comparez la configuration, les extensions activées et l'environnement d'exécution Web avec l'état antérieur à la maintenance. Une restauration ne doit pas avoir pour conséquence qu’un service accessible au public reste durablement dans un état vulnérable ; dans ce cas, définissez rapidement un parcours de mise à jour compatible et corrigé.
Donner la priorité aux installations PHP anciennes et cachées
Une attention particulière doit être accordée aux systèmes sur lesquels PHP n'apparaît pas comme un environnement d'exécution installé délibérément : images Docker, appliances virtuelles, NAS et interfaces réseau, ainsi que les logiciels prêts à l'emploi. Une mise à jour de l'hôte ne met à jour ni automatiquement une image de conteneur, ni le moteur d'exécution intégré à un produit du fabricant. Il convient donc de demander spécifiquement aux fabricants leur évaluation et une mise à jour de sécurité pour le produit concerné.
En ce qui concerne les anciennes branches, il convient de distinguer clairement trois cas. Une version de PHP bénéficiant d'un support régulier reçoit les mises à jour de sécurité publiées par le projet PHP. Un backport de distribution ou de fournisseur peut contenir le correctif malgré un numéro de version visible différent, mais doit être justifié par le bulletin de sécurité ou le journal des modifications de ce fournisseur. En revanche, le code source géré en interne implique une responsabilité propre en matière de compilation, de test et d’exploitation ; il ne constitue pas un substitut équivalent à un canal de mise à jour officiel.
PHP 8.1 et les branches plus anciennes ne bénéficient plus de versions officielles régulières en amont. Bien qu’un patch corrigé soit disponible pour PHP 8.2, la prise en charge de cette branche prendra fin fin 2026. Utilisez un correctif disponible pour résoudre le problème immédiat, mais prévoyez également une mise à jour testée pour les anciennes versions ou celles arrivant en fin de vie. Migration vers une branche bénéficiant d'un support à long terme.
- Commencez par mettre à jour les services accessibles au public dont le moteur PHP n'a pas été corrigé, en particulier si des fonctions de téléchargement ou d'administration sont accessibles.
- Apache avec mod_php et les boutiques en ligne, API ou portails clients critiques pour l'activité doivent être traités immédiatement après ; le bulletin de sécurité officiel souligne un risque particulièrement critique concernant mod_php.
- Recenser les conteneurs, les appliances et les produits tiers à partir des images, de l'inventaire et du statut du fabricant ; l'absence de paquets PHP visibles ne signifie pas pour autant qu'il n'y a pas lieu de s'inquiéter.
- Isoler les services non pris en charge ou pour lesquels aucun correctif ne peut être appliqué rapidement, et en restreindre l'accès, tout en planifiant parallèlement, de manière contraignante, leur remplacement, leur mise à niveau ou leur migration.
La segmentation du réseau, l'obligation d'utiliser un VPN ou des règles d'accès restrictives peuvent permettre de gagner du temps lorsque les interfaces d'administration ne peuvent pas être corrigées immédiatement. Elles ne sont toutefois que Mesures transitoires, car les comptes utilisateurs internes, les appareils compromis et les partages mal configurés peuvent continuer à constituer des vecteurs d'attaque. Si aucun correctif n'est proposé pour un produit ou si la branche PHP n'est plus prise en charge de manière permanente, le remplacement ou la migration constituent la solution la plus sûre.
Sources et état des connaissances
État de la recherche :
État des recherches : 22 octobre 2026. Les versions des correctifs et les informations relatives au support se réfèrent aux sources PHP et CERT-EU mises à disposition ; pour les paquets de distribution, les rétroportages de sécurité documentés doivent être vérifiés séparément.
https://www.php.net/archive/2026.php
https://github.com/php/php-src/security/advisories/GHSA-w8hw-w9fx-j79w
https://cert.europa.eu/publications/security-advisories/2026-018/
https://www.php.net/supported-versions.php




