CVE-2024-3568
Arbitrary Code Execution via Deserialization in huggingface/transformers
CRITICAL 9.6EPSS 2.1%
The huggingface/transformers library is vulnerable to arbitrary code execution through deserialization of untrusted data within the `load_repo_checkpoint()` function of the `TFPreTrainedModel()` class. Attackers can execute arbitrary code and commands by crafting a malicious serialized payload, exploiting the use of `pickle.load()` on data from potentially untrusted sources. This vulnerability allows for remote code execution (RCE) by deceiving victims into loading a seemingly harmless checkpoint during a normal training process, thereby enabling attackers to execute arbitrary code on the targeted machine.
- Affected
- huggingface · huggingface/transformers
- CVSS v3.1 NVD
- 9.6 CRITICAL
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H - CVSS v3.0 HUNTR
- 3.4 LOW
CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:N/A:L - EPSS
- 2.08% chance of exploitation in the next 30 days, 81st percentile
- Published
- 2024-04-10
- Updated
- 2024-08-01
Proof-of-concept exploits (2)
- llm-sec/transformer-hacker34★ · 2026-01-28
- rooobeam/Pickle-Deserialization-Exploit-in-Transformers0★ · 2025-07-10
Security advisories
- https://huntr.com/bounties/b3c36992-5264-4d7f-9906-a996efafba8f
- advisories/GHSA-37q5-v5qm-c9v8
- huggingface/transformers/commit/693667b8ac8138b83f8adb6522ddaf42fa07c125