Situation actuelle : PHP2Shell. Deux failles PHP critiques (CVSS 9.2) permettent d'exécuter du code malveillant sans authentification. Correctifs disponibles depuis le 21 octobre 2026.Ce qu'il faut faire maintenant →

Sécurité Contao après PHP2Shell : sécuriser correctement les sites web

Contao tourne sur PHP et Symfony. Après PHP2Shell comptent le correctif PHP pour le web et la ligne de commande, un Contao Manager protégé et un coup d'œil dans files et templates.

État 5 min de lecturePlateformes

En bref : avec PHP2Shell, la sécurité de Contao dépend du PHP du serveur, pas de Contao. Veillez à ce que le PHP web comme le PHP en ligne de commande du Contao Manager soient corrigés. Contrôlez ensuite .env, les templates propres, le dossier files et les accès au back-end et au Manager.

Contao et PHP2Shell : de quoi s'agit-il

Contao est un CMS répandu dans l'espace germanophone, construit depuis la version 4 sur le framework Symfony. Les failles PHP CVE-2026-109618 et CVE-2026-109619 permettent, selon l'équipe PHP, d'exécuter du code malveillant à distance sans authentification. Elles concernent PHP lui-même, donc aussi chaque installation Contao sur un serveur non corrigé.

De nombreux sites Contao appartiennent à des PME, des fédérations et des communes et sont suivis par des agences. Clarifiez donc d'abord qui est responsable de PHP : l'hébergeur, l'agence ou votre propre informatique.

Une erreur fréquente concerne le mode maintenance. Contao peut verrouiller un site pour les visiteurs, mais ce verrouillage est lui-même livré par PHP. Chaque requête atteint donc toujours l'interpréteur PHP. Le mode maintenance ne protège donc pas contre PHP2Shell. Lorsque le BSI (office fédéral allemand de la sécurité des systèmes d'information) recommande de déconnecter les serveurs web du réseau jusqu'à la mise à jour, il s'agit d'un verrouillage au niveau du serveur ou de l'hébergement, pas d'un réglage dans le CMS.

La sécurité de Contao commence par deux versions de PHP

Contao utilise PHP de deux façons. Le serveur web traite les appels de pages le plus souvent via PHP-FPM. Le Contao Manager et la console Contao fonctionnent en outre avec un PHP en ligne de commande, par exemple pour les installations, les mises à jour et les tâches cron. Sur les offres d'hébergement avec plusieurs versions de PHP, il peut s'agir de deux programmes différents.

Le Contao Manager indique dans sa configuration du serveur quel exécutable PHP il utilise. La version web, vous la voyez dans le panneau d'hébergement. Les versions corrigées en amont sont 8.5.12, 8.4.27, 8.3.36 et 8.2.35 ; les backports peuvent porter des numéros plus anciens. Les deux voies doivent être corrigées et tous les processus redémarrés. Les versions de PHP prises en charge par votre version de Contao se vérifient dans la configuration requise sur contao.org. Plus sur la vérification sous Vérifier correctement la version de PHP et l'état du correctif.

Dossiers et fichiers dans Contao

Emplacement Contenu Point de contrôle
.env, .env.local Accès à la base de données, APP_SECRET renouveler en cas de soupçon
config/config.yaml Configuration de l'installation modifications inattendues
public/ (versions anciennes web/) Racine web avec index.php, fichier du Contao Manager, assets fichiers PHP supplémentaires
files/ Gestion de fichiers des rédacteurs aucun fichier PHP
templates/ templates propres, classiquement en .html5 avec PHP templates inconnus ou modifiés
system/config/localconfig.php anciens réglages code inséré
var/ Cache et journaux sauvegarder les journaux, régénérer le cache

C'est précisément templates/ qui est sous-estimé : les templates Contao classiques avec l'extension .html5 sont des fichiers PHP. Une commande insérée dans un template propre s'exécute à chaque affichage de page et survit aux mises à jour de Contao.

