Description
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to version 1.21.0, the ExternalDataInfo class in ONNX was using Python’s setattr() function to load metadata (like file paths or data lengths) directly from an ONNX model file. It didn’t check if the "keys" in the file were valid. Due to this, an attacker could craft a malicious model that overwrites internal object properties. This issue has been patched in version 1.21.0.
Problem types
CWE-20: Improper Input Validation
CWE-400: Uncontrolled Resource Consumption
CWE-915: Improperly Controlled Modification of Dynamically-Determined Object Attributes
Product status
References
github.com/onnx/onnx/security/advisories/GHSA-538c-55jv-c5g9
github.com/onnx/onnx/pull/7751
github.com/...ommit/e30c6935d67cc3eca2fa284e37248e7c0036c46b