Defensive-проверка vLLM derender endpoints: лимиты nested choices/token_ids, CPU/memory budget и раннее отклонение без загрузки модели.
Когда проверять vLLM derender frontend
Derender endpoints обрабатывали caller-supplied GenerateResponse token_ids без ограничений model context, max tokens, sequence count и response size; исправление опубликовано в 0.26.0. Сначала сопоставляют advisory с реально загруженной версией, package/image/kernel digest и включённым entry point; название продукта или похожий симптом недостаточны. Если provenance не подтверждён, итог остаётся UNKNOWN. Карточка GHSA-8737-qx52-hjff и первичное изменение задают узкую границу, а не сообщают о событии в вашей среде. Для иной ветки, backport или configuration вывод пересчитывают отдельно. Диагностика здесь направлена на предотвращение вреда и не содержит эксплуатационного payload.
Evidence map: limit sheet choices × token_ids per choice × aggregate tokens × request bytes × reject stage
Создайте артефакт «limit sheet choices × token_ids per choice × aggregate tokens × request bytes × reject stage». В него заносят vLLM version, frontend mode, resolved limits, small tokenizer fixture, CPU time, peak RSS, status and decode-call counter. Для каждого значения укажите источник: runtime query, signed artifact hash, deterministic test marker или configuration snapshot. Не смешивайте desired state с effective state и не подменяйте loaded binary записью в lockfile. Сохраняйте только относительные identifiers и счётчики; IP, hostnames, usernames, secrets, реальные документы, содержимое памяти и полные журналы не нужны для решения. Пустое поле обозначайте UNKNOWN, а не PASS.
Лабораторный протокол для vllm-derender-token-id-output-bounds
В CPU-only test client передать одну допустимую маленькую GenerateResponse и mock oversized shape, остановленный validator до detokenization; большие arrays не создаются. До запуска зафиксируйте baseline, SHA-256 fixture, максимум итераций, deadline и способ полного rollback. Положительный control подтверждает, что harness действительно достигает нужной функции; отрицательный обязан остановиться на заявленном validator/authorization/lifecycle boundary. После опыта выполните cleanup и повторно снимите counters. Меняется только один фактор, поэтому наблюдаемый результат можно связать с исправлением. Стенд не использует production credentials, customer data, внешние targets или рабочую нагрузку.
Таблица решения по CVE-2026-71486
PASS фиксируют только когда выполняется условие: Допустимый control декодируется, превышение каждого лимита отклоняется до decode, decode-call counter равен нулю для negative cases, CPU/RSS остаются в бюджете. Действие владельца: Обновить vLLM до 0.26.0; до этого отключить публичный доступ к derender routes или ограничить их доверенным frontend. AFFECTED означает, что реальный runtime входит в опубликованный диапазон и нужный path доступен. UPDATE-REQUIRED используют при отсутствии подтверждённого fix. NOT-REACHABLE относится лишь к проверенной ветке, не ко всему продукту. После обновления повторяют идентичный control и штатный smoke-test; соседние policy, firmware, network или storage параметры одновременно не меняют, иначе доказательство причинности теряется.
Остановка и безопасная передача vLLM derender frontend
Stop-rule: Не конструировать объёмный JSON, не нагружать production tokenizer и завершить при росте памяти, задержке heartbeat либо фактическом decode negative fixture. При первой неожиданной ошибке не расширяйте права, охват, размер входа или длительность. В минимальный пакет сопровождения входят: vLLM/frontend hashes, resolved limits, shape metadata без token content, reject stage, decode counter, CPU/RSS and teardown. Добавьте московский timestamp, expected/actual, ссылки на advisory и primary change, владельца rollback. Удалите токены, адреса, персональные данные и raw payloads. Этот пакет подтверждает только выбранный инвариант: он не доказывает отсутствие прошлой эксплуатации, применимость к другой сборке, популярность проблемы, индексацию или будущие позиции страницы.
Материал подготовлен редакцией VOne с помощью автоматизированного черновика. Факты и границы вывода сверены 5 сентября 2026 года по прямой advisory и первичному upstream изменению. Текст написан самостоятельно; опасные действия и реальные пользовательские данные не использовались.
Источники и проверка
- GitHub Advisory GHSA-8737-qx52-hjff проверено 2026-09-05
- Primary fix for vLLM derender frontend проверено 2026-09-05
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.