# CVE-2025-14931: smolagents RCE (Critical 10)

🐍

🐍 PyPI

Not in CISA KEV

CRITICAL severity

# CVE-2025-14931 — smolagents

CRITICAL 

CVE-2025-14931 is a critical-severity (CVSS 10) Deserialization of Untrusted Data vulnerability in smolagents. The records list no fixed version yet; check the vendor advisory below and apply the mitigations in the meantime.

Hugging Face smolagents: Unsafe deserialization in Remote Python Executor leads to RCE

Also known asPYSEC-2026-543

Published

Dec 23, 2025

Updated

Jun 29, 2026

Affected

1 pkg

Patched

None yet

Exploits

None indexed

Exploitation data as of Nov 3, 2026 · OSV.dev, NVD, FIRST.org (EPSS)

## Exploitation Status

### No confirmed exploitation observed yet

-   CISA assesses this as automatable — exploitation doesn’t require manual, per-target effort, which raises the odds of mass scanning and opportunistic attacks.
-   A successful exploit gives an attacker total control of the affected component, not partial access.
-   CISA’s own triage has not observed active exploitation or public proof-of-concept code for this CVE as of its last assessment.

Exploitation and automatability from CISA’s SSVC triage for CVE-2025-14931.

## EPSS Exploitation Probability

[via FIRST.org ↗](https://www.first.org/epss/)

1.2%probability of exploitation in next 30 days

Lower Risk0.00%

Lower risk than most CVEs69th percentile — riskier than 69% of all scored CVEsHighest risk

0.00%1.93%3.86%5.78%4.6%1.2%May 26Sep 26Nov 26

Probability of exploitation in the next 30 days, from [FIRST.org EPSS](https://www.first.org/epss/).

## How urgent is this, really

## Where this sits among everything scored

## Real-World Exposure

1 pkg affected

🐍`smolagents`

Real-time download stats are indexed for npm and PyPI packages. This vulnerability affects PyPI packages — download data is not available via public APIs for these ecosystems.

## Description

Hugging Face smolagents Remote Python Executor Deserialization of Untrusted Data Remote Code Execution Vulnerability. This vulnerability allows remote attackers to execute arbitrary code on affected installations of Hugging Face smolagents. Authentication is not required to exploit this vulnerability.

The specific flaw exists within the parsing of pickle data. The issue results from the lack of proper validation of user-supplied data, which can result in deserialization of untrusted data. An attacker can leverage this vulnerability to execute code in the context of the service account. Was ZDI-CAN-28312.

## Affected Packages

1 total

Ecosystem

Package

Vulnerable range

Fix

🐍PyPI

`smolagents` 

all versions

No fix

## Detection & mitigation playbook

Open-source dependency

1.  ### Detect
    
    Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for smolagents, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
    
2.  ### Remediation status
    
    The records we use list no patched version of smolagents for CVE-2025-14931. Check the maintainer's advisory, and where your build allows, override or pin the dependency away from the vulnerable range.
    
3.  ### Mitigate without a patch
    
    Do not deserialise data from untrusted sources: where the format allows it, restrict deserialisation to an explicit allowlist of expected types, and prefer a data-only format (JSON, Protobuf) over one that can reconstruct arbitrary objects until you can upgrade.
    

## Frequently Asked Questions

Hugging Face smolagents Remote Python Executor Deserialization of Untrusted Data Remote Code Execution Vulnerability. This vulnerability allows remote attackers to execute arbitrary code on affected installations of Hugging Face smolagents. Authentication is not required to exploit this vulnerability. The specific flaw exists within the parsing of pickle data. The issue results from the lack of proper validation of user-supplied data, which can result in deserialization of untrusted data. An attacker can leverage this vulnerability to execute code in the context of the service account. Was ZD

O3 Security · Impact-Aware SCA

### Is CVE-2025-14931 in your dependencies?

Find it across PyPI, including transitive dependencies.

[Scan my dependencies](/book-demo) [How O3 SCA works](/impact-aware-sca)