CVE-2026-34756
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 33 - wyżej niż 33% wszystkich znanych CVE
Streszczenie
Podatność DoS w vLLM od wersji 0.1.0 do 0.19.0 pozwala nieuwierzytelnionemu atakującemu na zablokowanie pętli zdarzeń asyncio i wywołanie awarii Out-Of-Memory poprzez wysłanie pojedynczego żądania HTTP z bardzo dużą wartością parametru n w modelach ChatCompletionRequest i CompletionRequest.
Ocena ryzyka
Atak może całkowicie unieruchomić serwer API vLLM, powodując odmowę usługi dla wszystkich użytkowników i potencjalne straty finansowe związane z przestojem.
Rekomendacja
Należy natychmiast zaktualizować vLLM do wersji 0.19.0 lub nowszej, która zawiera poprawkę ograniczającą górną wartość parametru n.
Inne podatności w vLLM
Zobacz wszystkie- CVE-2026-69147Średnie
W vLLM przed wersją 0.28.0 treści żądań dla Chat Completions i Responses mogą ustawić media_io_kwargs.video.video_backend na pynvvideocodec, a MediaConnector.fetch_video przekazuje ten wybór do VideoMediaIO, nawet gdy konfiguracja startowa wybrała dekoder programowy. Logika _reserve_mm_ipc_gpu_memory budżetuje pamięć dekodera tylko na podstawie statycznej konfiguracji, więc backend VIDEO_LOADER_REGISTRY wybrany przez żądanie może utworzyć kontekst CUDA, powierzchnie dekodera i alokacje ramek, które nie zostały usunięte z budżetu KV-cache.
- CVE-2026-48746Krytyczne
Podatność w vLLM w wersjach od 0.3.0 do 0.22.0 pozwala na obejście uwierzytelniania API OpenAI AuthenticationMiddleware. Atakujący może korzystać z API bez podania skonfigurowanego klucza VLLM_API_KEY lub --api-key.
- CVE-2026-22778Krytyczne
Podatność w vLLM od wersji 0.8.3 do 0.14.0 pozwala na wyciek adresu sterty poprzez wysłanie nieprawidłowego obrazu do endpointu multimodalnego. Wyciek ten redukuje skuteczność ASLR z 4 miliardów do około 8 prób, co ułatwia przeprowadzenie ataku.
- CVE-2026-94626Wysokie
vLLM do wersji 0.29.0 nie waliduje parametru tp_size w kv_transfer_params na endpointach ukończeń zgodnych z OpenAI, co pozwala atakującym na alokację nieograniczonej pamięci. Atakujący mogą podawać dowolne wartości tp_size we wdrożeniach z rozdzieleniem prefill/decode, aby wyczerpać pamięć i wywołać zabicie procesu workera decode przez OOM-killer jądra.
- CVE-2026-94625Średnie
vLLM do wersji 0.29.0 zawiera podatność na wyczerpanie zasobów w MooncakeConnector, gdzie odrzucone żądania prefill tworzą placeholdery transferu bez właściciela, które nigdy nie są odzyskiwane. Atakujący mogą wysyłać odrzucone żądania, aby wyczerpać pule zadań sendera, powodując opóźnienia ważnych żądań nawet o 480 sekund, podczas gdy kontrole zdrowotności nadal zwracają sukces.
- CVE-2026-94624Wysokie
vLLM do wersji 0.29.0 zawiera podatność na odmowę usługi w P2P KV offloading, gdy OffloadingConnector jest skonfigurowany z TieringOffloadingSpec i drugorzędnym poziomem peer-to-peer. Atakujący mogą podawać dowolne wartości zdalnego hosta i portu w kv_transfer_params, tworząc nieosiągalne sesje peer, które utrzymują gniazda ZeroMQ do wyczerpania limitu kontekstu, powodując nieprzechwycony ZMQError, który zawiesza EngineCore i zatrzymuje całe wnioskowanie.
- CVE-2026-94623Wysokie
vLLM do wersji 0.29.0 zawiera podatność na odmowę usługi w implementacji prefiksowego buforowania w łączniku NIXL, która nieprawidłowo waliduje liczbę bloków w żądaniach z wieloma promptami w środowiskach z rozdzielonym prefill/decode. Atakujący może wywołać błąd asercji w NixlBaseConnectorWorker._apply_prefix_caching, wysyłając żądania z wieloma promptami o różnej długości, co powoduje zatrzymanie workera dekodującego i jego niedostępność do czasu restartu.
- CVE-2026-94622Wysokie
vLLM do wersji 0.29.0 zawiera podatność na odmowę usługi w obsłudze metadanych łącznika NIXL w środowiskach z rozdzielonym prefill/decode. Atakujący może wysyłać żądania z niekompletnymi wpisami w słowniku kv_transfer_params, aby wywołać nieobsłużony wyjątek KeyError w harmonogramie EngineCore, co powoduje zatrzymanie silnika dekodującego i awarię wszystkich routowanych żądań do czasu ręcznego restartu.
- CVE-2026-93989Niskie
vLLM do wersji 0.29.0 nieprawidłowo waliduje indeksy tokenów bad_words względem szerokości wyjścia generacji modelu w funkcji SamplingParams.update_from_tokenizer(). Atakujący może dostarczyć indeksy tokenów poza zakresem, które uszkadzają pamięć logits równoległych żądań.
- CVE-2026-93841Niskie
vLLM do wersji 0.29.0 zawiera podatność na uszkodzenie pamięci w jądrze Triton _bincount_kernel, gdzie identyfikatory tokenów promptu indeksują zestaw bitów obecności tokenów bez sprawdzania granic względem rozmiaru słownika. Atakujący może wysłać multimodalne żądania audio z tokenami równymi rozmiarowi słownika, co powoduje zapisy poza zakresem, które uszkadzają stan próbkowania współbieżnych żądań i zmieniają zachowanie kary za powtórzenia.
Oryginalny opis (angielski, źródło NVD)
vLLM is an inference and serving engine for large language models (LLMs). From 0.1.0 to before 0.19.0, a Denial of Service vulnerability exists in the vLLM OpenAI-compatible API server. Due to the lack of an upper bound validation on the n parameter in the ChatCompletionRequest and CompletionRequest Pydantic models, an unauthenticated attacker can send a single HTTP request with an astronomically large n value. This completely blocks the Python asyncio event loop and causes immediate Out-Of-Memory crashes by allocating millions of request object copies in the heap before the request even reaches the scheduling queue. This vulnerability is fixed in 0.19.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

