В ветке nginx 1.31 вышла версия 1.31.6 с исправлениями для QUIC/HTTP/3 и патчем безопасности в модуле HTTP/3. Если вы используете современные настройки с QUIC, обновление снижает риск падений и неожиданных сбоёв под нагрузкой.
nginx 1.31.6 — очередное обновление основной ветки, в котором разработчики сосредоточились на двух вещах: стабильности вокруг QUIC/HTTP/3 и закрытии уязвимости в соответствующем модуле.
Что произошло и почему это важно
В релиз вошёл патч для уязвимости CVE-2026-90439 в модуле ngx_http_v3_module (это часть, отвечающая за HTTP/3). Проблема описывается как переполнение буфера при манипуляциях с параметрами на этапе согласования TLS‑соединения.
Хорошая новость: по описанию инцидента злоумышленник не получает удобного способа «вписать» свои данные за пределы буфера и управлять ими. Плохая — даже без этого такие ошибки обычно бьют по надёжности: возможны отказ в обслуживании (когда сервис падает/перезапускается) или повреждение данных в процессе работы.
Какие версии затронуты
Под ударом оказались версии nginx 1.29.2–1.31.5. То есть, если вы уже экспериментируете с ветками 1.29+ или используете 1.31.x, обновление — не «когда-нибудь», а задача на ближайшее окно изменений.
Что ещё изменилось в 1.31.6
- Обновили man-страницы — мелочь, но приятно, особенно когда документация читается прямо на сервере.
- Control API: исправили наследование сокета при бинарном обновлении (сценарий, когда nginx обновляют без длительного простоя).
- Geo: добавили проверку CRC32 бинарного файла перед перемещением, чтобы снизить шанс «тихой» порчи данных.
- QUIC-совместимость: исправили поведение, связанное с параметрами транспортного протокола QUIC, полученными в процессе установки TLS‑соединения. Теперь они игнорируются полностью — это снижает вероятность нестабильных и трудно воспроизводимых ошибок.
Кому обновляться прямо сейчас
1) Тем, кто включал HTTP/3/QUIC. Даже если доля клиентов по HTTP/3 пока небольшая, ошибка проявляется на уровне рукопожатия, а значит может «стрелять» в неожиданные моменты — например, когда приходит всплеск мобильного трафика.
2) Тем, кто использует бинарные обновления. Исправление вокруг Control API полезно для команд, которые обновляют nginx «на ходу» и любят минимальные окна простоя.
3) Тем, кто хочет предсказуемости. Обновления в Geo и уточнения по QUIC — это про меньше сюрпризов в эксплуатации, особенно в высоконагруженных конфигурациях.
Практика: как проверить, что вы в зоне риска
- Узнайте текущую версию командой nginx -v.
- Если версия попадает в диапазон 1.29.2–1.31.5, запланируйте обновление до 1.31.6 (или новее).
- Если вы не уверены, используется ли HTTP/3: проверьте конфигурацию на наличие директив/настроек, связанных с QUIC и http3.
Итог: nginx 1.31.6 — это релиз, который имеет смысл ставить не ради «галочки», а ради устойчивости и закрытия конкретной уязвимости в HTTP/3-части. Особенно если вы уже пошли в QUIC и хотите, чтобы сервер переживал нестандартный трафик без внезапных падений.
Источник: Хабр
