CVE-2026-28500
HighCVSS 8.6Exploitation Probability (EPSS)
Low risk24th percentile - higher than 24% of all known CVEs
Summary
In ONNX library versions up to 1.20.1, a security control bypass exists in onnx.hub.load() due to improper logic in repository trust verification. Using the silent=True parameter suppresses all security warnings, enabling zero-interaction supply-chain attacks.
Risk Assessment
The risk involves supply-chain attacks where loading a malicious model can silently exfiltrate sensitive files like SSH keys or cloud credentials from the victim's machine without user interaction.
Recommendation
Immediately stop using onnx.hub.load() with the silent=True parameter and monitor official channels for patches. Until a fix is available, avoid loading models from untrusted sources.
Other vulnerabilities in ONNX
See all- CVE-2026-115922Medium
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.
- CVE-2026-115921Medium
ONNX versions from 1.4.0 until 1.22.0 do not safely validate the required num_scan_inputs attribute in ScanInferenceFunction, ScanInferenceFunction_opset8, and ScanInferenceFunction_opset9. A missing attribute is dereferenced as a null pointer, while a negative value is converted to size_t and can reach an oversized allocation path. An untrusted model can terminate or disrupt shape inference, including a negative-value model that passes onnx.checker.check_model().
- CVE-2026-115920Medium
ONNX versions from 1.2.1 until 1.22.0, during ConvTranspose shape inference, process a weight tensor with fewer than three dimensions without a kernel_shape attribute by deriving an empty effective_kernel_shape and indexing it for spatial dimensions. An untrusted model that passes onnx.checker.check_model() can crash onnx.shape_inference.infer_shapes(), causing denial of service without confidentiality or integrity impact.
- CVE-2026-115919Medium
ONNX before 1.22.0, in RNNShapeInference_opset1_to_6(), processes malformed RNN and LSTM nodes from opsets 1 through 6 and GRU nodes from opsets 3 through 6 without verifying that the first input has rank three. The function accesses dim(0) and dim(1) on an undersized protobuf shape, which can read outside the intended repeated field and terminate an application when onnx.shape_inference.infer_shapes() processes an untrusted model.
- CVE-2026-49114High
ONNX before version 1.21.0 contains a vulnerability in the 'save_external_data' function that builds the external-data file path and opens it for writing without O_NOFOLLOW/O_EXCL, after a non-atomic 'os.path.isfile()' check. A local attacker can pre-plant a symlink, causing the victim's write to append to any file the victim can write.
- CVE-2026-63632Low
A vulnerability in the ONNX library from version 1.3.0 to 1.22.0 allows an out-of-bounds read in Gemm_7_6::adapt_gemm_7_6() during opset 7 to 6 downgrade when a Gemm node has input tensors with fewer than two dimensions. This can cause a process crash.
- CVE-2026-44512Medium
A vulnerability in the ONNX library (versions 1.9.0 through 1.22.0) allows a null pointer dereference in the Upsample_6_7::adapt_upsample_6_7() function when processing a malicious model with an Upsample node having zero inputs. This leads to an unrecoverable denial of service (DoS).
- CVE-2026-27489High
A path traversal vulnerability via symlink was found in the ONNX library before version 1.21.0. It allows reading arbitrary files outside the model or user-provided directory.
Original NVD description (English source)
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. In versions up to and including 1.20.1, a security control bypass exists in onnx.hub.load() due to improper logic in the repository trust verification mechanism. While the function is designed to warn users when loading models from non-official sources, the use of the silent=True parameter completely suppresses all security warnings and confirmation prompts. This vulnerability transforms a standard model-loading function into a vector for Zero-Interaction Supply-Chain Attacks. When chained with file-system vulnerabilities, an attacker can silently exfiltrate sensitive files (SSH keys, cloud credentials) from the victim's machine the moment the model is loaded. As of time of publication, no known patched versions are available.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

