Brotli Decoder Flaw Behind Node.js RCE Also Affects Bun, Python and Other Widely Used Software
Un fallo de corrupción de memoria en el decodificador de Brotli de Google afecta a múltiples programas encargados de descomprimir datos con este formato, incluyendo Bun, ciertos paquetes de Python y proxies Envoy. Esta vulnerabilidad permite que información comprimida y manipulada sobrescriba los límites de un búfer, lo que puede provocar un bloqueo, fugas de memoria o la ejecución de código controlado por un atacante.
Diversos programas quedan expuestos únicamente si procesan datos comprimidos provenientes de fuentes que no son de confianza, como ocurre con ciertas funciones de lectura en Node.js y Bun, configuraciones específicas de Envoy e Istio, o la simple presencia de determinados paquetes en Python que descomprimen respuestas de forma automática. Aunque Google y Node.js implementaron correcciones, cada software afectado debe actualizar su propia copia del decodificador, ya que el error reside en el código en lenguaje C que procesa los flujos de Brotli.
Hasta el momento no se han registrado ataques en escenarios reales ni explotación activa en la naturaleza, y las valoraciones sobre su gravedad varían según la entidad que la califique, situándose entre alta y crítica. Para mitigar el riesgo mientras no se apliquen las actualizaciones correspondientes, se recomienda detener la decodificación de datos no confiables mediante diversas acciones específicas para cada entorno, dado que las soluciones temporales como alterar las cabeceras de peticiones no son suficientes por sí solas.