Contexte de la vulnérabilité

En juin 2026, deux CVE (CVE‑2026‑109618 et CVE‑2026‑109619) ont été publiés, signalant une faille dans le cœur de PHP. Les bulletins de sécurité indiquent que la vulnérabilité réside dans un mécanisme d’inclusion de fichiers qui, sous certaines conditions, pourrait conduire à l’exécution de code arbitraire. Le problème a rapidement attiré l’attention de la communauté, notamment parce que des membres du core PHP ont qualifié le risque de « cataclysmique », alimentant la peur d’une vague d’exploits automatisés.

Analyse des PoC disponibles

Une recherche sur GitHub révèle plusieurs dizaines de dépôts proposant des preuves de concept (ex. php‑rce, php2shell‑PoC, php2shell‑poc). Tous ces scripts partagent un même schéma : ils exploitent une local‑file‑inclusion (LFI) pour forcer le serveur à exécuter eval(read(user_file)). En pratique, cela signifie que l’attaquant doit déjà pouvoir lire un fichier contrôlé par l’utilisateur, puis injecter du code PHP via ce fichier.

Or, dans une installation PHP « vanilla », les directives allow_url_include et open_basedir sont désactivées ou strictement limitées, ce qui empêche l’inclusion de fichiers arbitraires. Les tests reproduits dans un conteneur Docker officiel de PHP montrent que les PoC échouent systématiquement : le serveur renvoie une erreur d’accès ou ignore simplement la charge utile. Aucun des scripts ne parvient à déclencher l’exécution de code sans une configuration préalablement compromise.

Contraintes techniques de l’exploitation

Le point de rupture de la chaîne d’exploitation réside donc dans la dépendance à une vulnérabilité préexistante, typiquement une LFI ou une désactivation inadéquate des fonctions dangereuses (eval, system, etc.). Sans ce prérequis, le vecteur décrit dans les PoC ne se matérialise pas. De plus, la plupart des serveurs de production utilisent des mécanismes de sandboxing (containers, SELinux, AppArmor) qui limitent la portée d’une éventuelle inclusion de fichier, réduisant davantage la surface d’attaque.

Cette situation contraste fortement avec des failles comme Log4Shell ou Heartbleed, où le vecteur d’exploitation est autonome et exploitable dès le déploiement du logiciel vulnérable. Ici, la chaîne d’attaque nécessite au moins deux maillons : la vulnérabilité PHP et une faille d’inclusion de fichier déjà présente. L’absence de ces deux conditions simultanées rend l’exploitation « pratiquement impossible » sur une configuration standard.

Implications et perception du risque

Le phénomène observé illustre un biais de perception amplifié par les grands modèles de langage (LLM). Les LLM, lorsqu’on leur fournit le diff du correctif, génèrent rapidement des scripts qui semblent plausibles, mais qui ne tiennent pas compte des contraintes d’environnement. Cette surproduction de PoC crée une impression de menace imminente, même si les données techniques montrent le contraire.

En conclusion, la vulnérabilité PHP annoncée en 2026 ne constitue pas, à ce jour, une menace exploitable sur des installations non modifiées. Les exploitations publiées reposent sur des hypothèses de configuration non réalistes, et aucune preuve publique d’un exploit fonctionnel sur une instance PHP standard n’a été fournie. La vigilance reste de mise, mais l’urgence d’un correctif immédiat doit être calibrée en fonction de la vraisemblance d’une chaîne d’attaque complète.