SB2026070341 - Multiple vulnerabilities in onnx
Published: July 3, 2026 Updated: November 10, 2026
Breakdown by Severity
- Low
- Medium
- High
- Critical
Description
This security bulletin contains information about 6 vulnerabilities.
1) Heap-based buffer overflow (CVE-ID: CVE-2026-63632)
CWE-ID: CWE-122 - Heap-based Buffer Overflow
CVSSv4: 4.6 [CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N]
The vulnerability allows a remote attacker to disclose sensitive information or cause a denial of service.
The vulnerability exists due to a heap-based buffer overflow in Gemm_7_6::adapt_gemm_7_6() when processing a crafted model during version conversion. A remote attacker can trick the victim into processing a specially crafted model to disclose sensitive information or cause a denial of service.
User interaction is required to process the crafted model through onnx.version_converter.convert_version(model, 6) during opset downgrade from 7 to 6.
2) NULL pointer dereference (CVE-ID: CVE-2026-44512)
CWE-ID: CWE-476 - NULL Pointer Dereference
CVSSv4: 6.7 [CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]
The vulnerability allows a remote attacker to cause a denial of service.
The vulnerability exists due to a null pointer dereference in Upsample_6_7::adapt_upsample_6_7() when processing a crafted model with an Upsample node that has zero inputs during version conversion. A remote attacker can trick the victim into opening a crafted model to cause a denial of service.
Debug builds abort with an assertion failure, while release builds crash with SIGSEGV.
3) Out-of-bounds read (CVE-ID: CVE-2026-115919)
CWE-ID: CWE-125 - Out-of-bounds read
CVSSv4: 6.9 [CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]
The vulnerability allows a remote attacker to cause a denial of service by terminating an application performing ONNX shape inference.
The vulnerability exists due to an out-of-bounds read caused by missing input-rank validation in RNNShapeInference_opset1_to_6() when processing RNN or LSTM nodes from opsets 1–6 or GRU nodes from opsets 3–6. A remote attacker can supply a crafted model with an undersized first-input shape to crash an application calling onnx.shape_inference.infer_shapes().
4) NULL pointer dereference (CVE-ID: CVE-2026-115921)
CWE-ID: CWE-476 - NULL Pointer Dereference
CVSSv4: 6.9 [CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]
The vulnerability allows a remote attacker to cause a denial of service in applications performing ONNX shape inference on untrusted models.
The vulnerability exists due to a null pointer dereference and unchecked signed-to-unsigned conversion in ScanInferenceFunction when processing the required num_scan_inputs attribute. A remote attacker can supply a model with this attribute missing or negative through a local library API or file boundary to terminate the process or trigger an exceptional vector allocation.
5) Out-of-bounds read (CVE-ID: CVE-2026-115920)
CWE-ID: CWE-125 - Out-of-bounds read
CVSSv4: 6.9 [CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]
The vulnerability allows a remote attacker to cause a denial of service by crashing an application performing ONNX shape inference.
The vulnerability exists due to an out-of-bounds read in ConvTranspose shape inference when an undersized weight tensor produces an empty effective_kernel_shape vector that is subsequently indexed. A remote attacker can supply a crafted model with a weight tensor having fewer than three dimensions and no kernel_shape attribute to trigger a process crash when the model is processed through the local shape inference API.
6) Uncontrolled Memory Allocation (CVE-ID: CVE-2026-115922)
CWE-ID: CWE-789 - Uncontrolled Memory Allocation
CVSSv4: 6.9 [CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]
The vulnerability allows a remote attacker to exhaust available memory and cause a denial of service.
The vulnerability exists due to excessive memory allocation in ONNX's _unpack_2bit() and _unpack_4bit() helpers when materializing packed sub-byte tensors without verifying that their payloads contain enough elements for the declared dimensions. A remote attacker can supply a small model with oversized tensor dimensions and undersized raw_data or packed int32_data payloads to trigger excessive allocations through onnx.numpy_helper.to_array() or onnx.reference.ReferenceEvaluator and cause a denial of service.
Remediation
Install update from vendor's website.
References
- https://github.com/onnx/onnx/security/advisories/GHSA-p893-rvq9-2xf9
- https://github.com/onnx/onnx/security/advisories/GHSA-hwpq-hmq9-wj77
- https://github.com/onnx/onnx/pull/7813
- https://github.com/onnx/onnx/security/advisories/GHSA-48m4-24cq-37qf
- https://github.com/onnx/onnx/commit/92e541266af5dd38cfa48aeb92206f4268a066cd
- https://github.com/onnx/onnx/security/advisories/GHSA-m4pr-6v3c-6fgr
- https://github.com/onnx/onnx/commit/dd6bc92ea39fd2274fd671f0734b0b8b558356f5
- https://github.com/onnx/onnx/security/advisories/GHSA-6pwm-x34p-fvj2
- https://github.com/onnx/onnx/commit/2ec288908952eea9dcf48d4b197915e1f72c6abf
- https://github.com/onnx/onnx/security/advisories/GHSA-q69g-f4f5-v8m7