Aujourd’hui, le 21 octobre 2026, l’équipe de sécurité de PHP a publié un avis d’urgence : deux vulnérabilités critiques au cœur même du langage, collectivement appelées PHP2Shell, permettent à un attaquant d’exécuter du code à distance et sans authentification sur n’importe quel serveur qui propose PHP via le web. Ce n’est pas un défaut WordPress, ni un plugin, ni une erreur de configuration de votre part – c’est dans l’interpréteur.
La gravité maximale provient d’un détail technique important : la requête malveillante est traitée avant qu’une seule ligne de votre code ne soit exécutée. Peu importe à quel point votre application est bien écrite — connexion, validations, WAF de l’application — car l’attaque se produit directement dans PHP lors de la préparation de la requête.
Les deux nouvelles entrées dans CVE
Les deux partagent la même cause profonde — PHP peut laisser sa mémoire dans un état corrompu lorsqu’une requête se termine de manière anormale — mais ils sont exploités de manières différentes. Chacun a un score CVSS de 9,2 (critique) :
- CVE-2026-109618 — La gestion des erreurs hors mémoire (OOM) peut interrompre PHP alors que les données internes de requête ne sont que partiellement initialisées. Le nettoyage ultérieur des requêtes considère ces données invalides comme valides, ce qui entraîne une corruption de la mémoire et une exécution de code à distance avec des privilèges de travailleurs web.
- CVE-2026-109619 — L’état interne appartenant à une requête peut survivre après que sa mémoire ait été libérée. Une requête ultérieure servie par le même travailleur peut utiliser cet état obsolète avant que l’initialisation normale ne le réinitialise : utilisation après libération sur le tas, divulgation mémoire, et encore une fois, exécution de code à distance sans authentification.
Ils affectent toutes les installations PHP qui répondent aux requêtes web : PHP-FPM, Apache avec mod_php, php-cgi, FrankenPHP et LiteSpeed. L’équipe PHP considère le risque le plus élevé en mod_php, où un exploit s’active déjà avant que le code de l’application ne s’exécute.
Pages concernées
Nous avons audité toute notre infrastructure et voici les pages qui servent PHP avec des versions inférieures à celles corrigées — c’est-à-dire vulnérables jusqu’à l’application de la mise à jour :
- PHP 8.3.35 (vulnérable, nécessite 8.3.36) :
www.io-backup.com,www.dynamicdnspro.com,www.fisem.com. - PHP 8.4.25 (vulnérable, nécessite 8.4.27) :
www.emhaseasociados.es,app.emhaseasociados.es. - PHP 8.4.26 (vulnérable, nécessite 8.4.27) :
scanner.net-analyzer.com,app.fisem.com,buy.dynamicdnspro.com.
Si vous gérez vos propres sites, vous pouvez vérifier la version qui expose chacun avec curl -sI https://tudominio.com | grep -i x-powered-by. Note : ce n’est pas parce que l’en-tête n’apparaît pas que vous êtes en sécurité, juste que le serveur ne l’annonce pas.
Mesures urgentes
La seule solution complète est de mettre à jour PHP. Les versions avec le correctif sont :
- PHP 8.5.12
- PHP 8.4.27
- PHP 8.3.36
- PHP 8.2.35
Pour PHP 8.1 et les versions antérieures — hors support — l’équipe PHP a publié des backports minimums pour les 7.4, 8.0 et 8.1, mais la recommandation officielle est de migrer vers une branche prise en charge. En attendant, voici les mesures que nous mettons en place et recommandons :
- Mettez à jour dès que possible vers la version patchée de votre branche, en priorisant les serveurs exposés à Internet.
- Atténuation partielle immédiate : désactiver
session.upload_progress.enabled=0dansphp.iniy, en PHP 8.5, égalementfatal_error_backtraces=0. Redémarrer tous les travailleurs après le changement. Note : selon les analyses de Datadog et JFrog, cette atténuation est partielle, pas complète — elle ne remplace pas le correctif. - Correction
memory_limit=-1au lieu d’utiliser des limites RLIMIT, pour réduire les chemins de corruption par l’OOM. - Filtre en périphérie : Un WAF ou un proxy inverse devant PHP peut bloquer des requêtes multiparties anormales avant qu’elles n’atteignent l’analyseur vulnérable.
- Surveiller : Vérifie les journaux pour détecter des soumissions très volumineuses, des erreurs d’épuisement de mémoire lors de l’initialisation des requêtes, ainsi que des processus shell inattendus lancés par les travailleurs PHP.
Si vous ne pouvez pas mettre à jour immédiatement, la CISA recommande même de mettre hors ligne les systèmes PHP exposés jusqu’à ce qu’ils puissent être corrigés. C’est une recommandation radicale pour une vulnérabilité radicale.
Conclusion
PHP2Shell est l’un des bugs qui n’apparaît qu’une fois tous les quelques années : critique, sans authentification, et dans la couche inférieure à toute application. Le correctif existe déjà et son application prend quelques minutes sur la plupart des systèmes. Nous mettons déjà à jour toutes les pages concernées mentionnées ci-dessus ; si vous avez un site avec PHP, c’est le moment de faire de même.