{"id":"CVE-2026-34446","aliases":["GHSA-cmw6-hcpp-c6jp","PYSEC-2026-2241"],"url":"https://o3.security/vulnerability/CVE-2026-34446","summary":"ONNX: Arbitrary File Read via ExternalData Hardlink Bypass in ONNX load","details":"### Summary\nThe 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.\n\n### The Real Problem\nThe 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.\n\n### Impact\nEspecially 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.","published":"2026-04-01T17:37:54.737Z","modified":"2026-08-12T16:25:03.667104Z","cvss":{"score":4.7,"severity":"MEDIUM","vector":"CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N"},"epss":{"score":0.00176,"percentile":0.07397,"asOf":"2026-09-17"},"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"PyPI","name":"onnx","fixedVersion":"1.21.0"}],"fix":{"url":"https://github.com/onnx/onnx/commit/4755f8053928dce18a61db8fec71b69c74f786cb","label":"onnx/onnx@4755f80"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/34xxx/CVE-2026-34446.json"},{"type":"ADVISORY","url":"https://github.com/onnx/onnx/security/advisories/GHSA-cmw6-hcpp-c6jp"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-34446"},{"type":"FIX","url":"https://github.com/onnx/onnx/commit/4755f8053928dce18a61db8fec71b69c74f786cb"},{"type":"PACKAGE","url":"https://github.com/onnx/onnx"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-12T16:25:03.667104Z"}}