Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability.
CVE-2026-115922
Summary ONNX's Python tensor-materialization helpers could allocate memory according to attacker-controlled tensor dimensions without verifying that a packed sub-byte payload contained the declared number of elements. A very small model could therefore cause a disproportionately large allocation when an application called onnx.numpyhelper.toarray() or constructed onnx.reference.ReferenceEvaluator with the model. The issue affected UINT2, INT2, UINT4, INT4, and FLOAT4E2M1 tensors stored in either rawdata or packed int32data. Technical details The vulnerable unpack2bit() and unpack4bit() paths first allocated a small array based on the available packed bytes, then resized it to the shape declared in TensorProto.dims. They did not first confirm that the payload encoded enough logical elements for that shape. For example, the reporter demonstrated a 66-byte model containing one packed byte and a declared dimension of 700,000,000. The model passed onnx.checker.checkmodel() and allocated approximately 700 MB while materializing the initializer, followed by another large allocation when executing the reference evaluator. Loading, checking, or running shape inference on the serialized…
Part of the AI stack
This affects ONNX, in Runtimes & formats.
Assessment
- CVSS
- 6.2 (v3.1)
- Severity
- Medium
- EPSS
- 0.00131% chance of exploitation in the next 30 days
- Known exploited
- Not listed in CISA KEV
- Exploit availability
- Nothing found in Exploit-DB, Metasploit, Nuclei or public PoC repositories
- Published
- 26 October 2026
- Last updated
- 30 October 2026
- Affected
- pip · onnx
- Weakness
- CWE-789
- Assigner
- security-advisories@github.com
CVSS vectorCVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
At the source
References
- https://github.com/onnx/onnx/commit/05c1bc3bceceb8d3cf11e9e7fc7f19f971c44988
- https://github.com/onnx/onnx/commit/8de2cf6aa47928e6515ac6d9e1a8b4758886a7df
- https://github.com/onnx/onnx/commit/dce5876d6cc6cc30157af7d26a752ef44976da8e
- https://github.com/onnx/onnx/pull/8033
- https://github.com/onnx/onnx/pull/8038
- https://github.com/onnx/onnx/pull/8066
- https://github.com/onnx/onnx/releases/tag/v1.22.0
- https://github.com/onnx/onnx/security/advisories/GHSA-q69g-f4f5-v8m7
- https://nvd.nist.gov/vuln/detail/CVE-2026-115922
- https://github.com/advisories/GHSA-q69g-f4f5-v8m7
Community proofs of concept
No community proof of concept yet. If you have one for a published vulnerability and the right to share it, add it below — it will appear here once reviewed.
Submit a proof of concept
Only for publicly disclosed vulnerabilities, and only material from testing you were authorised to perform. This platform does not buy, sell, or broker exploits — see earning from vulnerability research for legitimate bounty programs. Submissions are reviewed before they appear. Text only; do not include live credentials, personal data, or anything targeting systems you are not permitted to test.
Query this programmatically
Agents can read this through the MCP endpoint, or over HTTP:
curl https://cve.zerocrew.in/api/cve/CVE-2026-115922