Node.js Publie des Corrections pour une Failles du Décodeur Brotli
Node.js a des corrections disponibles pour CVE-2026-111497, une vulnérabilité du décodeur Brotli classée comme gravité élevée dans l'avis de sécurité du projet. Les corrections couvrent les lignes de version 22.x, 24.x et 26.x et ont été publiées le 21 octobre 2026. Imperva a ensuite publié des résultats de tests montrant une exécution de code sur une image Node.js vulnérable.
Pour les applications utilisant node:zlib pour décompresser des données Brotli fournies par un attaquant, l'avis de Node.js décrit des plantages possibles du processus, la divulgation de la mémoire du processus ou l'exécution de code à distance. Il attribue ces résultats à une corruption de la mémoire causée lorsque des entrées malformées font écrire le décodeur intégré en dehors d'un tampon interne.
L'avis retrace l'erreur à la gestion d'une transition invalide entre les blocs Brotli. Au lieu de s'arrêter parce que le format était invalide, le décodeur en streaming a traité la condition comme nécessitant plus d'entrées. Le traitement pouvait donc continuer à ajouter des octets à un tampon d'une capacité de huit octets.
Le rapport de test d'Imperva du 22 octobre identifie l'image officielle Node.js 24.22.0 pour Linux arm64 comme l'environnement dans lequel son équipe rouge a obtenu une exécution de code. Les tests ont couvert deux chemins : une réponse compressée Brotli traitée via le fetch intégré, et des corps de requête compressés Brotli gérés par des parseurs configurés. La version 24.22.1 a rejeté les entrées utilisées dans ces tests.
Imperva a déclaré que sa configuration nécessitait des tentatives répétées pour obtenir l'exécution, et ses tests ne couvraient pas toutes les applications ou toutes les versions de Node.js. La société a identifié les versions 22.23.4, 24.22.1 et 26.12.1 comme les versions corrigées et a déclaré que les utilisateurs devraient sélectionner ces versions, ou des versions corrigées ultérieures, dans les lignes de version correspondantes.
Le logiciel affecté s'étend au-delà de Node.js, selon le résumé de l'avis de Wiz daté du 25 octobre 2026. Sa liste comprend les versions 1.0.3 à 1.2.0 de Google Brotli/libbrotli, à l'exclusion des backports corrigés ; la même plage de versions pour Python Brotli ; les versions de Bun 1.0.21 à 1.4.3 ; et des versions spécifiques de Envoy Proxy et Istio. Wiz liste les versions corrigées spécifiques aux composants et indique que d'autres produits peuvent être affectés s'ils incluent ou lient le décodeur C vulnérable.
Red Hat attribue à la faille une note Importante et un score CVSS v3 de 8.1 pour ses produits. Son entrée CVE indique que l'exploitation dépend d'une cible décompressant des données Brotli contrôlées par un attaquant. Red Hat indique également que le durcissement de sa plateforme rend l'exécution de code fiable plus difficile.
Selon l'avis de Node.js, Khai Tran et Sylvie Mayer de OpenAI Codex Security ont soumis le rapport de vulnérabilité, tandis que Matteo Collina et Antoine du Hamel ont effectué la correction.
* Cet article est basé sur des informations publiquement disponibles au moment de la rédaction.