Skip to main content
VulnerabilityPublished

CVE-2025-54886: skops · Deserialization of Untrusted Data

Affects skopsSource CVE Database V5

0

Not known to be exploited · CVSS 8.4 High : upgrade to 0.13.0 soon.

Data as of 26 Oct 2026, 17:16 UTC

CVSS 3.1 base score
8.4High
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.2% chance of exploitation in 30 days – higher than 12% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 0.13.0
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 8 Aug 2025

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.

What to do

Upgrade skops to 0.13.0.

Affected software

ProductAffectedFixed in
skops-dev skopsAffected
  • <0.13.0
Fixed in
  • 0.13.0

AI-suggested

European organizations should immediately upgrade all instances of skops to version 0.13.0 or later to eliminate the unsafe fallback to joblib. Until upgrades are complete, organizations must implement strict validation and integrity checks on all model files before loading, including cryptographic signatures or checksums to ensure authenticity. Restrict model loading to trusted sources only and avoid loading models from unverified or external inputs. Employ runtime application self-protection (RASP) or endpoint detection and response (EDR) tools to monitor for suspicious process behaviors indicative of arbitrary code execution. Incorporate network segmentation and least privilege principles to limit the impact of potential exploitation. Additionally, conduct thorough code reviews and penetration testing focused on ML model loading components. Educate data scientists and ML engineers about the risks of deserializing untrusted data and enforce secure development lifecycle practices around model serialization and deployment. Finally, maintain up-to-date inventories of ML libraries and dependencies to rapidly respond to emerging vulnerabilities.

Description

skops is a Python library which helps users share and ship their scikit-learn based models. In versions 0.12.0 and below, the Card.get_model does not contain any logic to prevent arbitrary code execution. The Card.get_model function supports both joblib and skops for model loading. When loading .skops models, it uses skops' secure loading with trusted type validation, raising errors for untrusted types unless explicitly allowed. However, when non-.zip file formats are provided, the function silently falls back to joblib without warning. Unlike skops, joblib allows arbitrary code execution during loading, bypassing security measures and potentially enabling malicious code execution. This issue is fixed in version 0.13.0.

References

Community reviews

Loading reviews…