PYSEC-2026-3929
Dashboard / Vulnerabilities / PYSEC-2026-3929
PYSEC-2026-3929
Summary: Transformers save_pretrained path traversal allows arbitrary file writes through chat template names
Details: 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.
References: https://nvd.nist.gov/vuln/detail/CVE-2026-9856, https://github.com/huggingface/transformers/pull/46191, https://github.com/huggingface/transformers/commit/eaaaf8494dd5386634ae37d1d122212fdc315be5, https://github.com/huggingface/transformers, https://huntr.com/bounties/362824d5-fe18-40e8-a6cf-62277f97a170, https://pypi.org/project/transformers, https://github.com/advisories/GHSA-xrqw-3rrv-vx5w
Affected packages
Package
Name: transformers
Purl: pkg:pypi/transformers
Affected ranges
Type: ECOSYSTEM
Events:
