When parsing an MTLX file with multiple nested nodegraph implementations, the MaterialX XML parsing logic can potentially crash due to stack exhaustion.
// detailsBy specification, multiple kinds of elements in MTLX support nesting other elements, such as in the case of nodegraph elements. Parsing these subtrees is implemented via recursion, and since there is no max depth imposed on the XML document, this can lead to a stack overflow when the library parses an MTLX file with an excessively high number of nested elements.
// pocPlease download the recursionoverflow.mtlx file from the following link:
https://github.com/ShielderSec/poc/tree/main/CVE-2025-53009
build/bin/MaterialXView --material recursionoverflow.mtlx
// impactAn attacker could intentionally crash a target program that uses MaterialX by sending a malicious MTLX file.
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:P
- Attack vector
- Network
- Attack complexity
- Low
- Attack requirements
- None
- Privileges required
- None
- User interaction
- None
- Confidentiality (vulnerable system)
- None
- Integrity (vulnerable system)
- None
- Availability (vulnerable system)
- Low
- Confidentiality (subsequent systems)
- None
- Integrity (subsequent systems)
- None
- Availability (subsequent systems)
- None
- Exploit maturity
- Proof of concept