Drupal : une faille SQL critique expose des milliers de sites, le correctif est urgent

🚨

L’essentiel en 30 secondes

  • Faille critique : Injection SQL dans le cœur de Drupal (CVE-2026-9082), score 23/25, exploitable sans authentification
  • Cible : Sites Drupal sous PostgreSQL (universités, mairies, sites .gouv.fr)
  • En exploitation : 15 000 attaques détectées sur 6 000 sites dans 65 pays (Imperva/Thales)
  • CISA : Faille ajoutée au catalogue des vulnérabilités activement exploitées, deadline patch : 27 mai
  • Correctifs : Drupal 11.3.10, 11.2.12, 10.6.9, 10.5.10, 10.4.10 + patches exceptionnels 8.9 et 9.5
  • Action : Mettre à jour immédiatement, même sous MySQL/SQLite (correctifs Symfony et Twig embarqués)

Drupal vient de publier une mise à jour de sécurité qualifiée de « hautement critique » par sa propre équipe sécurité. La faille, référencée CVE-2026-9082, est une injection SQL directement dans le cœur du CMS, exploitable par n’importe qui sans même avoir un compte sur le site visé. Deux jours après la publication du correctif, la CISA américaine l’a ajoutée à son catalogue des vulnérabilités activement exploitées dans la nature. Des milliers de sites sont déjà la cible de scanners automatisés.

Drupalgeddon 3 : une injection SQL dans le cœur du CMS

Le 20 mai 2026, entre 17h et 21h UTC, la Drupal Security Team a publié l’advisory SA-CORE-2026-004. Elle corrige une vulnérabilité de type injection SQL dans le composant Database abstraction API du cœur de Drupal, spécifiquement dans le module PostgreSQL.

Le problème se situe dans le fichier core/modules/pgsql/src/EntityQuery/Condition.php, où certaines requêtes sont encapsulées dans une fonction LOWER() sans neutralisation correcte des paramètres. Un attaquant non authentifié peut injecter du code SQL via deux vecteurs :

  • Le endpoint JSON du formulaire de connexion
  • L’API JSON:API

Un simple POST vers le endpoint de login provoque une erreur HTTP 500 avec un message SQLSTATE[22012] sur les installations vulnérables, ce qui permet à l’attaquant de confirmer la cible avant d’exploiter la faille.

Le score attribué est de 23 sur 25 sur l’échelle de risque Drupal. C’est le niveau le plus élevé depuis Drupalgeddon2 en mars 2018, qui avait conduit à la compromission de plus d’un million de sites en quelques heures.

Service public français directement concerné

Drupal est historiquement le CMS recommandé par la DINUM pour les sites institutionnels français. Des universités, des collectivités territoriales et des sites en .gouv.fr tournent sur Drupal, souvent sur des versions qui ne sont pas systématiquement mises à jour dans les délais recommandés.

La combinaison « score 23/25 + aucune authentification requise + complexité d’accès nulle » représente le scénario de pire cas pour un CMS. Un script automatisé peut cibler n’importe quel site Drupal vulnérable sans connaissance préalable de sa configuration.

⚠️ Vigilance : MySQL et SQLite aussi concernés

Même si l’injection SQL ne touche que les sites sous PostgreSQL, les mises à jour du 20 mai embarquent aussi des correctifs critiques sur les bibliothèques tierces :

Twig 3.26.0 (13 CVE dont injections de code PHP), Symfony 6.4.40 / 7.4.12 (10 CVE incluant URL injection, HtmlSanitizer bypass), Composer 2.9.8 et Underscore.js 1.13.8. Tout site Drupal doit patcher, quel que soit le SGBD utilisé.

15 000 attaques détectées en 48 heures

Imperva, filiale du groupe Thales, a publié le 22 mai une analyse de l’exploitation en cours. L’entreprise a observé plus de 15 000 tentatives d’attaque ciblant près de 6 000 sites dans 65 pays. Les secteurs du gaming et des services financiers concentrent environ la moitié des attaques documentées.

La CISA a ajouté la CVE-2026-9082 à son catalogue des Known Exploited Vulnerabilities et a fixé la date limite de correction pour les agences fédérales américaines au 27 mai 2026 (demain).

Versions corrigées : tableau de mise à jour

