vLLM: подделка SHM-дескриптора приводит к выполнению кода через pickle.loads() — CVE-2026-115912
В vLLM до версии 0.32.0 аутентифицированный пользователь может подделать значения адреса разделяемой памяти и monotonic_id в публичных мультимодальных данных, что в scale-out-развёртываниях с кэшированием через SHM приводит к передаче произвольных байтов в worker-side pickle.loads() и выполнению Python-кода. Уязвимость высокой критичности (CVSS 7.5) затрагивает vllm-project vllm.
Подробности
Уязвимый продукт — vllm-project vllm, все версии до 0.32.0. Атакующий с действующими учётными данными может поместить поддельные значения адреса разделяемой памяти (shared-memory address) и monotonic_id в публичное поле мультимодальных признаков features.kwargs_data. В развёртываниях с включённым кэшированием мультимодальных данных через SHM worker-процессы доверяют этим значениям и передают выбранные атакующим байты в pickle.loads(). Ключевая опасность в том, что эксплуатация возможна даже при отключённой небезопасной сериализации: проверка подлинности дескриптора SHM фактически обходится подделкой, а десериализация всё равно происходит. Уязвимость оценена в CVSS 7.5 (HIGH) и относится к классу небезопасной десериализации, ведущей к удалённому выполнению кода в границах worker-процесса.Что делать
Основная рекомендация — обновить vLLM до версии 0.32.0 или новее, где проблема устранена. Если немедленное обновление невозможно, следует временно отключить кэширование мультимодальных данных через разделяемую память в scale-out-конфигурациях и максимально ограничить круг лиц, имеющих аутентифицированный доступ к API. Также рекомендуется усилить мониторинг обращений к мультимодальным эндпоинтам и проверить журналы на предмет подозрительных значений в features.kwargs_data. Отключение небезопасной сериализации само по себе не является достаточной митигацией, поскольку уязвимость обходит эту защиту. Итог: CVE-2026-115912 — серьёзная угроза для распределённых инсталляций vLLM с SHM-кэшированием мультимодальных данных. Единственное надёжное решение — переход на версию 0.32.0; до этого стоит расценивать любой аутентифицированный доступ к сервису как потенциальный вектор компрометации worker-узлов.Источник: CVE Project (cvelistV5)
