Les images de cet article ont été générées par intelligence artificielle. Notre méthode de publication
Au cours des dernières semaines, un échec de corruption de mémoire a été découvert dans le décodeur C de Brotli - l'algorithme de compression développé par Google - qui se propage aux programmes qui incluent que l'implémentation pour décompresser les données avec Content-Encoding: br. Le problème, enregistré comme CVE-2026-111497, permet aux données Brotli manipulées d'écrire au-delà de la fin d'un tampon et de modifier la mémoire du processus vulnérable. En pratique, cela peut provoquer des blocages, des fuites de mémoire ou, dans des scénarios favorables à l'agresseur, l'exécution de code arbitraire.
Faits confirmés : le défaut se trouve dans le code C qui décompresse les flux de Brotli et, puisque de nombreuses applications et runtimes intègrent une copie locale de ce code, la vulnérabilité apparaît dans plusieurs projets indépendamment. Parmi les personnes concernées figurent Node.js (patching), le Bun runtime, les paquets Python comme Brotli et brotlicffi, et les proxies comme Envoy quand Brotli décompression est activé. L'échec a été diffusé publiquement le 21 octobre, avec des correctifs déjà disponibles dans certains produits; cependant, chaque projet doit mettre à jour sa propre copie du décodeur parce qu'il n'y a pas de bibliothèque partagée unique qui soit mise à jour à l'échelle mondiale. Le dépôt officiel du projet se trouve dans https: / / github.com / google / brotli.

Comment ça marche techniquement (résumé): Brotli fonctionne avec des structures internes et des fenêtres coulissantes pour reconstruire les données compressées. Bug est une corruption classique de la mémoire en C : une route de décompression permet aux entrées mal formées de faire des données de copie de l'algorithme au-delà de la mémoire prévue pour un tampon. Cela peut écraser les métadonnées ou les données critiques dans la pile / tas. L'effet final dépend de la disposition de la mémoire, des protections du système (ASLR, DEP) et du binaire spécifique qui contient le décodeur; par conséquent, le même défaut peut être exploité dans une construction et non exploitable dans une autre.
Ce qui a été démontré et ce qui ne l'est pas: l'équipe de recherche d'Imperva a réussi à exécuter le code dans un Node.js 24.22.0 building pour Linux ARM64 en utilisant Brotli malveillant, à la fois quand la charge utile est venue comme une réponse fitch () et quand elle a été envoyée dans le corps d'une requête Express. L ' explosion a nécessité plusieurs tentatives, le Programme n ' a pas été publié et les auteurs n ' ont pas prétendu travailler sur d ' autres bâtiments ou plates-formes. OpenAI et d'autres entreprises ont confirmé que la vulnérabilité peut conduire à l'exécution à distance dans certaines conditions, mais il n'y a pas de rapports d'exploitation vérifiés dans des environnements réels à ce jour; CISA a enregistré l'exploitation comme « aucune ». Bref, il existe un test de concept privé pour une configuration spécifique de Node.js, tandis que l'exploitation dans le reste de l'écosystème reste incertaine.
Qui affecte: tout logiciel qui décompresse Brotli avec le décodeur C vulnérable et reçoit des données contrôlées par un tiers. Exemples pratiques: dans Node.js et Bun, l'exposition apparaît lorsque l'installation () traite une réponse avec Content-Encoding: br ou lorsque le middleware comme Express 5 ou body-parser 2 décompresse un corps envoyé par le client. Envoyé ou Istio ne sont en danger que si la décompression Brotli est activée (par exemple par un filtre); si elle est désactivée, la route d'attaque est fermée. Dans Python, la situation est plus insidieuse : la simple présence des paquets Brotli ou brotlicffi dans l'environnement provoque des clients HTTP populaires (demandes, urllib3, httpx, aiohttp) pour décompresser les réponses Brotli automatiquement, de sorte qu'une application peut être exposée peu importe si votre code importe explicitement Brotli. Les pages des paquets dans PyPI sont sur https: / / pypi.org / projet / Brotli / et https: / / pypi.org / projet / brotlicffi /.
Conséquences réelles Selon l'application et l'atténuation du système, un attaquant pourrait causer un déni de service (crash), filtrer la mémoire sensible ou, dans le pire des cas, obtenir l'exécution à distance dans le processus vulnérable. L'impact opérationnel est concret : mises à jour par produit, redémarrage des services et reconstruction des conteneurs sont nécessaires car un processus qui ne redémarre pas continue à utiliser l'ancienne version du décodeur en mémoire.
Mesures spécifiques à prendre par les gestionnaires et les promoteurs (confirmées et pratiques): (1) Mettre à jour dès que possible l'exécution ou la librairie des versions parachevées publiées par chaque projet et redémarrer les processus concernés; dans les environnements de conteneurs, reconstruire les images de manière à ce que le binaire parched soit présent au démarrage. 2) Si vous ne pouvez pas mettre à jour immédiatement, arrêtez d'accepter ou de traiter Brotli peu fiable: rejeter les requêtes entrantes qui portent Content-Encoding: br avant tout proxy ou analyseur tente de décompresser le corps. 3) Pour les clients HTTP où le contrôle du comportement est possible: désactiver la décompression automatique de Brotli et, le cas échéant, désinstaller les paquets Brotli / brotlicffi dans les environnements Python pour forcer gzip / déflate fall. Important: supprimer "br" de l'en-tête Accept -Encoding ne garantit pas la protection - un serveur peut ignorer l'en-tête et répondre avec Brotli -; donc la recommandation est de bloquer ou de rejeter explicitement les réponses avec Content-Encoding: br dans l'entrée / sortie qu'il contrôle.

