GHSA-cmw6-hcpp-c6jp

ONNX: Arbitrary File Read via ExternalData Hardlink Bypass in ONNX load

En bref

Publiée
Mise à jour
CVE
CVE-2026-34446
Alias
PYSEC-2026-2241
CVSS_V3
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N

Description

### 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.

Paquets affectés

PaquetVersions
PyPI · onnxintroduced 0, fixed 1.21.0

Références

Sources

SourceLicence
OSV.devCC-BY 4.0 — GitHub Advisory Database