Read the docs

MLflow CrewAI autologging stores LLM provider API keys in traces

Priority MEDIUM 62CWE-200Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
Low
Impact type
Information disclosure
Confidentiality · integrity · availability
High · None · None
Fix status
Partial Red Hat: 1 without a fix

Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-200.

Summary

MLflow from 2.19.0 before 3.17.0 records CrewAI Agent objects through mlflow.crewai.autolog() without removing credentials nested inside them (CWE-312). The Agent llm field is converted to a string that contains the LLM provider API key, which is then stored in trace spans. An attacker with low privileges who can send traces to the MLflow backend or a configured OTLP destination can make plaintext provider credentials available to trace readers.

Written with Claude Haiku 5.5 from the sources below · 2026-11-03

Description from the CNA

MLflow is an open source AI engineering platform for agents, large language models, and machine learning models. From 2.19.0 until 3.17.0, mlflow.crewai.autolog() records CrewAI Agent objects without consistently sanitizing nested credential-bearing values. mlflow/crewai/autolog.py::_get_agent_attributes() converts the Agent llm field to a string that includes the provider API key, while mlflow/crewai/autolog.py::_construct_full_inputs() expands the Agent object into mlflow.spanInputs. Applications can therefore send plaintext provider credentials to the MLflow trace backend or a configured OTLP destination, where trace readers can obtain them. This issue is fixed in version 3.17.0.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00207 10th percentileScored 2026-11-07
Fix Partial mlflow (mlflow): 3.17.0mlflow (PyPI): 3.17.0Red Hat: 1 without a fix

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
MLflowmlflow2.19.0 to before 3.17.03.17.0Patch availableCNA
—mlflow (PyPI)2.19.0 to before 3.17.03.17.0Patch availableGHSA-j7qq-vr8c-xvw3
  • mlflow VendorMLflow Affected 2.19.0 to before 3.17.0 Fixed in 3.17.0 Patch available CNA
  • mlflow (PyPI) Vendor— Affected 2.19.0 to before 3.17.0 Fixed in 3.17.0 Patch available GHSA-j7qq-vr8c-xvw3

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:lfprojects:mlflow:*:*:*:*:*:*:*:*——MLflow
  • cpe:2.3:a:lfprojects:mlflow:*:*:*:*:*:*:*:* Versions — — ·MLflow

Remediation

Upgrade the mlflow package to 3.17.0, which fixes this issue in both the vendor and PyPI listings. Red Hat rates this Moderate, and Red Hat's plan for Red Hat OpenShift AI (RHOAI) is none available.

Written with Claude Haiku 5.5 from the sources below · 2026-11-03

  • Fix · CNA mlflow (mlflow) Fixed in 3.17.0
  • Fix · GHSA-j7qq-vr8c-xvw3 mlflow (PyPI) Fixed in 3.17.0 Advisory →

Vendor assessments

Red Hat

Red Hat rating: Moderate. Red Hat's page for this CVE →

ProductStatusPlan or fix
Red Hat OpenShift AI (RHOAI)AffectedNo fix yet: Fix deferred

Timeline

  1. 2026-10-27 Threatist record created from CVE-2026-116691
  2. 2026-10-27 Alias added: GHSA-j7qq-vr8c-xvw3
  3. 2026-10-28 Priority changed: MEDIUM → LOW
  4. 2026-11-03 CISA SSVC decision points changed
  5. 2026-11-03 Priority changed: LOW → MEDIUM
  6. 2026-11-03 Affected versions changed · Red Hat
  7. 2026-11-03 CVSS score added · Red Hat

References

  • TI-2026-46366 Server-side request forgery in mlflow KEVCVSS 3.1CRITICAL 9.3
  • TI-2023-03518 Absolute Path Traversal in mlflow/mlflow CVSS 3.1CRITICAL 10.0
  • TI-2023-01113 Path Traversal: '\..\filename' in mlflow/mlflow CVSS 3.1CRITICAL 9.8
  • TI-2025-31759 Redis Lua Use-After-Free may lead to remote code execution CVSS 3.1CRITICAL 10.0
  • TI-2026-81527 Code execution via scorer deserialization in MLflow servers CVSS 3.1CRITICAL 9.8
  • TI-2025-14028 Command Injection in mlflow/mlflow CVSS 3.1CRITICAL 10.0
See all 175 →

Sources