Cyber Resilience

CVE-2024-3568

CriticalPublic PoCRCE

Published: 10 April 2024

Published
10 April 2024
Modified
10 October 2025
KEV Added
Patch
CVSS Score v3.1 9.6 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
EPSS Score 0.2443 96.2th percentile
Risk Priority 34 60% EPSS · 20% KEV · 20% CVSS

Summary

CVE-2024-3568 is a critical-severity Deserialization of Untrusted Data (CWE-502) vulnerability in Huggingface Transformers. Its CVSS base score is 9.6 (Critical).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploitation for Client Execution (T1203); ranked in the top 3.8% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

This vulnerability is AI-related — categorised as NLP and Transformers; in the Supply Chain and Deployment risk domain; MITRE ATLAS techniques in scope: AI Supply Chain Compromise (AML.T0010).

Deeper analysis

The huggingface/transformers library is affected by a deserialization vulnerability (CWE-502) that enables arbitrary code execution. The flaw resides in the load_repo_checkpoint() function of the TFPreTrainedModel() class, which invokes pickle.load() on data originating from potentially untrusted sources such as model checkpoints.

An attacker can craft a malicious serialized payload and host it as an apparently benign checkpoint. By tricking a victim into loading that checkpoint during ordinary model training or inference workflows, the attacker achieves remote code execution with the privileges of the loading process. The issue carries a CVSS 3.1 score of 9.6 reflecting network attack vector, low complexity, and high impact on confidentiality, integrity Availability.

Public references point to a fix merged in commit 693667b8ac8138b83f8adb6522ddaf42fa07c125 of the transformers repository, along with details published via the huntr.com bounty platform. The EPSS score for this CVE reached a peak of 0.2549 and currently stands at 0.2443.

EU & UK References

Vulnerability details

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()`…

more

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.

CWE(s)

AI Security AnalysisAI

AI Category
NLP and Transformers
Risk Domain
Supply Chain and Deployment
OWASP Top 10 for LLMs 2025
None mapped
Classification Reason
The vulnerability is in the huggingface/transformers library, which is a primary library for NLP models and transformer architectures, specifically in the TFPreTrainedModel class for loading checkpoints.

Related Threats

MITRE ATT&CK Enterprise TechniquesAI

T1203 Exploitation for Client Execution Execution
Adversaries may exploit software vulnerabilities in client applications to execute code.
Why these techniques?

The deserialization vulnerability (pickle.load() on untrusted checkpoint data) in the huggingface/transformers library enables arbitrary remote code execution during model loading, directly facilitating Exploitation for Client Execution.

MITRE ATLAS TechniquesAI

MITRE ATLAS techniques

AML.T0010: AI Supply Chain Compromise

Affected Assets

huggingface
transformers
≤ 4.38.0

Mitigating Controls

Likely Mitigating Controls AI

Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.

addresses: CWE-502

Penetration testing supplies malicious serialized objects, detecting unsafe deserialization and supporting corrective actions.

addresses: CWE-502

Evaluation of untrusted data handling (deserialization testing) reveals unsafe processing, which the required remediation process addresses.

addresses: CWE-502

Untrusted serialized data can be deserialized and observed inside the chamber, blocking gadget-chain exploitation outside the sandbox.

addresses: CWE-502

Validates or rejects untrusted serialized data before deserialization occurs.

addresses: CWE-502

Identifies and blocks malicious code introduced through deserialization of untrusted data at system boundaries.

addresses: CWE-502

Integrity verification of serialized information can detect tampering before deserialization occurs.

addresses: CWE-502

Provenance of associated data allows detection of untrusted sources before deserialization or processing occurs.

References