Au cours de cet exercice de red teaming, nous avons également découvert une vulnérabilité qui permet une exécution de code à distance non authentifiée dans Brotli, une bibliothèque de compression largement déployée et incluse dans de nombreux logiciels tels que Node.js, Bun et Envoy.
La faille pourrait permettre à un attaquant d'exécuter son propre code sur les systèmes concernés en envoyant ou en répondant avec des données compressées malveillantes, sans avoir besoin de créer un compte utilisateur. Autrement dit, un serveur non corrigé qui accepte des entrées compressées pourrait être pris de contrôle par un client malveillant, et un client non corrigé qui accepte des entrées compressées (comme « curl --compressed ») pourrait être pris de contrôle par un serveur malveillant.
Ce problème de cause racine avait en fait été corrigé dans le code source de Brotli en février, mais on ne savait pas à l'époque qu'il donnait lieu à une vulnérabilité de sécurité et il n'y avait pas eu de version plus récente de Brotli. Comme Brotli est intégré dans d'autres logiciels, tout logiciel qui inclut cette bibliothèque doit également appliquer la mise à jour, suivie par les utilisateurs de ce logiciel. Nous avons divulgué la vulnérabilité à Brotli et à d'autres projets en aval tels que Node.js, qui ont publié ou publient actuellement des mises à jour de sécurité, et Brotli a créé de nouvelles versions et publié un CVE.
Plus de détails sur le correctif et les atténuations ci-dessous :
https://patchtheplanet.org/brotli