Live › vulnerability › CVE-2026-118623
MLflow deserializes pickle files from user-supplied input without validating them, so a crafted file can run code in the MLflow process. An attacker gets code execution as the account running MLflow once a user visits a malicious page or opens a malicious file.
Summary written from the sources below. Check the originals before acting.
First seen by InfraStack 2026-11-04 00:46 UTC. All times on this page are UTC.
Teams running MLflow, mainly the Python package used for model evaluation, where a user loads a pickle evaluation artifact (PickleEvaluationArtifact) that someone else could have crafted. Code then runs as the account running MLflow. Teams that only load artifacts they produced themselves can skip it; the first affected version is not stated.
| Product | Ecosystem | Affected | Fixed in |
|---|---|---|---|
| mlflow | pypi | < 3.13.0 (lower bound not stated) | 3.13.0 |
pip show mlflow (or pip show mlflow-skinny); versions below 3.13.0 are treated as exposed, since the first affected version is not stated3.13.0 (per ZDI-26-839)Each row is the first time that source carried this signal. The analyst’s rows are its own findings.
MLflow PickleEvaluationArtifact Deserialization of Untrusted Data Remote Code Execution Vulnerability. This vulnerability allows remote attackers to execute arbitrary code on affected installations of MLflow. User interaction is required to exploit this vulnerability in that the target must visit a malicious page or open a malicious file.
The specific flaw exists within the parsing of pickle files. 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 current process. Was ZDI-CAN-29513.
This page as .md · .json · in your agent: get_signal("CVE-2026-118623")
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.