Every CVE Search/ Get API key

CVE-2024-3568

Arbitrary Code Execution via Deserialization in huggingface/transformers

3.4 LowPublic exploitFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
High
Privileges needed
None
User interaction
Required

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
Low

Exploit likelihood

2.08%Up 2.0 points since Apr 11, 2024
90%50%10%1%

What each source reports

CVE List Score used 3.4

Arbitrary Code Execution via Deserialization in huggingface/transformers

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.

Record
CVE-2024-3568
CVSS 3.0
3.4 LowCVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:N/A:L
Weakness
CWE-502
Updated
2026-11-02
EUVDEUVD-2024-1077 3.4

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.

Record
EUVD-2024-1077
CVSS 3.0
3.4 LowCVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:N/A:L
Updated
2026-11-03
GitHub AdvisoriesGHSA-37q5-v5qm-c9v8 3.4

Transformers Deserialization of Untrusted Data vulnerability

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.

Record
GHSA-37q5-v5qm-c9v8
CVSS 3.0
3.4 LowCVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:N/A:L
Weakness
CWE-502
Updated
2026-11-02
NVD 9.6

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.

Record
CVE-2024-3568
CVSS 3.1
9.6 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
CVSS 3.0
3.4 LowCVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:N/A:L
Weakness
CWE-502
Updated
2026-11-02
OSV 3.4

Arbitrary Code Execution via Deserialization in huggingface/transformers

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.

Record
CVE-2024-3568
CVSS 3.0
3.4 LowCVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:N/A:L
Weakness
CWE-502
Updated
2026-11-02
OSVGHSA-37q5-v5qm-c9v8 3.4

Transformers Deserialization of Untrusted Data vulnerability

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.

Record
GHSA-37q5-v5qm-c9v8
CVSS 3.0
3.4 LowCVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:N/A:L
Weakness
CWE-502
Updated
2026-11-02
OSVPYSEC-2026-1978 3.4

Transformers Deserialization of Untrusted Data vulnerability

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.

Record
PYSEC-2026-1978
CVSS 3.0
3.4 LowCVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:N/A:L
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
transformers
PyPI
before 4.38.0
4.38.0
transformers
PyPI
before 4.38.0, plus listed versions
0.12.0.02.1.02.1.12.10.0
Show 45 moreShow less
2.11.02.2.02.2.12.2.22.3.02.4.02.4.12.5.02.5.12.6.02.7.02.8.02.9.02.9.13.0.03.0.13.0.23.1.03.2.03.3.03.3.13.4.03.5.03.5.14.0.04.0.0rc14.0.14.1.04.1.14.10.04.10.14.10.24.10.34.11.04.11.14.11.24.11.34.12.04.12.14.12.24.12.34.12.44.12.54.13.04.14.0
4.38.0

Public exploits

Links only. Every CVE stores no exploit code.

Public exploits
SourceLinkDate
PoC in GitHubrooobeam/Pickle-Deserialization-Exploit-in-Transformers2025-07-10

History

History
RecordedChangedSources
aliases, publishedEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV, PoC in GitHub

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2024-3568 is a low vulnerability (CVSS 3.4) in Huggingface Huggingface/transformers, published April 10, 2024. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 2.08%, the 81st percentile. Fixed in transformers 4.38.0.

References

This page doesn't list everything

Left out here: 81 versions. The JSON record has them.

MoveEnter Open