GHSA-xrqw-3rrv-vx5w
Transformers save_pretrained path traversal allows arbitrary file writes through chat template names
At a glance
- Published
- Updated
- CVE
- CVE-2026-9856
- Aliases
- PYSEC-2026-3929
- CVSS_V3
- CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:L
Description
A vulnerability in huggingface/transformers versions < 5.10.0 allows an attacker to perform arbitrary file writes via path traversal. The issue resides in the `save_pretrained()` methods of `PreTrainedTokenizerBase` and `ProcessorMixin`, where keys from the `chat_template` dictionary are used directly as filenames without proper validation. An attacker can exploit this by publishing a malicious Hugging Face Hub repository with a crafted `tokenizer_config.json` file. When a victim downloads and saves the tokenizer or processor, the attacker-controlled keys can escape the intended save directory, enabling arbitrary file writes with attacker-controlled content. This vulnerability affects multiple processors inheriting from `ProcessorMixin`, including Idefics, Florence, Gemma, Phi, and Qwen-VL.
Affected packages
| Package | Versions |
|---|---|
| PyPI · transformers | introduced 0, fixed 5.10.0 |
References
- https://nvd.nist.gov/vuln/detail/CVE-2026-9856 ADVISORY
- https://github.com/huggingface/transformers/pull/46191 WEB
- https://github.com/huggingface/transformers/commit/eaaaf8494dd5386634ae37d1d122212fdc315be5 WEB
- https://github.com/huggingface/transformers PACKAGE
- https://huntr.com/bounties/362824d5-fe18-40e8-a6cf-62277f97a170 WEB
Sources
| Source | Licence |
|---|---|
| OSV.dev | CC-BY 4.0 — GitHub Advisory Database |