LINUX.ORG.RU

В nginx исправлены три бага, приводящих к излишнему потреблению памяти

 


1

3

В веб-сервере nginx выявлено три проблемы (CVE-2019-9511, CVE-2019-9513, CVE-2019-9516), приводившие к излишнему потреблению памяти при использовании модуля ngx_http_v2_module и реализовываемого им протокола HTTP/2. Проблеме подвержены версии с 1.9.5 по 1.17.2. Исправления внесены в nginx 1.16.1 (стабильная ветка) и 1.17.3 (основная ветка). Проблемы были обнаружены Jonathan Looney из Netflix.

В релиз 1.17.3 вошли ещё два исправления:

  • Исправление: при использовании сжатия в логах могли появляться сообщения «zero size buf»; ошибка появилась в 1.17.2.
  • Исправление: при использовании директивы resolver в SMTP прокси-сервере в рабочем процессе мог произойти segmentation fault.

>>> Подробности

★★★★★

Проверено: jollheef ()

... приводившие к излишнему потреблению памяти при использовании модуля ngx_http_v2_module и реализовываемого из протокола HTTP/2.

 — Кто на ком стоял? — крикнул Филипп Филиппович, — потрудитесь излагать ваши мысли яснее. (М.А.Булгаков)

anonymous ()

Более медленного и дырявого проки придумать сложно. Поцаны решили, что могут в лов-левел, но забыли, что это про постоянную и объёмную поддержку. Остаётся только наблюдать как ОТ постепенно скатывается, просто не успевая за прогрессом. Туда и дорога.

anonymous ()
Ответ на: комментарий от anonymous

контейнеры на проде? гнать таких клёвых парней ссаными тряпками надо.

а даже если и используются контейнеры, ты контейнер голой жопой наружу выставишь? статику тоже будет контейнер отдавать? а если нужно несколько приложений в рамках одного сайта запустить, роутинг тоже контейнер будет делать? я уж не говорю про шардинг и балансировку нагрузки

eternal_sorrow ★★★★★ ()
Последнее исправление: eternal_sorrow (всего исправлений: 1)
Ответ на: комментарий от eternal_sorrow

Какие-то придуманные проблемы, специально, чтобы использовать nginx. Да он нафиг не упал в 100% случаев. В оставшихся нулях, обойтись можно и без него.

anonymous ()
Ответ на: комментарий от anonymous

нет не так. контейнеры нафиг не упали в 100% случаев (если речь не идёт о разработке приложения, там они могут быть полезны).

давай свои надуманные проблемы чтобы использовать контейнеры

eternal_sorrow ★★★★★ ()
Ответ на: комментарий от anonymous

в 2019 все клевые парни используют контейнеры и тамошние правила маппинга портов. Реверс прокси нинужен.

Кто-то похоже не знает для чего нужны реверс прокси :) Ну или как работает маппинг портов.

nikita-b ()
Ответ на: комментарий от eternal_sorrow

статику тоже будет контейнер отдавать? а если нужно несколько приложений в рамках одного сайта запустить, роутинг тоже контейнер будет делать? я уж не говорю про шардинг и балансировку нагрузки

Таки да он все это будет делать и умеет делать:

https://kubernetes.io/docs/concepts/services-networking/service/

Ваш нужник - это каменный век, артефакт времен начала web 2.0. Сейчас всё на контейнерах и микросервисах, так-то.

anonymous ()
Ответ на: комментарий от anonymous

Какие-то придуманные проблемы, специально, чтобы использовать nginx. Да он нафиг не упал в 100% случаев. В оставшихся нулях, обойтись можно и без него.

терминация тлс?

stave ★★★★★ ()
Ответ на: комментарий от eternal_sorrow

контейнеры на проде? гнать таких клёвых парней ссаными тряпками надо.

ты это серьезно в 2019 году заявляешь? контейнеры уже везде, в любом современном проде. и не знать как с ними жить, значить терять квалификацию

autonomous ★★★★ ()
Ответ на: комментарий от anonymous

в 2019 все клевые парни используют контейнеры и тамошние правила маппинга портов. Реверс прокси нинужен.

между контейнерами nginx может и не нужен в ряде случаев, но в интернет их выкладывать без веб-сервера ты каким образом собрался? лучше погляди что-то такое ingress в кубернетесе и на чем основана стандартная его реализация.

autonomous ★★★★ ()
Ответ на: комментарий от anonymous

Игрнорировать контейнеры себе позволить могут только фронтенд-яваскриптеры в наше время.

могут в принципе, но для них это как раз одно из лучших решений, со всеми этими версиями и видами библиотек и фреймворков.

autonomous ★★★★ ()

Вот и всё, что нужно знать о С и современном программировании. Детские проблемы во взрослых продуктах и это только те, которые выявили. В каком угаре нужно быть, чтобы в 21 веке начинать писать свои поделки на С/С++?? Вот с перфокарт вы быстро слезли, но вот эти динозавры... задолбали их трогать - просто дайте им умереть в недрах юниксов.

matumba ★★★★★ ()
Ответ на: комментарий от matumba

Как обсер сырого плагина, написаного обезьянами, можно ставить как аргумент в пику производительности, надёжности и долговременной предсказуемости? Более чем вероятно будь проект не на си, его никто не использовал бы сегодня.

anonymous ()
Ответ на: комментарий от anonymous

Так, что HTTP/2 уже давно не черновик, а стандарт. И ПО написанное на Си просто либо достаточно маленькое и фундаментальное, либо со временем просто перестаёт успевать за ходом событий.

На Си можно только программы на века писать. Но мир изменчив и внедрение новых технологий и подходов становится всё важнее. Это не первый случай, когда Nginx не успевает. И, полагаю, дальше будет только хуже. Это просто закономерно.

anonymous ()
Ответ на: комментарий от johnnyslow

Проблемы были обнаружены Jonathan Looney из Netflix.

Хоть какая-то польза для этого мира от Netflix.

Вообще-то Джонатан — довольно плодовитый коммитер FreeBSD, и сфера его интересов несколько шире, чем поиск багов в nginx'е. :-)

danfe ()