Security: Statement about Brotli2Shell

We are aware of the new critical Brotli2Shell vulnerability which exploits a bug in the Brotli decompressor functionality in order to gain remote execution on the affected system/service. We have checked all our products and can conclude the following:

🟢 KNIME Hub is not affected because none of its components decompresses Brotli-encoded data. KNIME Hub only makes use of the encoder which is not affected. Nevertheless, we will ship updated versions of nodeJS, istio and envoy with the next bugfix releases.

🟡 In KNIME Analytics Platform only the ORC Reader (from the Big Data Extensions) might be affected. If a malicious ORC file with a Brotli-compressed stream is read the vulnerability might get exploited. We have not been able to confirm this yet, though. We will ship an updated version of the ORC Reader with the next bugfix releases. Until then we recommend not processing ORC files from unstrusted sources.

🟡 The Python integration of KNIME Analytics Platform ships the affected Brotli decoder (1.2.0 and older), both in the bundled Python environment and in the Python-based extensions. The same applies to Hub executors that run such workflows. KNIME’s own Python code never decompresses Brotli data, so the vulnerability can only be triggered when a workflow processes data from an untrusted source:

  • a Python Script node that downloads data from an untrusted server with requests or urllib3. These libraries decompress Brotli-encoded responses automatically, even if the request didn’t ask for Brotli.

  • a Python Script node that reads an untrusted Parquet file with pandas or pyarrow, since Parquet data can be Brotli-compressed

  • a node of the AI extension configured with a custom endpoint, for example, an OpenAI-compatible base URL, that points to a malicious server

  • a legacy Chroma vector store from an untrusted source, loaded with the AI extension

We are regularly updating the Python environments, therefore patched versions will be available with the next bugfix releases.

🟢 KNIME Server is not affected because it has never supported Brotli compression.