SEPTEMBER 18, 2026
Live Feed
Back to database
Case File

CVE-2026-80047

HIGH · CVSS 7.8 EPSS 0.08% Public Exploit

Source: NVD + CISA KEV + EPSS · Published 2026-09-01 · Last synced 2026-09-18

CyberRota Analysis

AI-Generated

Hugging Face Transformers versions 4.49.0 and up to 5.8.1 are vulnerable due to a flaw in the `load_custom_generate()` function, which allows remote attacker-controlled Python files to be written to the user's local disk without consent. This vulnerability can lead to unauthorized persistence of malicious files in the user's cache, potentially resulting in the execution of untrusted code during future model loads. Organizations using these versions should prioritize patching this vulnerability to mitigate risks associated with unauthorized file persistence and potential code execution.

Public Exploit Signal

A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.

GitHub PoC Links

Note: these links are listed for security research and verification purposes only.

CVE
CVE-2026-80047
Severity
HIGH
CVSS
7.8
EPSS
0.08%

Original NVD Description

A vulnerability in Hugging Face Transformers (versions >= 4.49.0 and <= 5.8.1) allows remote Python files to be written to local disk without user consent when using GenerativePreTrainedModel.load_custom_generate(). The function fetches and caches a remote module file before performing the required trust_remote_code consent check, inverting the security model enforced by other code-loading paths (such as AutoConfig, AutoModel, and AutoTokenizer). As a result, attacker‑controlled Python code from custom_generate/generate.py is copied into the user’s ~/.cache/huggingface/modules directory even if the user declines the trust prompt. Although execution is correctly gated, the file write is not reversible and can persist across sessions. This can lead to persistent, unauthorized files on disk and stale cache collisions where cached attacker code may later be executed during trusted model loads. The issue stems from an unconditional file write in dynamic_module_utils.py prior to any trust verification.