Branche Version corrigée Statut
Drupal 11.3.x 11.3.10 Support actif
Drupal 11.2.x 11.2.12 Support actif
Drupal 11.1.x 11.1.10 Fin de vie (patch exceptionnel)
Drupal 10.6.x 10.6.9 Support actif
Drupal 10.5.x 10.5.10 Support actif
Drupal 10.4.x 10.4.10 Fin de vie (patch exceptionnel)
Drupal 9.x Patch manuel 9.5.11 Fin de vie (best-effort)
Drupal 8.9 Patch manuel 8.9.20 Fin de vie (best-effort)
Drupal 7 Non affecté OK

Comment appliquer le correctif

Méthode 1 : Mise à jour via Composer (recommandée)

Si votre site utilise Composer (méthode standard depuis Drupal 8) :

composer update drupal/core --with-dependencies

drush updatedb

drush cr

Méthode 2 : Mise à jour manuelle

  • Téléchargez la dernière version de votre branche sur drupal.org
  • Remplacez les fichiers core, vendor et les fichiers racine
  • Conservez vos dossiers sites et files
  • Lancez update.php (votresite.com/update.php)

Méthode 3 : Patch manuel (Drupal 8.9 et 9.5)

Pour les versions en fin de vie, des fichiers de patch sont mis à disposition sur drupal.org/psa-2026-05-18. Ils doivent être appliqués manuellement et ne sont pas garantis sans régressions. La migration vers Drupal 10.6+ reste fortement recommandée.

🔴 Drupal + PostgreSQL

  • Injection SQL exploitable par un attaquant distant non authentifié
  • Mise à jour urgente avant le 27 mai (deadline CISA)
  • 15 000+ attaques déjà détectées sur 6 000 sites

✅ Drupal + MySQL / SQLite

  • Pas d’injection SQL sur ce vecteur précis
  • Correctifs Twig et Symfony à appliquer quand même
  • Drupal 7 non affecté par cette faille

Historique : les Drupalgeddon, une saga qui dure

Ce n’est pas la première fois que Drupal fait face à une crise de cette ampleur. Deux précédents majeurs ont marqué l’histoire du CMS :

🔍 Chronologie des failles Drupal majeures

Octobre 2014 Drupalgeddon

Injection SQL dans le système de requêtes (CVE-2014-3704). Des centaines de milliers de sites compromis en quelques heures. Premiers malwares automatisés ciblant Drupal.

Mars 2018 Drupalgeddon2

Remote Code Execution dans le système de rendu des formulaires (CVE-2018-7600). Plus d’un million de sites compromis. Scanners automatisés déployés en quelques heures.

Mai 2026 CVE-2026-9082

Injection SQL dans l’API d’abstraction de base de données PostgreSQL. Score 23/25. 15 000+ attaques détectées. CISA : deadline patch 27 mai.

FAQ : Faille SQL Drupal 2026

Mon site Drupal est-il vulnérable ?

Si votre site utilise Drupal 8, 9, 10 ou 11 avec une base de données PostgreSQL, il est vulnérable. Si vous utilisez MySQL ou SQLite, l’injection SQL ne s’applique pas directement, mais les correctifs Twig et Symfony embarqués restent critiques. Drupal 7 n’est pas affecté.

Que se passe-t-il si je ne mets pas à jour ?

Des scanners automatisés parcourent le web à la recherche de sites Drupal non patchés. La CISA a confirmé une exploitation active. Un attaquant peut exécuter du code arbitraire sur votre serveur, voler des données, ou prendre le contrôle total du site.

Drupal Steward protège-t-il déjà ?

Les sites utilisant Drupal Steward sont protégés contre les vecteurs d’attaque connus, mais Drupal recommande tout de même une mise à jour dans un avenir proche au cas où d’autres vecteurs seraient découverts.

Combien de temps ai-je pour patcher ?

La CISA donne comme deadline le 27 mai 2026 pour les agences fédérales. Pour un site privé, chaque heure compte : les exploits automatisés apparaissent généralement dans les 24 à 48 heures suivant la publication des détails techniques.

Où télécharger les correctifs ?

Les releases officielles sont sur drupal.org/project/drupal. Les patches manuels pour Drupal 8.9 et 9.5 sont sur drupal.org/psa-2026-05-18.

Quiz : Testez vos connaissances sur la faille Drupal

🧠 Votre site est-il protégé ? Testez vos connaissances

1. Quel est le score de criticité de la CVE-2026-9082 sur l’échelle Drupal ?

Sources

Laisser un commentaire