Petit vent d’effroi sur le cloud, après la découverte d’une vulnérabilité critique dans Fluent Bit par des experts de Tenable. Référencée CVE-2024-4323 et baptisée Linguistic Lumberjack, elle résulte de failles de codage dans le serveur HTTP intégré de l’outil open source et provoque une corruption de mémoire. Si elle n’est pas résolue, elle pourrait conduire à un déni de service, à la divulgation d'informations ou, dans le cas le plus grave, mais improbable, à des attaques par exécution de code à distance (RCE. Les versions 2.0.7 à 3.0.3 de Fluent Bit sont toutes vulnérables. Selon les développeurs du composant, la version 3.0.4 de Fluent Bit résout cette vulnérabilité et les menaces qui y sont associées.

Fluent Bit est un collecteur de données et un moteur open source qui peut analyser les données de logs provenant de diverses sources. Son évolutivité fait qu’il est adapté aux environnements cloud. Parmi les utilisateurs répertoriés figurent AWS, Microsoft Azure et Google Cloud, et selon Tenable, les trois hyperscalers s'appuient fortement sur cette technologie. Cisco, Splunk et d'autres s’appuient aussi sur cette technologie dans leurs applications de surveillance. D'autres développeurs utilisent également l’offre, qui a enregistré 3 milliards de téléchargements en 2022 et continue d'être déployé plus de 10 millions de fois par jour. Alertés le 30 avril par Tenable, les responsables du projet ont réagi en développant une version corrigée de la technologie, Fluent Bit 3.0.4, livrée le 21 mai. Dans un communiqué publié sur leur site web, les développeurs de Fluent Bit ont invité les fournisseurs de technologie à procéder à une mise à jour « immédiate pour garantir la stabilité et la sécurité des systèmes ».

Des fournisseurs assez réactifs pour le patch

Généralement, les vulnérabilités des systèmes basés sur le cloud sont corrigées rapidement et sans intervention de l'utilisateur. Contacté pour commentaires, un des fournisseurs a répondu qu'il n'avait pas été touché par le problème et a critiqué la recherche de Tenable, la jugeant un peu sensationnaliste. D'autres acteurs IT qui utilisent l'outil de surveillance des journaux ont la vulnérabilité en main.

CrowdStrike, par exemple, a déclaré avoir mis à jour son environnement avec la version corrigée de Fluent Bit, et qu'il n'y avait pas d'impact direct sur les clients. Cependant, l’entreprise a invité les « clients utilisant le package LogScale Kubernetes Logging de redéployer et de mettre à jour vers la version corrigée de Fluent Bit immédiatement ». Elle recommande aussi aux clients qui utilisent leurs propres instances Fluent Bit de vérifier leurs versions et d'appliquer les mises à jour nécessaires pour atténuer tout risque potentiel. Par contre, aucun fournisseur de services d'entreprise pour Fluent Bit (Calyptia, Fluentd et Clear Code) contacté pour savoir quels conseils ils avaient à donner à leurs clients, n’ont répondu dans l’immédiat.

Un apprentissage pour mieux sécuriser le projet open source

Dans un billet de blog technique, les experts de Tenable ont expliqué comment la vulnérabilité avait été découverte en enquêtant sur une faille distincte (non encore divulguée) dans un service cloud (non mentionné). Pendant leur analyse, ils ont réalisé qu'ils pouvaient accéder à divers indicateurs et points de terminaison de journalisation internes au service cloud lui-même, y compris un certain nombre d'instances de Fluent Bit. C’est en procédant à des tests supplémentaires de la solution dans un environnement isolé qu’ils ont découvert le problème de corruption de mémoire. Plus précisément, le serveur HTTP intégré dans Fluent Bit était vulnérable, car il ne parvenait pas à assainir les traces des requêtes. Or, par ce mécanisme, il devenait possible pour des attaquants de passer des entrées inattendues ou invalides afin de planter un système ou d'utiliser la corruption de mémoire pour exposer des informations secrètes. Une attaque par exécution de code à distance aurait également des chances d’aboutir, du moins en théorie.

Les experts soulignent qu'une telle attaque dépendrait fortement de l'architecture, du système d'exploitation hôte et d'autres facteurs environnementaux et qu'il serait difficile de la mener à bien. Les développeurs de l’outil open source considèrent cet épisode comme un apprentissage. « Même si personne ne se réjouit de recevoir un avis de sécurité critique juste avant d'aller déjeuner, ce problème nous a tout de même donné un coup de pouce utile pour évaluer nos pratiques de prévention des vulnérabilités au sein du projet Fluent Bit », ont-ils écrit. « Par exemple, cela nous a rappelé que certaines mesures que nous avons déjà mises en place, comme notre participation au programme OSS-Fuzz de Google, se justifient entièrement. Cela nous a également donné l'occasion de renforcer d'autres aspects de notre réponse aux incidents et de nous assurer qu'ils sont aussi efficaces que possible pour l'avenir de Fluent Bit ».