From mdounin at mdounin.ru Thu Jan 10 13:37:27 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Thu, 10 Jan 2013 17:37:27 +0400 Subject: [nginx-ru-announce] nginx-1.3.11 Message-ID: <20130110133727.GM80623@mdounin.ru> Изменения в nginx 1.3.11 10.01.2013 *) Исправление: при записи в лог мог происходить segmentation fault; ошибка появилась в 1.3.10. *) Исправление: директива proxy_pass не работала с IP-адресами без явного указания порта; ошибка появилась в 1.3.10. *) Исправление: на старте или во время переконфигурации происходил segmentation fault, если директива keepalive была указана несколько раз в одном блоке upstream. *) Исправление: параметр default директивы geo не определял значение по умолчанию для IPv6-адресов. -- Maxim Dounin http://nginx.com/support.html From mdounin at mdounin.ru Tue Feb 5 14:22:56 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 5 Feb 2013 18:22:56 +0400 Subject: [nginx-ru-announce] nginx-1.3.12 Message-ID: <20130205142256.GB40753@mdounin.ru> Изменения в nginx 1.3.12 05.02.2013 *) Добавление: директивы proxy_bind, fastcgi_bind, memcached_bind, scgi_bind и uwsgi_bind поддерживают переменные. *) Добавление: переменные $pipe, $request_length, $time_iso8601 и $time_local теперь можно использовать не только в директиве log_format. Спасибо Kiril Kalchev. *) Добавление: поддержка IPv6 в модуле ngx_http_geoip_module. Спасибо Gregor Kali?nik. *) Исправление: директива proxy_method работала неверно, если была указана на уровне http. *) Исправление: в рабочем процессе мог произойти segmentation fault, если использовался resolver и метод poll. *) Исправление: nginx мог нагружать процессор во время SSL handshake с бэкендом при использовании методов обработки соединений select, poll и /dev/poll. *) Исправление: ошибка "[crit] SSL_write() failed (SSL:)". *) Исправление: в диркетиве client_body_in_file_only; ошибка появилась в 1.3.9. *) Исправление: в директиве fastcgi_keep_conn. -- Maxim Dounin http://nginx.com/support.html From mdounin at mdounin.ru Tue Feb 12 13:57:48 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 12 Feb 2013 17:57:48 +0400 Subject: [nginx-ru-announce] nginx-1.2.7 Message-ID: <20130212135748.GJ20890@mdounin.ru> Изменения в nginx 1.2.7 12.02.2013 *) Изменение: теперь при использовании директивы include с маской на Unix-системах включаемые файлы сортируются в алфавитном порядке. *) Изменение: директива add_header добавляет строки в ответы с кодом 201. *) Добавление: директива geo теперь поддерживает IPv6 адреса в формате CIDR. *) Добавление: параметры flush и gzip в директиве access_log. *) Добавление: директива auth_basic поддерживает переменные. *) Добавление: переменные $pipe, $request_length, $time_iso8601 и $time_local теперь можно использовать не только в директиве log_format. Спасибо Kiril Kalchev. *) Добавление: поддержка IPv6 в модуле ngx_http_geoip_module. Спасибо Gregor Kali?nik. *) Исправление: nginx в некоторых случаях не собирался с модулем ngx_http_perl_module. *) Исправление: в рабочем процессе мог произойти segmentation fault, если использовался модуль ngx_http_xslt_module. *) Исправление: nginx мог не собираться на MacOSX. Спасибо Piotr Sikora. *) Исправление: при использовании директивы limit_rate с большими значениями скорости на 32-битных системах ответ мог возвращаться не целиком. Спасибо Алексею Антропову. *) Исправление: в рабочем процессе мог произойти segmentation fault, если использовалась директива if. Спасибо Piotr Sikora. *) Исправление: ответ "100 Continue" выдавался вместе с ответом "413 Request Entity Too Large". *) Исправление: директивы image_filter, image_filter_jpeg_quality и image_filter_sharpen могли наследоваться некорректно. Спасибо Ивану Боброву. *) Исправление: при использовании директивы auth_basic под Linux могли возникать ошибки "crypt_r() failed". *) Исправление: в обработке backup-серверов. Спасибо Thomas Chen. *) Исправление: при проксировании HEAD-запросов мог возвращаться некорректный ответ, если использовалась директива gzip. *) Исправление: на старте или во время переконфигурации происходил segmentation fault, если директива keepalive была указана несколько раз в одном блоке upstream. *) Исправление: директива proxy_method работала неверно, если была указана на уровне http. *) Исправление: в рабочем процессе мог произойти segmentation fault, если использовался resolver и метод poll. *) Исправление: nginx мог нагружать процессор во время SSL handshake с бэкендом при использовании методов обработки соединений select, poll и /dev/poll. *) Исправление: ошибка "[crit] SSL_write() failed (SSL:)". *) Исправление: в директиве fastcgi_keep_conn. -- Maxim Dounin http://nginx.com/support.html From mdounin at mdounin.ru Tue Feb 19 15:29:26 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 19 Feb 2013 19:29:26 +0400 Subject: [nginx-ru-announce] nginx-1.3.13 Message-ID: <20130219152926.GR81985@mdounin.ru> Изменения в nginx 1.3.13 19.02.2013 *) Изменение: теперь для сборки по умолчанию используется компилятор с именем "cc". *) Добавление: поддержка проксирования WebSocket-соединений. Спасибо Apcera и CloudBees за спонсирование разработки. *) Добавление: директива auth_basic_user_file поддерживает шифрование паролей методом "{SHA}". Спасибо Louis Opter. -- Maxim Dounin http://nginx.com/support.html From mdounin at mdounin.ru Tue Mar 5 14:56:22 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 5 Mar 2013 18:56:22 +0400 Subject: [nginx-ru-announce] nginx-1.3.14 Message-ID: <20130305145622.GE15378@mdounin.ru> Изменения в nginx 1.3.14 05.03.2013 *) Добавление: переменные $connections_active, $connections_reading и $connections_writing в модуле ngx_http_stub_status_module. *) Добавление: поддержка WebSocket-соединений в модулях ngx_http_uwsgi_module и ngx_http_scgi_module. *) Исправление: в обработке виртуальных серверов при использовании SNI. *) Исправление: при использовании директивы "ssl_session_cache shared" новые сессии могли не сохраняться, если заканчивалось место в разделяемой памяти. Спасибо Piotr Sikora. *) Исправление: несколько заголовков X-Forwarded-For обрабатывались неправильно. Спасибо Neal Poole за спонсирование разработки. *) Исправление: в модуле ngx_http_mp4_module. Спасибо Gernot Vormayr. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Mar 26 13:30:14 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 26 Mar 2013 17:30:14 +0400 Subject: [nginx-ru-announce] nginx-1.3.15 Message-ID: <20130326133014.GR62550@mdounin.ru> Изменения в nginx 1.3.15 26.03.2013 *) Изменение: открытие и закрытие соединения без отправки в нём каких-либо данных больше не записывается в access_log с кодом ошибки 400. *) Добавление: модуль ngx_http_spdy_module. Спасибо Automattic за спонсирование разработки. *) Добавление: директивы limit_req_status и limit_conn_status. Спасибо Nick Marden. *) Добавление: директива image_filter_interlace. Спасибо Ивану Боброву. *) Добавление: переменная $connections_waiting в модуле ngx_http_stub_status_module. *) Добавление: теперь почтовый прокси-сервер поддерживает IPv6-бэкенды. *) Исправление: при повторной отправке запроса на бэкенд тело запроса могло передаваться неправильно; ошибка появилась в 1.3.9. Спасибо Piotr Sikora. *) Исправление: в директиве client_body_in_file_only; ошибка появилась в 1.3.9. *) Исправление: ответы могли зависать, если использовались подзапросы и при обработке подзапроса происходила DNS-ошибка. Спасибо Lanshun Zhou. *) Исправление: в процедуре учёта использования бэкендов. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Apr 2 12:54:26 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 2 Apr 2013 16:54:26 +0400 Subject: [nginx-ru-announce] nginx-1.2.8 Message-ID: <20130402125426.GQ62550@mdounin.ru> Изменения в nginx 1.2.8 02.04.2013 *) Исправление: при использовании директивы "ssl_session_cache shared" новые сессии могли не сохраняться, если заканчивалось место в разделяемой памяти. Спасибо Piotr Sikora. *) Исправление: ответы могли зависать, если использовались подзапросы и при обработке подзапроса происходила DNS-ошибка. Спасибо Lanshun Zhou. *) Исправление: в модуле ngx_http_mp4_module. Спасибо Gernot Vormayr. *) Исправление: в процедуре учёта использования бэкендов. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Apr 16 14:21:35 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 16 Apr 2013 18:21:35 +0400 Subject: [nginx-ru-announce] nginx-1.3.16 Message-ID: <20130416142135.GB92338@mdounin.ru> Изменения в nginx 1.3.16 16.04.2013 *) Исправление: в рабочем процессе мог произойти segmentation fault, если использовались подзапросы; ошибка появилась в 1.3.9. *) Исправление: директива tcp_nodelay вызывала ошибку при проксировании WebSocket-соединений в unix domain сокет. *) Исправление: переменная $upstream_response_length возвращала значение "0", если не использовалась буферизация. Спасибо Piotr Sikora. *) Исправление: в методах обработки соединений eventport и /dev/poll. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Wed Apr 24 14:20:02 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Wed, 24 Apr 2013 18:20:02 +0400 Subject: [nginx-ru-announce] nginx-1.4.0 Message-ID: <20130424142002.GM10443@mdounin.ru> Изменения в nginx 1.4.0 24.04.2013 *) Исправление: nginx не собирался с модулем ngx_http_perl_module, если использовался параметр --with-openssl; ошибка появилась в 1.3.16. *) Исправление: в работе с телом запроса из модуля ngx_http_perl_module; ошибка появилась в 1.3.9. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue May 7 11:29:37 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 7 May 2013 15:29:37 +0400 Subject: [nginx-ru-announce] nginx-1.5.0 Message-ID: <20130507112937.GC69760@mdounin.ru> Изменения в nginx 1.5.0 07.05.2013 *) Безопасность: при обработке специально созданного запроса мог перезаписываться стек рабочего процесса, что могло приводить к выполнению произвольного кода (CVE-2013-2028); ошибка появилась в 1.3.9. Спасибо Greg MacManus, iSIGHT Partners Labs. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue May 7 11:30:06 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 7 May 2013 15:30:06 +0400 Subject: [nginx-ru-announce] nginx-1.4.1 Message-ID: <20130507113006.GG69760@mdounin.ru> Изменения в nginx 1.4.1 07.05.2013 *) Безопасность: при обработке специально созданного запроса мог перезаписываться стек рабочего процесса, что могло приводить к выполнению произвольного кода (CVE-2013-2028); ошибка появилась в 1.3.9. Спасибо Greg MacManus, iSIGHT Partners Labs. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue May 7 11:30:36 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 7 May 2013 15:30:36 +0400 Subject: [nginx-ru-announce] nginx security advisory (CVE-2013-2028) Message-ID: <20130507113036.GK69760@mdounin.ru> Hello! Greg MacManus из iSIGHT Partners Labs обнаружил проблему безопасности в нескольких последних версиях nginx. При обработке специально созданного запроса мог перезаписываться стек рабочего процесса, что могло приводить к выполнению произвольного кода (CVE-2013-2028). Проблеме подвержены версии nginx 1.3.9 - 1.4.0. Проблема исправлена в nginx 1.5.0, 1.4.1. Патч, исправляющий проблему, доступен тут: http://nginx.org/download/patch.2013.chunked.txt В качестве временной защиты можно в каждом блоке server{} воспользоваться конфигурацией вида: if ($http_transfer_encoding ~* chunked) { return 444; } -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Mon May 13 11:33:07 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Mon, 13 May 2013 15:33:07 +0400 Subject: [nginx-ru-announce] nginx-1.2.9 Message-ID: <20130513113307.GL69760@mdounin.ru> Изменения в nginx 1.2.9 13.05.2013 *) Безопасность: содержимое памяти рабочего процесса могло быть отправлено клиенту, если HTTP-бэкенд возвращал специально созданный ответ (CVE-2013-2070); ошибка появилась в 1.1.4. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Mon May 13 11:33:52 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Mon, 13 May 2013 15:33:52 +0400 Subject: [nginx-ru-announce] nginx security advisory (CVE-2013-2070) Message-ID: <20130513113351.GP69760@mdounin.ru> Hello! Была обнаружена связанная с CVE-2013-2028 проблема безопасности, затрагивающая некоторые предыдущие версии nginx при использовании proxy_pass к недоверенным HTTP-серверам. Проблема может приводить к отказу в обслуживании или к отправке клиенту содержимого памяти рабочего процесса, если бэкенд вернёт специально созданный ответ. Проблеме подвержены версии nginx 1.1.4 - 1.2.8, 1.3.0 - 1.4.0. Проблема уже исправлена в nginx 1.5.0, 1.4.1. Для исправления проблемы в устаревшей ветке 1.2.x выпущена версия 1.2.9. Патч для nginx 1.3.9 - 1.4.0 тот же, что и для CVE-2013-2028: http://nginx.org/download/patch.2013.chunked.txt Патч для более старых версий nginx (1.1.4 - 1.2.8, 1.3.0 - 1.3.8): http://nginx.org/download/patch.2013.proxy.txt -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Jun 4 13:43:03 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 4 Jun 2013 17:43:03 +0400 Subject: [nginx-ru-announce] nginx-1.5.1 Message-ID: <20130604134303.GW72282@mdounin.ru> Изменения в nginx 1.5.1 04.06.2013 *) Добавление: директивы ssi_last_modified, sub_filter_last_modified и xslt_last_modified. Спасибо Алексею Колпакову. *) Добавление: параметр http_403 в директивах proxy_next_upstream, fastcgi_next_upstream, scgi_next_upstream и uwsgi_next_upstream. *) Добавление: директивы allow и deny теперь поддерживают unix domain сокеты. *) Исправление: nginx не собирался с модулем ngx_mail_ssl_module, но без модуля ngx_http_ssl_module; ошибка появилась в 1.3.14. *) Исправление: в директиве proxy_set_body. Спасибо Lanshun Zhou. *) Исправление: в директиве lingering_time. Спасибо Lanshun Zhou. *) Исправление: параметр fail_timeout директивы server в блоке upstream мог не работать, если использовался параметр max_fails; ошибка появилась в 1.3.0. *) Исправление: в рабочем процессе мог произойти segmentation fault, если использовалась директива ssl_stapling. Спасибо Piotr Sikora. *) Исправление: в почтовом прокси-сервере. Спасибо Filipe Da Silva. *) Исправление: nginx/Windows мог перестать принимать соединения, если использовалось несколько рабочих процессов. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Jul 2 13:34:41 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 2 Jul 2013 17:34:41 +0400 Subject: [nginx-ru-announce] nginx-1.5.2 Message-ID: <20130702133441.GG20717@mdounin.ru> Изменения в nginx 1.5.2 02.07.2013 *) Добавление: теперь можно использовать несколько директив error_log. *) Исправление: метод $r->header_in() встроенного перла не возвращал значения строк "Cookie" и "X-Forwarded-For" из заголовка запроса; ошибка появилась в 1.3.14. *) Исправление: в модуле ngx_http_spdy_module. Спасибо Jim Radford. *) Исправление: nginx не собирался на Linux при использовании x32 ABI. Спасибо Сергею Иванцову. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Wed Jul 17 13:30:24 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Wed, 17 Jul 2013 17:30:24 +0400 Subject: [nginx-ru-announce] nginx-1.4.2 Message-ID: <20130717133024.GF49108@mdounin.ru> Изменения в nginx 1.4.2 17.07.2013 *) Исправление: метод $r->header_in() встроенного перла не возвращал значения строк "Cookie" и "X-Forwarded-For" из заголовка запроса; ошибка появилась в 1.3.14. *) Исправление: nginx не собирался с модулем ngx_mail_ssl_module, но без модуля ngx_http_ssl_module; ошибка появилась в 1.3.14. *) Исправление: в директиве proxy_set_body. Спасибо Lanshun Zhou. *) Исправление: параметр fail_timeout директивы server в блоке upstream мог не работать, если использовался параметр max_fails; ошибка появилась в 1.3.0. *) Исправление: в рабочем процессе мог произойти segmentation fault, если использовалась директива ssl_stapling. Спасибо Piotr Sikora. *) Исправление: nginx/Windows мог перестать принимать соединения, если использовалось несколько рабочих процессов. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Jul 30 13:41:26 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 30 Jul 2013 17:41:26 +0400 Subject: [nginx-ru-announce] nginx-1.5.3 Message-ID: <20130730134125.GL2130@mdounin.ru> Изменения в nginx 1.5.3 30.07.2013 *) Изменение во внутреннем API: теперь при небуферизированной работе с бэкендами u->length по умолчанию устанавливается в -1. *) Изменение: теперь при получении неполного ответа от бэкенда nginx отправляет полученную часть ответа, после чего закрывает соединение с клиентом. *) Исправление: в рабочем процессе мог произойти segmentation fault, если использовался модуль ngx_http_spdy_module и директива client_body_in_file_only. *) Исправление: параметр so_keepalive директивы listen мог работать некорректно на DragonFlyBSD. Спасибо Sepherosa Ziehau. *) Исправление: в модуле ngx_http_xslt_filter_module. *) Исправление: в модуле ngx_http_sub_filter_module. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Aug 27 14:06:24 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 27 Aug 2013 18:06:24 +0400 Subject: [nginx-ru-announce] nginx-1.5.4 Message-ID: <20130827140623.GZ19334@mdounin.ru> Изменения в nginx 1.5.4 27.08.2013 *) Изменение: MIME-тип для расширения js изменён на "application/javascript"; значение по умолчанию директивы charset_types изменено соответственно. *) Изменение: теперь директива image_filter с параметром size возвращает ответ с MIME-типом "application/json". *) Добавление: модуль ngx_http_auth_request_module. *) Исправление: на старте или во время переконфигурации мог произойти segmentation fault, если использовалась директива try_files с пустым параметром. *) Исправление: утечки памяти при использовании в директивах root и auth_basic_user_file относительных путей, заданных с помощью переменных. *) Исправление: директива valid_referers неправильно выполняла регулярные выражения, если заголовок Referer начинался с "https://". Спасибо Liangbin Li. *) Исправление: ответы могли зависать, если использовались подзапросы и при обработке подзапроса происходила ошибка во время SSL handshake с бэкендом. Спасибо Aviram Cohen. *) Исправление: в модуле ngx_http_autoindex_module. *) Исправление: в модуле ngx_http_spdy_module. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Sep 17 13:43:56 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 17 Sep 2013 17:43:56 +0400 Subject: [nginx-ru-announce] nginx-1.5.5 Message-ID: <20130917134356.GX57081@mdounin.ru> Изменения в nginx 1.5.5 17.09.2013 *) Изменение: теперь nginx по умолчанию использует HTTP/1.0, если точно определить протокол не удалось. *) Добавление: директива disable_symlinks теперь использует O_PATH на Linux. *) Добавление: для определения того, что клиент закрыл соединение, при использовании метода epoll теперь используются события EPOLLRDHUP. *) Исправление: в директиве valid_referers при использовании параметра server_names. *) Исправление: переменная $request_time не работала в nginx/Windows. *) Исправление: в директиве image_filter. Спасибо Lanshun Zhou. *) Исправление: совместимость с OpenSSL 1.0.1f. Спасибо Piotr Sikora. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Oct 1 14:00:06 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 1 Oct 2013 18:00:06 +0400 Subject: [nginx-ru-announce] nginx-1.5.6 Message-ID: <20131001140006.GI62063@mdounin.ru> Изменения в nginx 1.5.6 01.10.2013 *) Добавление: директива fastcgi_buffering. *) Добавление: директивы proxy_ssl_protocols и proxy_ssl_ciphers. Спасибо Piotr Sikora. *) Добавление: оптимизация SSL handshake при использовании длинных цепочек сертификатов. *) Добавление: почтовый прокси-сервер поддерживает SMTP pipelining. *) Исправление: в модуле ngx_http_auth_basic_module при использовании метода шифрования паролей "$apr1$". Спасибо Markus Linnala. *) Исправление: на MacOSX, Cygwin и nginx/Windows для обработки запроса мог использоваться неверный location, если для задания location'ов использовались символы разных регистров. *) Исправление: автоматическое перенаправление с добавлением завершающего слэша для проксированных location'ов могло не работать. *) Исправление: в почтовом прокси-сервере. *) Исправление: в модуле ngx_http_spdy_module. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Oct 8 13:42:34 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 8 Oct 2013 17:42:34 +0400 Subject: [nginx-ru-announce] nginx-1.4.3 Message-ID: <20131008134234.GP76294@mdounin.ru> Изменения в nginx 1.4.3 08.10.2013 *) Исправление: в рабочем процессе мог произойти segmentation fault, если использовался модуль ngx_http_spdy_module и директива client_body_in_file_only. *) Исправление: на старте или во время переконфигурации мог произойти segmentation fault, если использовалась директива try_files с пустым параметром. *) Исправление: переменная $request_time не работала в nginx/Windows. *) Исправление: в модуле ngx_http_auth_basic_module при использовании метода шифрования паролей "$apr1$". Спасибо Markus Linnala. *) Исправление: в модуле ngx_http_autoindex_module. *) Исправление: в почтовом прокси-сервере. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Nov 19 15:00:55 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 19 Nov 2013 19:00:55 +0400 Subject: [nginx-ru-announce] nginx-1.5.7 Message-ID: <20131119150055.GG41579@mdounin.ru> Изменения в nginx 1.5.7 19.11.2013 *) Безопасность: символ, следующий за незакодированным пробелом в строке запроса, обрабатывался неправильно (CVE-2013-4547); ошибка появилась в 0.8.41. Спасибо Ivan Fratric из Google Security Team. *) Изменение: уровень логгирования ошибок auth_basic об отсутствии пароля понижен с уровня error до info. *) Добавление: директивы proxy_cache_revalidate, fastcgi_cache_revalidate, scgi_cache_revalidate и uwsgi_cache_revalidate. *) Добавление: директива ssl_session_ticket_key. Спасибо Piotr Sikora. *) Исправление: директива "add_header Cache-Control ''" добавляла строку заголовка ответа "Cache-Control" с пустым значением. *) Исправление: директива "satisfy any" могла вернуть ошибку 403 вместо 401 при использовании директив auth_request и auth_basic. Спасибо Jan Marc Hoffmann. *) Исправление: параметры accept_filter и deferred директивы listen игнорировались для listen-сокетов, создаваемых в процессе обновления исполняемого файла. Спасибо Piotr Sikora. *) Исправление: часть данных, полученных от бэкенда при небуферизированном проксировании, могла не отправляться клиенту сразу, если использовались директивы gzip или gunzip. Спасибо Yichun Zhang. *) Исправление: в обработке ошибок в модуле ngx_http_gunzip_filter_module. *) Исправление: ответы могли зависать если использовался модуль ngx_http_spdy_module и директива auth_request. *) Исправление: утечки памяти в nginx/Windows. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Nov 19 15:01:16 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 19 Nov 2013 19:01:16 +0400 Subject: [nginx-ru-announce] nginx-1.4.4 Message-ID: <20131119150116.GK41579@mdounin.ru> Изменения в nginx 1.4.4 19.11.2013 *) Безопасность: символ, следующий за незакодированным пробелом в строке запроса, обрабатывался неправильно (CVE-2013-4547); ошибка появилась в 0.8.41. Спасибо Ivan Fratric из Google Security Team. -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Nov 19 15:02:36 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 19 Nov 2013 19:02:36 +0400 Subject: [nginx-ru-announce] nginx security advisory (CVE-2013-4547) Message-ID: <20131119150236.GO41579@mdounin.ru> Hello! Ivan Fratric из Google Security Team обнаружил ошибку в nginx, которая позволяет в некоторых случаях обходить ограничения безопасности с помощью специального запроса, а также может иметь другие последствия (CVE-2013-4547). Некоторые проверки URI запроса не делались над символом, следующим за незакодированным символом пробела (незакодированный пробел недопустим в соответствии с протоколом HTTP, однако поддерживается начиная с nginx 0.8.41 из соображений совместимости). Одним из результатов ошибки была возможность получить доступ к файлу, закрытому с помощью ограничений доступа вида location /protected/ { deny all; } запросив его как "/foo /../protected/file" (в случае статических файлов - только если существует каталог "foo ", с пробелом на конце), а также возможность вызывать специальную обработку файла с пробелом на конце в конфигурации вида location ~ \.php$ { fastcgi_pass ... } запросив файл как "/file \0.php". Проблеме подвержены версии nginx 0.8.41 - 1.5.6. Проблема исправлена в nginx 1.5.7, 1.4.4. Патч, исправляющий проблему, доступен тут: http://nginx.org/download/patch.2013.space.txt В качестве временной защиты можно в каждом блоке server{} воспользоваться конфигурацией вида: if ($request_uri ~ " ") { return 444; } -- Maxim Dounin http://nginx.org/en/donation.html From mdounin at mdounin.ru Tue Dec 17 14:08:10 2013 From: mdounin at mdounin.ru (Maxim Dounin) Date: Tue, 17 Dec 2013 18:08:10 +0400 Subject: [nginx-ru-announce] nginx-1.5.8 Message-ID: <20131217140810.GT95113@mdounin.ru> Изменения в nginx 1.5.8 17.12.2013 *) Добавление: теперь resolver поддерживает IPv6. *) Добавление: директива listen поддерживает параметр fastopen. Спасибо Mathew Rodley. *) Добавление: поддержка SSL в модуле ngx_http_uwsgi_module. Спасибо Roberto De Ioris. *) Добавление: скрипты подсветки синтаксиса для vim добавлены в contrib. Спасибо Evan Miller. *) Исправление: при чтении тела запроса с использованием chunked transfer encoding по SSL-соединению мог произойти таймаут. *) Исправление: директива master_process работала неправильно в nginx/Windows. *) Исправление: параметр setfib директивы listen мог не работать. *) Исправление: в модуле ngx_http_spdy_module. -- Maxim Dounin http://nginx.org/en/donation.html