Une vulnérabilité critique identifiée au sein du système de gestion de contenu de Drupal

Date de publication :

Drupal vient de publier une mise à jour corrigeant une vulnérabilité critique permettant à un attaquant de contourner la politique de sécurité.

Drupal est un système de gestion de contenu (CMS) libre et open-source distribué sous la licence publique générale GNU. Il est écrit en PHP.

L'impact sur la disponibilité, l'intégrité et la confidentialité des données est élevé. En effet, l'exploitation de cette vulnérabilité peut être réalisée à distance, ne nécessite ni privilège, ni interaction avec un utilisateur et se révèle simple à mettre en œuvre.

Dans ce bulletin, la vulnérabilité affecte les versions 7, 8.6 et 8.7 et antérieures de Drupal. La vulnérabilité a été identifiée par les équipes de sécurité de Drupal, aussi, l'organisation indique que la vulnérabilité n'a pas été exploitée.

Détails Techniques :

La vulnérabilité a été référencée comme suit :

  • CVE-2019-11831 [CVSS v3 9.8] : La vulnérabilité est due à une dépendance tierce de Drupal Core, à savoir, le paquet PharStreamWrapper (aussi appelé phar-stream-wrapper) qui n'est pas protégé contre la traversée de répertoire/chemin (path/directory traversal), ce qui permet aux attaquants de contourner le mécanisme de protection de désérialisation.

En effet, afin d'intercepter des invocations de fichiers spécifiques comme "file_exists" ou "stat" sur des archives Phar compromises, le nom de base doit être déterminé et vérifié avant d'être géré par PHP et le module Phar stream wrapper. L'implémentation actuelle est vulnérable à la traversée de chemin (path traversal), menant à des scénarios où l'archive Phar à évaluer n'est pas le fichier attendu mais un fichier corrompu.

Informations

La faille est activement exploitée :

Un correctif existe :

Une mesure de contournement existe :

Risques

Risques

  • Atteinte à la confidentialité des données ;
  • Déni de service ;
  • Modification des paramètres.

Criticité

  • Score CVSS : 9.8

Existence d’un code d’exploitation de la vulnérabilité

  • Aucun code d'exploitation n'est publiquement disponible pour la vulnérabilité identifiée.

Composants & versions vulnérables

  • Drupal 7, 8.6 et 8.7 et toutes les versions antérieures.

CVE

  • CVE-2019-11831

Solutions ou recommandations

Mise en place de correctif de sécurité

  • Si vous utilisez Drupal 8.7, mettez à jour vers Drupal 8.7.1 ;
  • Si vous utilisez Drupal 8.6 ou une version antérieure, mettez à jour vers Drupal 8.6.16 ;
  • Si vous utilisez Drupal 7, mettez à jour vers Drupal 7.67 ;
  • Les versions de Drupal 8 antérieures à 8.6.x sont en fin de vie et ne sont couvertes par aucun correctif.

Solution de contournement

  • Aucune solution de contournement n'a été proposée pour la vulnérabilité.