CVE-2026-100651: vllm before 0.29.0 Denial of Service via Decoder Prompt Length Bypass

Published Sep 26, 2026
·
Updated

vLLM before 0.29.0 fails to enforce decoder prompt-length validation on the disaggregated serving endpoint /inference/v1/generate. When the request contains a 'features' (multimodal) payload, vllm/entrypoints/serve/disagg/serving.py builds a multimodal EngineInput directly from the caller-supplied tokenids, and GenerateRequest.tokenids (vllm/entrypoints/serve/disagg/protocol.py) is not checked against modelconfig.maxmodellen. For multimodal processors that report skippromptlengthcheck=True (for example Nemotron Parse, Whisper, and FireRedLID), InputProcessor.validatepromptlen() returns immediately for both encoder and decoder prompts, so an overlong prompt becomes an EngineCoreRequest and reaches the worker input-batch copy into a fixed maxmodellen-wide NumPy row. A client able to reach the endpoint on an affected model configuration can therefore submit an overlong tokenids list to trigger a worker failure and denial of service. Fixed in 0.29.0.

Affected Software

1 affected component
vllm vllm<0.29.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade vLLM to a version that resolves this vulnerability.

    Fixed in 0.29.0

Event History

Sep 26, 2026
CVE Published
via MITRE·01:23 PM
Data Sourced
via MITRE·01:23 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·02:16 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Which deployments are exposed to this denial of service?

Affected deployments are vLLM versions before 0.29.0 that expose the disaggregated serving endpoint /inference/v1/generate and use a multimodal processor reporting skip_prompt_length_check=True. Examples named in the advisory are Nemotron Parse, Whisper, and FireRedLID.

2

What access does an attacker need?

An attacker needs the ability to send requests to /inference/v1/generate on an affected model configuration. They can trigger the issue by supplying a features multimodal payload and an overlong token_ids list; no user interaction is required.

3

How can I determine whether a deployment is affected?

Check whether the deployed vLLM version is earlier than 0.29.0, whether the disaggregated generate endpoint is reachable by untrusted or low-privileged clients, and whether the configured multimodal processor skips prompt-length checks. Affected requests can cause a worker failure when oversized token_ids reach copying into a fixed max_model_len-wide input row.

4

What should be done if patching cannot happen immediately?

Restrict access to /inference/v1/generate to trusted clients and prevent callers from submitting oversized token_ids, particularly in requests containing a features payload. Upgrading to vLLM 0.29.0 fixes the issue.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203