ZeroHour

CVE-2026-10036

moderate

Arbitrary code execution via unsafe YAML deserialization in SpeechBrain checkpoints

CVSS 4.0
8.7 high
EPSS
<1%p30
Published
()
Modified
AI analysis

SpeechBrain before 1.1.1 parses CKPT.yaml checkpoint metadata using PyYAML's unsafe loader, deserializing attacker-controlled Python object tags (CWE-502, deserialization of untrusted data). During Checkpointer.recover_if_possible(), the library enumerates and parses every CKPT.yaml file in the configured checkpoint path, so a crafted file containing tags such as !!python/object/apply triggers arbitrary Python code execution during candidate discovery — even if that checkpoint is never selected for recovery. An attacker who can place or modify a checkpoint metadata file in a scanned directory (for example a third-party pretrained model bundle, a shared storage location, or any other attacker-influenced checkpoint path) gains arbitrary code execution in the context of the process running SpeechBrain. Any project running SpeechBrain before 1.1.1 with checkpoint recovery enabled is affected, with practical exposure concentrated in teams loading pretrained bundles or scanning checkpoint directories not fully under their control. No public proof-of-concept is known, the flaw is not in CISA KEV, and EPSS currently assigns a 0.4% probability of exploitation within 30 days (30th percentile), indicating low near-term exploitation risk.

What to do: Upgrade SpeechBrain to 1.0.0 successor release 1.1.1 or later on all systems that use the Checkpointer recovery feature. Until upgraded, audit applications for uses of Checkpointer.recover_if_possible() and verify that checkpoint directories contain only trusted files, avoiding recovery scans on checkpoint paths populated by third-party model bundles, untrusted shared storage, or user-supplied uploads. As a compensating measure, restrict which directories are scanned for CKPT.yaml and treat checkpoint metadata files as untrusted input when sourced from outside your own training runs.

Affected
SpeechBrainbefore 1.1.1
Estimated exposure
moderateplausibly on the order of tens of thousands of installations of the open-source toolkit, with the directly exposed subset (applications recovering checkpoints… — Estimated from open-source deployment patterns: SpeechBrain is a widely used PyTorch speech toolkit with a substantial install and CI download base, but no install counts or internet-exposure scan data are provided, and the flaw only…

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

Description

SpeechBrain before 1.1.1 contains an arbitrary code execution vulnerability that allows attackers to execute arbitrary code by supplying a crafted CKPT.yaml checkpoint metadata file parsed with PyYAML's unsafe loader during candidate enumeration in Checkpointer.recover_if_possible(). Attackers can embed malicious Python object construction tags such as !!python/object/apply in any CKPT.yaml file within the configured checkpoint path to trigger code execution during candidate discovery, even if the malicious checkpoint is never selected for recovery.

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.