Premiers contrôles sans danger :

# Fichiers PHP dans la gestion de fichiers
find files -type f -name "*.php"
# Templates modifiés depuis le 17/10/2026
find templates -type f -newermt "2026-10-17"
# Vérifier les commandes Contao disponibles et les dépendances
vendor/bin/contao-console list contao
composer audit
Important

Le Contao Manager peut installer des paquets et donc amener n'importe quel code sur le serveur. En cas de soupçon, contrôlez ses comptes utilisateurs, attribuez de nouveaux mots de passe et supprimez les accès d'anciens prestataires.

Back-end, Manager et extensions

Le back-end se trouve sous /contao. Vérifiez les utilisateurs avec droits d'administrateur et les groupes d'utilisateurs aux droits étendus, par exemple sur la gestion de fichiers, les templates ou la gestion des utilisateurs. Contao intègre une authentification à deux facteurs ; utilisez-la pour tous les comptes à droits élevés.

Les extensions s'installent via Composer ou via le Contao Manager. Chacune apporte du code PHP, et les anciennes extensions sans maintenance freinent les mises à niveau de PHP. Sur les serveurs hébergeant plusieurs sites, chaque installation devrait fonctionner séparément, pour qu'un incident ne se propage pas aux sites voisins ; plus à ce sujet sous open_basedir et isolation par site web.

Ce qu'une mise à jour de Contao peut faire et ne peut pas faire

Une mise à jour de Contao via le Manager ou Composer comble des défauts connus dans Contao et les extensions. Elle ne corrige pas PHP et ne redémarre ni PHP-FPM ni les processus d'arrière-plan. Les templates propres, les fichiers dans files/ et les comptes utilisateurs étrangers restent inchangés. Après un changement de version majeure de PHP, le cache devrait être régénéré et le site contrôlé dans un environnement de test.

Pour les sites avec de nombreux rédacteurs, un coup d'œil aux droits dans le back-end vaut la peine après le correctif. Qui peut modifier des templates peut déposer du code PHP dans les templates .html5 classiques. Cette permission ne doit revenir qu'à peu de personnes techniquement expérimentées. Il en va de même pour l'accès à la gestion de fichiers avec droit d'upload dans des dossiers accessibles publiquement.

Comment PHP SOS aide-t-il concrètement ?

  • Nous établissons le PHP web et le PHP CLI de votre installation Contao et faisons confirmer le correctif et le redémarrage.
  • Nous sauvegardons les journaux, les fichiers et la base de données avant de modifier quoi que ce soit.
  • Nous contrôlons les templates, files/, la racine web, les comptes du back-end et du Manager.
  • Sur demande, notre service de correctifs PHP assure le changement de PHP avec justificatif, en concertation avec votre agence.

Questions fréquentes

Contao est-il concerné par PHP2Shell ?

Contao lui-même n'a pas de nouvelle faille. Mais si le site fonctionne sur un PHP non corrigé, il est vulnérable comme n'importe quelle application PHP. Une mise à jour de Contao ne comble pas la faille PHP.

Pourquoi le Contao Manager est-il important pour la sécurité ?

Le Contao Manager peut installer, mettre à jour et supprimer des paquets. Qui y a accès peut introduire n'importe quel code. L'accès exige donc un mot de passe robuste et peu de personnes autorisées.

Les templates Contao contiennent-ils du code PHP ?

Les templates classiques avec l'extension .html5 sont des templates PHP. Les templates propres du dossier templates peuvent donc contenir du PHP. Vous devriez pouvoir expliquer les templates inconnus ou récemment modifiés.

Sources

Contact immédiat

Chaque heure compte. Écrivez-nous maintenant.

Décrivez brièvement votre système, votre version de PHP et ce que vous avez observé. Nous vous répondons, faisons le point et travaillons à distance jusqu'à la clôture et la documentation de l'incident.

Aide immédiate