Étapes spécifiques par plateforme (statut et recommandations): Node.js et Bun: mise à jour des versions officielles. Dans Node.js, il n'y a pas de solution documentée pour remplacer la mise à jour; redémarrer l'exécution est obligatoire. Envoyé / Istio : mettre à jour les versions qui incluent la correction ou désactiver le filtre de décompression Brotli si nécessaire. Python : supprimer les paquets Brotli et brotlicffi de l'environnement si vous ne pouvez pas installer immédiatement la version parcheed ; en outre, définir explicitement les clients HTTP pour éviter de décompresser les réponses br. Systèmes et paquets d'exploitation du système: les distributions corrigent leurs paquets à différents moments - par exemple, Debian a publié un correctif pour brotli dans Debian 13 le 23 octobre dans la version 1.1.0-2 + deb13u1 - mais vérifiez la politique de son disque et de sa mise à jour.
Avertissements et éléments encore incertains: bien qu'il y ait des preuves privées d'exécution de code dans un bâtiment spécifique Node.js, il n'y a pas de preuve d'explosion publique simple qui fonctionne sur toutes les plateformes. Les cotes de gravité varient selon les fournisseurs : Google a attribué une note critique (CVSS 4.0 9.2), tandis que d'autres projets l'ont classée comme élevée ou importante selon son propre contexte. En outre, les outils d'analyse d'unité peuvent ne pas détecter automatiquement la condition dans les environnements Python, car le CVE pointe vers le dépôt Brotli et non pas à l'origine vers les paquets PyPI; il est donc recommandé de vérifier manuellement les versions installées et les entrées de sécurité publiées par les projets que vous utilisez.
Bref : le vecteur est clair et le remède aussi - mettre à jour et redémarrer - mais la fragmentation de l'écosystème (chaque produit emballe sa propre copie du décodeur) nécessite un effort coordonné par les administrateurs, les développeurs et les équipements de sécurité. Pour les instructions et références techniques directes, voir les sources originales du projet Brotli à GitHub ( github.com / google / brotli) et les pages officielles des paquets Python dans PyPI ( Brotli, brotlicffi), en plus des alertes de sécurité de leurs runtimes et distributions.
Autres
Plus de nouvelles sur le même sujet.

Wasmtime corrige deux accidents graves à Cranelift (CVE-2026-115889, CVE-2026-115893)
Au cours des dernières semaines, deux défaillances graves ont été corrigées à Wasmtime, l'environnement de fonctionnement WebAssembly qui est intégré dans les programmes à l'ext...

Forever Security détecte AGENTS.md sur Télécharger qui essaie d'installer le paquet couleur fonction npm
La société de sécurité Forever Security a signalé la détection d'une tentative d'engagement sur l'équipe d'un client : un fichier texte appelé AGENTS.md, placé dans le dossier d...

Le rapport détaille l'escalade possible des racines en utilisant Tallscale SSH en laboratoire
Un chercheur en sécurité a publié cette semaine un rapport décrivant comment, dans un laboratoire, un appareil déjà contrôlé au sein d'un réseau Tailscale peut être utilisé pour...

OpenAI reprend l'entraînement avant sans accès en direct à Internet après les conclusions de sécurité
OpenAI a annoncé qu'il reprendrait la formation de renforcement (RL) et l'inférence interne de ses modèles plus avancés, mais le fera avec une restriction claire: la formation d...

BlackX, UEFI bootkit, attaque les missions diplomatiques du Tadjikistan, de l'Ouzbékistan et du Turkménistan
Au cours des premières semaines de 2026, des organisations diplomatiques en Asie centrale - en particulier au Tadjikistan, en Ouzbékistan et au Turkménistan - ont été attaquées ...

La campagne K0t exploite les périphériques de bord exposés pour voler les identifiants et se déplacer
Les chercheurs en cybersécurité ont documenté une campagne à grande échelle qui a exploité les périphériques de bord de réseau exposés - en particulier les applications VPN et p...