Une vulnérabilité importante corrigée sur Nginx

L'équipe de développement du serveur web Nginx a corrigé 3 vulnérabilités sur son produit, 1 importante et 2 modérées. L'exploitation de la vulnérabilité la plus critique pourrait permettre à un attaquant de réaliser un déni de service ou encore provoquer une fuite de mémoire. L'attaque est peu complexe à mettre en œuvre, peut se réaliser à distance et ne nécessite ni privilèges ni interaction utilisateur. L'impact estimé sur la disponibilité est élevé, celui sur la confidentialité est faible, tandis que celui sur l’intégrité est nul.

Nginx est le deuxième serveur web le plus populaire au monde derrière Apache HTTP Server. Selon une enquête réalisée par NetCraft, environ un quart des sites actuels utilisent ce logiciel. La vulnérabilité est présente dans le module ngx_http_mp4 qui fournit des fonctionnalités de lecture vidéo pour les fichiers au format MP4. Ce module n'est pas activé dans la configuration par défaut de Nginx. Le logiciel est inclus dans les dépôts de nombreuses distributions Linux, dont Red Hat, Debian, SUSE et Ubuntu parmi les plus populaires. Sur SUSE le paquet n'incluait pas le module incriminé, la distribution n'est pas concernée. Ce n'est pas le cas en revanche pour les 3 autres, parmi elles seul Red Hat n'a pas encore proposé le correctif à ses utilisateurs.

Les deux autres vulnérabilités sont de criticité moindre, leur exploitation pourrait permettre à un attaquant de causer une consommation excessive de mémoire ou une utilisation importante du processeur sur le serveur cible. Une attaque de ce type aurait un impact modéré sur les performances du serveur.

Une mise à jour de sécurité a été publiée le 6 novembre par l'équipe de développement. Au moment de la publication de ce bulletin, seul environ 0.2 % des sites utilisant Nginx avaient appliqué le correctif d'après le moteur de recherche Shodan (sur plus de 14 millions de sites référencés). Les utilisateurs sont invités à appliquer la mise à jour le plus rapidement possible.

Détails Techniques

Les vulnérabilités ont été référencées comme suit :

  • CVE-2018-16845 [CVSS V3 6.1] : cette vulnérabilité se situe dans le module de traitement des fichiers mp4. Un fichier de ce type est découpé en petites unités d'information nommées atom (ou bloc dans la dernière spécification). L'une des fonctions chargées de traiter ces atoms ne s'assure pas que la taille de cet atom est bien supérieure à la valeur minimale d'un en-tête d'atom (qui est de 16 bits ici). Comme cette longueur minimale est soustraite à la longueur de l'atom original, la fonction pourrait entrer dans une boucle infinie en cas de valeur négative ou égale à 0. Un attaquant pourrait donc l'exploiter en faisant traiter au serveur un fichier mp4 spécialement conçu pour déclencher la vulnérabilité.
Informations
+

Risques

  • Atteinte à la confidentialité des données
  • Déni de service

Criticité

  • Score CVSS : 7.5 (Score de la vulnérabilité la plus critique)

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

  • Aucun code d'exploitation n'est publiquement disponible

Composants & versions vulnérables

  • Selon les branches, Nginx versions antérieures à 1.14.1 et 1.15.6

CVE

  • CVE-2018-16843 [CVSS V3 7.5]
  • CVE-2018-16844 [CVSS V3 7.5]
  • CVE-2018-16845

Recommandations
+

Mise en place de correctif de sécurité

  • Deux mises à jour ont été publiées, selon la branche la mise à jour à appliquer est la 1.14.1 ou la 1.15.6.

Solution de contournement

  • Aucune solution de contournement n'est proposée.