CVE-2026-34446
ONNX: Arbitrary File Read via ExternalData Hardlink Bypass in ONNX load
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to version 1.21.0, there is an issue in onnx.load, the code checks for symlinks to prevent path traversal, but completely misses hardlinks because a hardlink looks exactly like a regular file on the filesystem. This issue has been patched in version 1.21.0.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- High
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
4.7
ONNX: Arbitrary File Read via ExternalData Hardlink Bypass in ONNX load
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to version 1.21.0, there is an issue in onnx.load, the code checks for symlinks to prevent path traversal, but completely misses hardlinks because a hardlink looks exactly like a regular file on the filesystem. This issue has been patched in version 1.21.0.
- Record
CVE-2026-34446- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N - Weakness
- CWE-22, CWE-61
- Updated
- 2026-11-02
EUVDEUVD-2026-17987
4.7
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to version 1.21.0, there is an issue in onnx.load, the code checks for symlinks to prevent path traversal, but completely misses hardlinks because a hardlink looks exactly like a regular file on the filesystem. This issue has been patched in version 1.21.0.
- Record
EUVD-2026-17987- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-cmw6-hcpp-c6jp
4.7
ONNX: Arbitrary File Read via ExternalData Hardlink Bypass in ONNX load
Summary
The issue is in onnx.load — the code checks for symlinks to prevent path traversal, but completely misses hardlinks, which is the problem, since a hardlink looks exactly like a regular file on the filesystem.
The Real Problem
The validator in onnx/checker.cc only calls is_symlink() and never checks the inode or st_nlink, so a hardlink walks right through every security check without any issues.
Impact
Especially dangerous in AI supply chain scenarios like HuggingFace — a single malicious model is enough to silently steal secrets from the victim's machine without them noticing anything.
- Record
GHSA-cmw6-hcpp-c6jp- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N - Weakness
- CWE-22, CWE-61
- Updated
- 2026-11-02
NVD
4.7
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to version 1.21.0, there is an issue in onnx.load, the code checks for symlinks to prevent path traversal, but completely misses hardlinks because a hardlink looks exactly like a regular file on the filesystem. This issue has been patched in version 1.21.0.
- Record
CVE-2026-34446- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N - CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N - Weakness
- CWE-22, CWE-61
- Updated
- 2026-11-02
OSV
4.7
ONNX: Arbitrary File Read via ExternalData Hardlink Bypass in ONNX load
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to version 1.21.0, there is an issue in onnx.load, the code checks for symlinks to prevent path traversal, but completely misses hardlinks because a hardlink looks exactly like a regular file on the filesystem. This issue has been patched in version 1.21.0.
- Record
CVE-2026-34446- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N - Weakness
- CWE-22, CWE-61
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-34446
5.5
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to version 1.21.0, there is an issue in onnx.load, the code checks for symlinks to prevent path traversal, but completely misses hardlinks because a hardlink looks exactly like a regular file on the filesystem. This issue has been patched in version 1.21.0.
- Record
DEBIAN-CVE-2026-34446- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
Show 4 moreShow less
OSVGHSA-cmw6-hcpp-c6jp
4.7
ONNX: Arbitrary File Read via ExternalData Hardlink Bypass in ONNX load
Summary
The issue is in onnx.load — the code checks for symlinks to prevent path traversal, but completely misses hardlinks, which is the problem, since a hardlink looks exactly like a regular file on the filesystem.
The Real Problem
The validator in onnx/checker.cc only calls is_symlink() and never checks the inode or st_nlink, so a hardlink walks right through every security check without any issues.
Impact
Especially dangerous in AI supply chain scenarios like HuggingFace — a single malicious model is enough to silently steal secrets from the victim's machine without them noticing anything.
- Record
GHSA-cmw6-hcpp-c6jp- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N - Weakness
- CWE-22, CWE-61
- Updated
- 2026-11-02
OSVPYSEC-2026-2241
5.5
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to version 1.21.0, there is an issue in onnx.load, the code checks for symlinks to prevent path traversal, but completely misses hardlinks because a hardlink looks exactly like a regular file on the filesystem. This issue has been patched in version 1.21.0.
- Record
PYSEC-2026-2241- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-34446
4.7
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to version 1.21.0, there is an issue in onnx.load, the code checks for symlinks to prevent path traversal, but completely misses hardlinks because a hardlink looks exactly like a regular file on the filesystem. This issue has been patched in version 1.21.0.
- Record
UBUNTU-CVE-2026-34446- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N - CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVAZL-81986 No score
CVE-2026-34446 affecting package pytorch for versions less than 2.2.2-14
Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to version 1.21.0, there is an issue in onnx.load, the code checks for symlinks to prevent path traversal, but completely misses hardlinks because a hardlink looks exactly like a regular file on the filesystem. This issue has been patched in version 1.21.0.
- Record
AZL-81986- Updated
- 2026-11-05
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
onnxPyPI |
through 1.20.1 | 1.21.0 |
pytorchAzure Linux:3 |
before 2.2.2-14 | 2.2.2-14 |
onnxDebian:12 |
All versions, plus listed versions 1.12.0-21.13.1-11.13.1-21.13.1-31.14.1-1 Show 16 moreShow less1.14.1-21.14.1-2.11.14.1-2.1~exp11.16.1-11.16.2-11.17.0-11.17.0-21.17.0-31.19.1-1~exp11.20.0-11.20.0-1~exp11.20.0-31.20.0-41.20.0-51.20.0-61.21.0-1 |
None known |
onnxDebian:13 |
All versions, plus listed versions 1.17.0-31.19.1-1~exp11.20.0-11.20.0-1~exp11.20.0-3 Show 4 moreShow less1.20.0-41.20.0-51.20.0-61.21.0-1 |
None known |
onnxDebian:14 |
All versions, plus listed versions 1.17.0-31.19.1-1~exp11.20.0-11.20.0-1~exp11.20.0-3 Show 4 moreShow less1.20.0-41.20.0-51.20.0-61.21.0-1 |
None known |
onnxPyPI |
before 1.21.0, plus listed versions 0.10.20.2.11.0.01.0.1 Show 42 moreShow less1.1.01.1.11.1.21.10.01.10.11.10.21.11.01.12.01.13.01.13.11.14.01.14.11.15.01.16.01.16.11.16.21.17.01.18.01.19.01.19.11.19.1rc11.2.11.2.21.2.31.20.01.20.0rc11.20.0rc21.20.11.20.1rc11.21.0rc11.21.0rc21.21.0rc31.21.0rc41.3.01.4.01.4.11.5.01.6.01.7.01.8.01.8.11.9.0 |
1.21.0 |
onnxUbuntu:22.04:LTS |
All versions, plus listed versions 1.7.0+dfsg-3build11.7.0+dfsg-3build21.7.0+dfsg-3ubuntu11.7.0+dfsg-3ubuntu2 |
None known |
onnxUbuntu:Pro:24.04:LTS |
All versions, plus listed versions 1.13.1-31.13.1-3build11.14.1-21.14.1-2.11.14.1-2.1build11.14.1-2.1build21.14.1-2.1ubuntu0.1~esm1 |
None known |
onnxUbuntu:25.10 |
All versions, plus listed versions 1.17.0-3build1 |
None known |
onnxUbuntu:26.10 |
All versions, plus listed versions 1.20.0-11.20.0-6 |
None known |
onnxUbuntu:26.04:LTS |
All versions, plus listed versions 1.17.0-3build11.20.0-1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| facts | OSV | |
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-34446 is a medium vulnerability (CVSS 4.7) in Linuxfoundation Onnx, published April 1, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.18%, the 7th percentile. Fixed in onnx 1.21.0.
References
github.com/onnx/onnx/security/advisories/GHSA-cmw6-hcpp-c6jp
github.com/onnx/onnx/commit/4755f8053928dce18a61db8fec71b69c74f786cb
nvd.nist.gov/vuln/detail/CVE-2026-34446
github.com/advisories/GHSA-cmw6-hcpp-c6jp
github.com/CVEProject/cvelistV5/tree/main/cves/2026/34xxx/CVE-2026-34446.json
security-tracker.debian.org/tracker/CVE-2026-34446
github.com/onnx/onnx
ubuntu.com/security/CVE-2026-34446
cve.org/CVERecord?id=CVE-2026-34446