В системе vLLM, популярном механизме для высокопроизводительного вывода и обслуживания больших языковых моделей, обнаружена серьезная уязвимость безопасности. Дефект, зарегистрированный под идентификатором CVE-2025-62164, позволяет злоумышленникам выполнять произвольный код удаленно через специально сформированные вредоносные нагрузки, отправляемые к конечной точке Completions API.
Детали уязвимости
Уязвимость затрагивает vLLM начиная с версии 0.10.2 и возникает из-за неправильной обработки встраиваний запросов, предоставляемых пользователем. Во время обработки этих встраиваний система десериализует тензоры с использованием функции torch.load() из PyTorch без проведения необходимых проверок валидации. Следовательно, эта недоработка создает опасный вектор атаки, который могут использовать злоумышленники.
Коренная причина проблемы заключается в изменении поведения, внесенном в PyTorch 2.8.0, где проверки целостности разреженных тензоров были отключены по умолчанию. Данная конфигурация позволяет атакующим создавать вредоносные тензоры, которые обходят внутренние проверки границ. Когда скомпрометированные тензоры обрабатываются функцией to_dense(), они вызывают запись памяти за пределами допустимой области, повреждая пространство памяти приложения.
Исследователи безопасности из AXION Security Research Team, в частности Омри Файнаро и Бари Леви, обнаружили эту уязвимость в рамках скоординированного раскрытия информации. Их выводы показывают, что любой пользователь с доступом к API может использовать эту слабость для достижения двух значительных последствий: атак типа «отказ в обслуживании», которые приводят к аварийному завершению работы сервера vLLM, и удаленного выполнения кода, что ставит под угрозу всю хостинговую среду.
Уязвимость находится в функции _load_and_validate_embed внутри vllm/entrypoints/renderer.py, где отсутствие валидации позволяет небезопасную десериализацию ненадежного ввода. Функция принимает тензоры в кодировке base64 от пользователей, но не включает менеджер контекста torch sparse.check_sparse_tensor_invariants в PyTorch, который обычно предотвращает подобные атаки.
Система оценки общей уязвимости присваивает этому дефекту оценку 8,8 из 10, классифицируя его как уязвимость высокой серьезности. Проблема охватывает несколько категорий слабостей, включая неправильную проверку ввода, десериализацию ненадежных данных, условия записи «что-куда» и операции записи за пределами границ.
Команда разработчиков vLLM устранила эту проблему безопасности через запрос на включение изменений №27204, который реализует надлежащую проверку тензоров перед десериализацией. Организации, использующие vLLM в качестве сервера или обрабатывающие ненадежные нагрузки, предоставленные моделями, должны немедленно применить доступный патч для защиты своих развертываний от потенциальной эксплуатации.
Эксперты по безопасности подчеркивают, что подобные уязвимости в инфраструктуре искусственного интеллекта становятся все более привлекательными целями для киберпреступников. Поскольку системы больших языковых моделей обрабатывают конфиденциальные данные и интегрируются в бизнес-процессы, обеспечение их безопасности имеет критическое значение. Своевременное обновление программного обеспечения остается наиболее эффективной мерой защиты против известных уязвимостей.
В настоящее время нет свидетельств активной эксплуатации данной уязвимости в дикой природе. Однако учитывая высокий балл CVSS и относительную простоту эксплуатации, специалисты прогнозируют возможные попытки атак в ближайшем будущем. Поэтому администраторам рекомендуется проверить свои системы на наличие уязвимых версий vLLM и принять меры по их обновлению в приоритетном порядке.
Ссылки
- https://www.cve.org/CVERecord?id=CVE-2025-62164
- https://nvd.nist.gov/vuln/detail/CVE-2025-62164
- https://github.com/vllm-project/vllm/security/advisories/GHSA-mrw7-hf4f-83pf
- https://github.com/vllm-project/vllm/pull/27204
- https://github.com/vllm-project/vllm/commit/58fab50d82838d5014f4a14d991fdb9352c9c84b