CVE-2026-111497 : comprendre la faille Node2Shell et ses impacts

Une nouvelle vulnérabilité affectant le décodeur Brotli utilisé par Node.js a été publiée le 21 octobre 2026. Référencée sous l'identifiant CVE-2026-111497 et baptisée Node2Shell, cette faille de corruption mémoire pourrait permettre à un attaquant de compromettre des applications manipulant des données compressées malveillantes.

Avec un score CVSS v4.0 de 9,2/10, cette vulnérabilité représente un risque important pour les organisations utilisant Node.js.

Une vulnérabilité au cœur du mécanisme de décompression Brotli

Brotli est un algorithme de compression largement utilisésur le web pour réduire la taille des données échangées entre les serveurs et les clients. Il est notamment intégré à Node.js pour permettre de compresser et décompresser des flux de données.

La CVE-2026-111497 exploite une erreur de gestion de la mémoire dans le décodeur Brotli. Lorsqu'un flux compressé spécialement conçu est traité, le programme peut effectuer une écriture en dehors des limites de la mémoire allouée.

Ce dysfonctionnement peut provoquer une corruption mémoire et entraîner plusieurs conséquences, allant d'un arrêt inattendu de l'application (déni de service) à une divulgation d'informations sensibles présentes en mémoire, voire à une exécution de code arbitraire à distance.

La particularité de cette vulnérabilité réside dans son vecteur d'attaque : un simple flux de données compressées malveillant peut suffire à déclencher la faille, dès lors qu'une application vulnérable accepte de le décompresser.

Comment la CVE-2026-111497 peut-elle être exploitée ?

L'exploitation de cette vulnérabilité repose sur la capacité d'un attaquant à faire traiter un flux Brotli malveillant par une application utilisant une version vulnérable du décodeur.

Dans un environnement Node.js, plusieurs fonctionnalités peuvent être concernées :

  • Le module node:zlib, qui permet aux applications de compresser et décompresser des données.
  • L'API fetch(), qui peut automatiquement décompresser les réponses HTTP utilisant l'encodage Brotli.

Un attaquant pourrait exploiter cette vulnérabilité en transmettant des données Brotli malveillantes via une requête ou une réponse HTTP. Le risque dépend toutefois de la capacité de l'application à décompresser des données contrôlées par l'attaquant.

Quelles versions sont concernées et comment se protéger ?

La vulnérabilité affecte plusieurs branches de Node.js. Des mises à jour de sécurité ont été publiées le 21 octobre 2026 afin de corriger le problème :

  • Node.js 22.x : corrigé à partir de la version 22.23.4
  • Node.js 24.x : corrigé à partir de la version 24.22.1
  • Node.js 26.x : corrigé à partir de la version 26.12.1

Les versions antérieures aux correctifs indiqués doivent être considérées comme vulnérables lorsqu'elles utilisent le composant concerné.

Des correctifs ont également été publiés pour Brotli dans les versions 1.0.10, 1.1.1 et 1.2.1. D'autres applications embarquant des versions vulnérables de cette bibliothèque peuvent donc être concernées et nécessiter des mises à jour spécifiques, même lorsqu'elles n'utilisent pas Node.js.

Pour limiter les risques, la mise à jour vers une version corrigée constitue la principale mesure de protection.

Identifier les systèmes vulnérables avec Cyberwatch

Face à ce type de vulnérabilité, la rapidité d'identification des actifs concernés joue un rôle déterminant dans la réduction de la surface d'attaque.

La solution de gestion des vulnérabilités Cyberwatch accompagne les organisations dans l'inventaire de leur parc informatique, l'identification des logiciels vulnérables et la priorisation des actions correctives.

Pour en savoir plus sur la gestion des vulnérabilités et les fonctionnalités de Cyberwatch, contactez nos équipes.

‍

Thanks for submitting the form.