CVE-2026-109227
WysokieCVSS 7.5Streszczenie
SGLang do wersji 0.5.21 zawiera podatność nieograniczonej alokacji pamięci w funkcji preprocess_video w pliku qwen_vl.py, która dekoduje klatki w pełnej rozdzielczości źródłowej przed zastosowaniem limitu max_pixels. Zdalni atakujący mogą przesyłać wysokorozdzielcze wideo do /v1/chat/completions w instalacjach Qwen-VL, a równoczesne żądania wyczerpują pamięć procesu roboczego powodując odmowę usługi.
Ocena ryzyka
Atakujący może doprowadzić do wyczerpania pamięci i zatrzymania usługi Qwen-VL, co uniemożliwi korzystanie z API innym użytkownikom. W środowiskach produkcyjnych oznacza to przerwy w działaniu usługi i potencjalne koszty operacyjne.
Rekomendacja
Zaktualizuj SGLang do wersji nowszej niż 0.5.21, jeśli jest dostępna, lub zastosuj ograniczenia rozmiaru i rozdzielczości przesyłanych wideo na poziomie reverse proxy. Rozważ ograniczenie liczby równoczesnych żądań do endpointu /v1/chat/completions.
Inne podatności w SGLang
Zobacz wszystkie- CVE-2026-109228Wysokie
SGLang do wersji 0.5.21 zawiera podatność polegającą na obejściu limitu zasobów w przetwarzaniu wideo GLM-V. Zdalni atakujący mogą nadpisać limity fps, max_frames, max_tokens_per_frame i max_image_tokens w obiekcie video_url, ustawiając je na bardzo wysokie wartości. Powoduje to dekodowanie każdej klatki wysokorozdzielczego wideo w pełnym rozmiarze, co wyczerpuje pamięć roboczą i prowadzi do odmowy usługi.
- CVE-2026-102634Wysokie
SGLang do wersji 0.5.20 w trybie prefill/decode disaggregation nie waliduje zduplikowanych pól bootstrap_room w żądaniach /generate z backendem transferu Mooncake KV. Nieuwierzytelnieni atakujący mogą wysyłać równoczesne żądania z identycznymi wartościami bootstrap_room, co może spowodować awarię procesów schedulera lub zawieszenie żądań innych użytkowników do czasu timeoutu transferu.
- CVE-2026-93034Krytyczne
SGLang zawiera podatność umożliwiającą zdalne wykonanie kodu, spowodowaną bezwarunkową deserializacją ładunków PickleWrapper przez dekoder wiadomości ZMQ za pomocą pickle.loads() w funkcji _maybe_unwrap_pickle, bez listy dozwolonych typów ani uwierzytelniania. Podatność utrzymuje się również na ścieżce msgpack nawet przy wyłączonym SGLANG_USE_PICKLE_IPC i staje się zdalnie wykorzystywalna, gdy włączona jest uwaga równoległa danych z ustawieniem --dist-init-addr innym niż loopback.
- CVE-2026-93088Krytyczne
Środowisko uruchomieniowe generowania multimodalnego SGLang jest podatne na nieuwierzytelnione wykonanie dowolnego kodu, ponieważ orchestrator disaggregated-diffusion wiąże nieuwierzytelniony gniazdo ZeroMQ ROUTER z interfejsem sieciowym i przekazuje ostatnią ramkę odebranych wiadomości wieloczęściowych bezpośrednio do pickle.loads() przed jakąkolwiek walidacją.
- CVE-2026-86793Krytyczne
SGLang pozwala na nieuwierzytelnioną deserializację pickle poprzez /update_weights_from_tensor, gdy nie skonfigurowano kluczy uwierzytelniających, a politykę SafeUnpickler można obejść, ponieważ builtins.import i builtins.getattr są rozwiązywalne, co umożliwia wykonanie kodu poprzez pickle REDUCE.
- CVE-2026-15976Krytyczne
SGLang zawiera podatność zdalnego wykonania kodu (RCE) podczas próby załadowania wag modelu z repozytorium HuggingFace. W punkcie końcowym /update_weights_from_disk funkcja torch.load z parametrem weights_only=False umożliwia deserializację pickle plików .bin.
- CVE-2026-15971Krytyczne
SGLang zawiera podatność zdalnego wykonania kodu (RCE) w opcjonalnym podsystemie dumper. Gdy zmienna DUMPER_SERVER_PORT jest ustawiona, możliwa jest ucieczka z piaskownicy, co umożliwia wykonanie kodu na żądaniach inferencyjnych.
- CVE-2026-15969Krytyczne
SGLang zawiera podatność zdalnego wykonania kodu (RCE) bez uwierzytelniania w punkcie końcowym /load_lora_adapter_from_tensors. Podatność wynika z obejścia niekompletnej listy blokad SafeUnpicklera, co umożliwia wykonanie dowolnych poleceń poprzez spreparowane ładunki pickle zakodowane w base64.
- CVE-2026-14890Krytyczne
Podatność w SGLang dotyczy podsystemu kopii zapasowej ekspertów równoległych, który udostępnia gniazdo ZeroMQ PULL na routowalnym interfejsie sieciowym bez uwierzytelniania ani zabezpieczeń deserializacji. Umożliwia to atakującemu dostarczenie złośliwego pliku pickle, prowadząc do nieuwierzytelnionego zdalnego wykonania kodu, gdy funkcja jest włączona, a usługa jest osiągalna przez sieć.
- CVE-2026-109229Wysokie
SGLang do wersji 0.5.21 zawiera podatność na atak DoS, która wyłącza ochronę przed bombą dekompresyjną Pillow, ustawiając Image.MAX_IMAGE_PIXELS na None w NanoNemotronVLImageProcessor. Zdalni atakujący mogą przesyłać małe, silnie skompresowane obrazy o ogromnych wymiarach, powodując wyczerpanie pamięci podczas dekodowania.
Oryginalny opis (angielski, źródło NVD)
SGLang through 0.5.21 contains an unbounded memory allocation vulnerability in preprocess_video in qwen_vl.py that decodes frames at full source resolution before applying max_pixels limits. Remote attackers can submit high-resolution videos to /v1/chat/completions on Qwen-VL deployments, and concurrent requests exhaust worker memory causing denial of service.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

