CVE-2026-61539 PUBLISHED

Xinference: Remote code execution via unsafe `eval()` in Llama3 tool-call parsing

Assigner: GitHub_M
Reserved: 10.07.2026 Published: 21.08.2026 Updated: 21.08.2026

Xinference is an inference API for running open-source, speech, and multimodal models. In 2.5.0 and earlier, Xinference passes attacker-influenced Llama3 tool-call output to eval() in xinference/model/llm/tool_parsers/llama3_tool_parser.py and xinference/model/llm/utils.py. Requests to /v1/chat/completions with a tools field flow through xinference/api/restful_api.py, xinference/model/llm/transformers/core.py, handle_chat_result_non_streaming(), and _post_process_completion() before extract_tool_calls() or _eval_llama3_chat_arguments() evaluates the model-generated Python expression. An unauthenticated remote attacker can influence that output through a crafted prompt and execute commands in the Xinference server process context. This issue is fixed in version 2.7.0.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
CVSS Score: 10

Product Status

Vendor xorbitsai
Product inference
Versions
  • Version < 2.7.0 is affected

References

Problem Types

  • CWE-95: Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection') CWE