---
id: "CVE-2026-114053"
kind: "vulnerability"
aliases: ["CVE-2026-114053"]
title: "vLLM: request field lets a repo revision run arbitrary Python on the server"
severity: "critical"
cvss: 9.2
epss: 0.00462
exploited: false
status: "open"
category: "ai-tooling"
products: []
ecosystems: []
tags: ["ai-tooling", "llm-serving", "python", "self-hosted", "vllm"]
not_affected_if: ["managed-hosting", "trust_remote_code-disabled", "vllm-0.31.0-or-later"]
published_at: "2026-10-21T01:17:28+00:00"
first_seen_at: "2026-10-23T21:57:27+00:00"
updated_at: "2026-10-24T13:15:55+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-114053", "first_seen_at": "2026-10-23T21:57:27+00:00"}, {"source": "epss", "url": "https://api.first.org/data/v1/epss?cve=CVE-2026-114053", "first_seen_at": "2026-10-24T13:15:55+00:00"}]
---

# vLLM: request field lets a repo revision run arbitrary Python on the server

vLLM before 0.31.0 passes a client-supplied code revision to Transformers when trust_remote_code is enabled, so a model repository revision chosen by the request can have its processor code imported. An attacker who controls such a revision can send a multimodal request to the unauthenticated /tokenize endpoint and execute arbitrary Python in the vLLM API process.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

Check the installed vLLM version with pip show vllm; versions from 0.7.3 up to but not including 0.31.0 are affected.
Check whether trust_remote_code is enabled in the vLLM server launch arguments or config.

## Fix

Upgrade vLLM to 0.31.0 or later.
Until upgraded, disable trust_remote_code and serve only models whose repositories you control.

## Timeline

- 2026-10-23T21:57:27+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-114053
- 2026-10-24T13:15:55+00:00 epss https://api.first.org/data/v1/epss?cve=CVE-2026-114053

## From the sources

vLLM from 0.7.3 before 0.31.0 forwards the request-supplied mm_processor_kwargs.code_revision to Transformers AutoProcessor.from_pretrained, letting clients select which revision of a model's dynamic processor code is imported when trust_remote_code is enabled. An attacker controlling a revision in the served model repository can send a multimodal request to the unauthenticated /tokenize endpoint to execute arbitrary Python in the vLLM API process.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
