ZeroHour

CVE-2026-90777

niche

Arbitrary Code Execution via Unsafe Checkpoint Deserialization in ESPnet

CVSS 4.0
8.7 high
EPSS
Published
()
Modified
AI analysis

ESPnet before version 202609 loads pretrained model checkpoints with PyTorch's torch.load using weights_only=False, which deserializes arbitrary Python objects rather than only tensor weights. An attacker who convinces a user to load a crafted checkpoint file — for example one shared via a model hub, forum, or direct link — can execute arbitrary code on the victim's machine the moment the file is loaded through ESPnet's initialization or fine-tuning path. Successful exploitation gives full code execution with the privileges of the user running the training or inference job, compromising the host and any data or credentials accessible to it. The flaw affects any user of ESPnet releases prior to 202609 who loads model files that did not originate from a fully trusted source. No public proof-of-concept is known, the issue is not on the CISA KEV list, and no exploitation in the wild has been reported.

What to do: Upgrade to ESPnet 202609 or later, where checkpoints are loaded with weights_only restrictions enforced. Until upgraded, only load checkpoint files (.pth/.pt) from sources you fully trust, verify file hashes against official releases, and never load models received from unverified links or third-party model repositories. Consider running model loading in an isolated container or sandbox to limit the blast radius of a malicious checkpoint.

Affected
ESPnetbefore 202609
Estimated exposure
nichelikely thousands to low tens of thousands of installations (order of magnitude) — ESPnet is a popular open-source speech/NLP research toolkit distributed via GitHub and PyPI, but there is no telemetry on active installs, so the estimate is based on its academic/research user base rather than measured counts.

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

ESPnet before 202609 deserializes pretrained model checkpoints using torch.load with weights_only=False, allowing arbitrary code execution from attacker-supplied files. Attackers can craft malicious checkpoint files that execute code during deserialization when loaded through the initialization or fine-tuning path.

Weakness
CWE-502
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.