CVE Feed
6.5 Medium

MLflow CrewAI autologging records LLM provider API keys in logged trace spans

CVE-2026-116691

Summary mlflow.crewai.autolog() leaks CrewAI LLM provider API keys into MLflow trace telemetry. When a CrewAI Agent is instrumented with MLflow autologging, MLflow serializes the agent's dict and converts its fields to strings. The llm field contains the CrewAI LLM object, whose string representation includes its apikey in plaintext. As a result, an application that calls mlflow.crewai.autolog() can unintentionally send its LLM provider API key to the MLflow trace backend or configured OTLP destination. The application does not need to explicitly log the credential or place it in a span attribute. The credential is extracted automatically by MLflow's instrumentation. This was verified on MLflow 3.16.0 with CrewAI 1.15.18 using MLflow's own OTLP exporter. The fake credential appeared in 5 attribute locations across 2 spans. Details The primary issue is in: mlflow/crewai/autolog.py::getagentattributes() The function walks the CrewAI Agent.dict and converts agent fields to strings. tools and embedder receive special handling, but credential-bearing objects such as the following are not sanitized: llm functioncallingllm agentexecutor crew For example, agent.llm is a CrewAI LLM object.…

Part of the AI stack

This affects CrewAI, MLflow, in Agent frameworks, Training & MLOps.

Assessment

CVSS
6.5 (v3.1)
Severity
Medium
EPSS
0.00207% chance of exploitation in the next 30 days
Known exploited
Not listed in CISA KEV
Exploit availability
Nothing found in Exploit-DB, Metasploit, Nuclei or public PoC repositories
Published
27 October 2026
Last updated
27 October 2026
Affected
pip · mlflow
Weakness
CWE-200, CWE-312, CWE-532

CVSS vectorCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N

At the source

References

Query this programmatically

Agents can read this through the MCP endpoint, or over HTTP:

curl https://cve.zerocrew.in/api/cve/CVE-2026-116691