[ CVE-2026-115922 · Published 26 Oct 2026 ]
ONNX: Denial of service via unchecked expansion of packed sub-byte tensors in ONNX Python APIs
CVSS 6.2
EPSS <1%Fix available
[ Description ]Official description
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to 1.22.0, _unpack_2bit() and _unpack_4bit() resize unpacked arrays according to attacker-controlled TensorProto.dims without verifying that raw_data or int32_data encodes the declared number of elements. Materializing an untrusted UINT2, INT2, UINT4, INT4, or FLOAT4E2M1 tensor through onnx.numpy_helper.to_array() or onnx.reference.ReferenceEvaluator can therefore expand a small packed payload into a disproportionately large allocation and exhaust memory. This issue is fixed in version 1.22.0.
[ Fixes ]Fixes and patches
- onnx 1.22.0Fixed version · GitHub Advisories · pip package onnx: upgrade to 1.22.0 or later (affected <= 1.21.0)
[ Packages ]Affected open-source packages
- onnx pipAffected <= 1.21.0 · fixed in 1.22.0 · GHSA-q69g-f4f5-v8m7
[ References ]References
- github.com/onnx/onnx/commit/05c1bc3bceceb8d3cf11e9e7fc7f19f971c44988
- github.com/onnx/onnx/commit/8de2cf6aa47928e6515ac6d9e1a8b4758886a7df
- github.com/onnx/onnx/commit/dce5876d6cc6cc30157af7d26a752ef44976da8e
- github.com/onnx/onnx/pull/8033
- github.com/onnx/onnx/pull/8038
- github.com/onnx/onnx/pull/8066
- github.com/onnx/onnx/releases/tag/v1.22.0
- github.com/onnx/onnx/security/advisories/GHSA-q69g-f4f5-v8m7