1.4, pavlinux (ok), 03:00, 15/09/2009 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Судя по патычу, надо в строке чего-то натыкать....
Index: src/http/ngx_http_parse.c
===================================================================
--- src/http/ngx_http_parse.c (revision 2410)
+++ src/http/ngx_http_parse.c (revision 2411)
@@ -1134,11 +1134,15 @@
#endif
case '/':
state = sw_slash;
- u -= 4;
- if (u < r->uri.data) {
- return NGX_HTTP_PARSE_INVALID_REQUEST;
- }
- while (*(u - 1) != '/') {
+ u -= 5;
+ for ( ;; ) {
+ if (u < r->uri.data) {
+ return NGX_HTTP_PARSE_INVALID_REQUEST;
+ }
+ if (*u == '/') {
+ u++;
+ break;
+ }
u--;
}
break;
--------
Аа-а-а-а-а.... ну там выше по коду написано... http://www.evanmiller.org/lxr/http/source/http/ngx_http_parse.c?v=nginx-0.5.3
/*
962 * we use "ch = *p++" inside the cycle, but this operation is safe,
963 * because after the URI there is always at least one charcter:
964 * the line feed
965 */
Вот и пришел always :)
Чего бы туда вставить, вместо нуля...
| |
1.10, dev (??), 09:02, 15/09/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
вот и первые показатели того, что Nginx становится действительно очень популярным :)
| |
|
2.12, Zenitur (?), 09:21, 15/09/2009 [^] [^^] [^^^] [ответить]
| +2 +/– |
Он уже года три как очень популярен. Какой бы сайт ни выдал сообщение о том, что он перегружен - везде приписка, nginx. Редко когда уже что-то другое.
| |
|
|
4.54, User294 (ok), 04:56, 20/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
>Негативный показатель.
Да, отсутствие ума - негативный показатель, даже очень! А при наличии мозга - и ежу понятно что если нжинкс рисует сообщение - он при этом стало быть ЖИВОЙ. А сдох то как раз апп-сервер бывший за ним :D.Как то опач или кто там еще в этой роли был. О чем нжынкс и информирует. А что ему еще остается делать, если он всосал при попытке отдать запрос серверу приложений?
| |
|
|
4.55, User294 (ok), 05:08, 20/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
>кстати, да.
>с другими лично мне не попадалось.
А других не так уж и часто используют как лоад-балансеры, реверс-прокси и прочая перед апп-серверами. Вот и весь секрет, имхо.
Например lighttpd (следующий по популярности легкий сервак способный выдерживать тысячи соединений без проблем для себя) в роли такого прокся - довольно дурно смотрится из-за того что у него логика работы такова что он кеширует ответы бэкэнда в RAM. Так что если вдруг ответом на запрос будет не дай боже iso-sized файл ... ну вы понимаете сколько тогда скушает оперативы лайти, да? Из-за этого свойства лайти, очевидно, не особо популярен как прокси перед апп-серверами. Остальных легких и шустрых в большом количестве (достойного внимания неткрафта например) - не замечено.
Других легких и популярных способных быть проксей в балансирах и т.п. при адской нагрузке - эээ а они где? И главное - где сайты с ними? Ну или чью лэйбу вместо нжинксы вы хотите увидеть в качестве реверс-прокси сообщающего о безвременной кончине бэкэнда?
| |
|
|
|
1.17, Аноним (-), 09:53, 15/09/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
а недавний ботнет не эксплойт к этой дыре использовал ? там тоже нжинкс фигурировал
| |
|
2.20, Dimez (??), 10:03, 15/09/2009 [^] [^^] [^^^] [ответить]
| +2 +/– |
Нет. Там и Linux фигурировал, из чего куча троллей сделала вывод, что виноват он.
| |
|
3.21, vitek (??), 10:18, 15/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
тролей ли?
образ врага надо формировать. и слухи для этого отлично подходят.
| |
|
4.26, Аноним (-), 11:10, 15/09/2009 [^] [^^] [^^^] [ответить]
| +2 +/– |
Именно троллей. Никто из владельце серверов даже не сомневается, что у них эксплойта нет и быть не может.
| |
|
5.27, vitek (??), 11:16, 15/09/2009 [^] [^^] [^^^] [ответить]
| +1 +/– |
>Именно троллей. Никто из владельце серверов даже не сомневается, что у них эксплойта нет и быть не может.
вопрос с владельцами - понятен.
а вот вопрос с будущими владельцами/клиентами - действительно вопрос.
| |
|
|
|
|
1.19, hhg (ok), 10:02, 15/09/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
скорее воркеры падать будут, чем левый код выполняться.
Изменения в nginx 14.09.2009
*) Безопасность: при обработке специально созданного запроса в рабочем
процессе мог произойти segmentation fault.
Спасибо Chris Ries.
| |
|
2.22, uldus (ok), 10:21, 15/09/2009 [^] [^^] [^^^] [ответить]
| +1 +/– |
>скорее воркеры падать будут, чем левый код выполняться.
http://www.debian.org/security/2009/dsa-1884
"An attacker can use this to execute arbitrary code with the rights of the worker process (www-data on Debian) or possibly perform denial of service attacks by repeatedly crashing worker processes via a specially crafted URL in an HTTP request."
В Debian очень сильный security team, напрасно словами они не бросаются.
| |
|
3.23, _umka_ (??), 10:24, 15/09/2009 [^] [^^] [^^^] [ответить]
| +1 +/– |
_or_ possibly perform denial of service attacks by repeatedly crashing worker processes via a specially crafted URL in an HTTP request."
---
о чем и говорят - получится DoS - но с выполнением кода там проблемы
| |
|
|
5.29, hhg (ok), 11:41, 15/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
да и не будет. обновление пройдёт быстро и никому незаметно.
| |
|
|
|
|
|
2.28, hhg (ok), 11:37, 15/09/2009 [^] [^^] [^^^] [ответить]
| +1 +/– |
аналогично.
обновление занимает не более минуты на всех серверах.
| |
|
3.30, Аноним (30), 12:05, 15/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
>аналогично.
>обновление занимает не более минуты на всех серверах.
А что уже есть обновления для RHEL/CentOS?
| |
|
|
5.33, Аноним (30), 12:46, 15/09/2009 [^] [^^] [^^^] [ответить]
| +4 +/– |
>собирать из сорца уже не модно?
у меня несколько десятков серверов.
Да, собирать из сорцов это не модно.
| |
|
6.35, TS (?), 13:45, 15/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
Обновил на 10 разноплатформенных серверах за 20 минут. Ждите апдейтов, ага.
| |
|
|
|
|
6.45, Michael Shigorin (ok), 13:54, 16/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
>>свою rpm собрать не дано ?
>Помогите - не умею. ASP Linux
http://www.altlinux.org/SpecTips, секция "Документы" -- там есть ссылки и на федорино руководство, и на его русский перевод -- должно сгодиться.
В случае уже доступного пакета алгоритм в случае nginx примерно таков:
- rpm -qi nginx, смотрим Source RPM
- гуглим найденный src.rpm
- качаем из наиболее достоверного источника
- rpm -i nginx-*.src.rpm
- идём в RPM/SOURCES, который будет или под /usr/src, или в $HOME
- качаем текущий тарбол
- идём в ../SPECS
- vim nginx.spec
- ищем Version:, заменяем на соответствующую тарболу
- рядом Release: сбрасываем в что-нить вроде 1 (или alt0.1, или 1mypkg...)
- ищем %changelog, пишем по образу и подобию в его начало запись о содеянном (в альте для этого есть утилитка add_changelog)
- rpm -ba nginx.spec (если будет ругаться, что чего-то нужного из BuildRequires: не стоит, то ставим и повторяем)
- при удаче получаем собранные исходный и бинарный пакеты, последний доставляем-ставим
- при неудаче смотрим, что взорвалось -- старые патчи отвалились, новый компилятор не собирает -- и принимаем действия по необходимости (см. тж. Software-Building-HOWTO)
(пойду-ка зафиксирую на http://www.linux.kiev.ua/ru/docs/articles/rpm-spec-howto/)
| |
|
7.47, Kirill (??), 21:44, 16/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
>[оверквотинг удален]
>- ищем %changelog, пишем по образу и подобию в его начало запись
>о содеянном (в альте для этого есть утилитка add_changelog)
>- rpm -ba nginx.spec (если будет ругаться, что чего-то нужного из BuildRequires:
>не стоит, то ставим и повторяем)
>- при удаче получаем собранные исходный и бинарный пакеты, последний доставляем-ставим
>- при неудаче смотрим, что взорвалось -- старые патчи отвалились, новый компилятор
>не собирает -- и принимаем действия по необходимости (см. тж. Software-Building-HOWTO)
>
>
>(пойду-ка зафиксирую на http://www.linux.kiev.ua/ru/docs/articles/rpm-spec-howto/)
Спасибо. А ASPLinux и ALTLinux схожи по структуре?
| |
|
|
|
|
|
|
1.31, Dorlas (??), 12:21, 15/09/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Да - nginx эта не та программа, с обновлением которой могут быть проблемы.
Вот обновлять тот же Perl с 5.8.8 до 5.8.9 при наличие 100-ни p5-модулей нужно аккуратно :)
| |
|
2.34, тигар (ok), 12:52, 15/09/2009 [^] [^^] [^^^] [ответить]
| +1 +/– |
[tiger@notebook]~%pkg_info -xI ^perl
perl-threaded-5.10.1 Practical Extraction and Report Language
[tiger@notebook]~%pkg_info -xI ^p5|wc -l
104
все нормально;( обновлял и машины с > 200 p5- без проблем
| |
|
3.50, Dorlas (??), 12:25, 17/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
>Не, это обычно с php-обновлениями такое бывает ;)
А попробуйте просто так на системе с Perl 5.8.8 и сотней p5-модулей сделать portupgrade -rR perl
И после попробуйте сделать: portupgrade -rR 'p5-*'
Будете очень неприятно удивлены.
PS: Штатный рекомендованный разработчиками Perl способ: man perl-after-update (такая же штука есть и у Python - python-update).
| |
|
|
|
2.38, hhg (ok), 17:31, 15/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
да потомучто его нет. как нет и большого смысла его делать. какая радость воркеры грохать? всё равно мастер их ещё назапускает. а чтоб код выполнился - так это только под определённую комбинацию системы и её окружения затачивать надо. что трудоёмко и не универсально - вообщем не вижу смысла в этом занятии для кого-либо. да и уязвимость просуществовала крайне непродолжительный срок.
| |
|
3.39, Аноним (-), 19:40, 15/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
>Уязвимые версии: 0.1.0-0.8.14
Т.е. все. Это типа "крайне непродолжительный срок" ?
| |
|
4.41, sHaggY_caT (ok), 23:22, 15/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
Напомнить про другие дырки, которые не были открыты с 2001-го года?
Как Вы думаете, сколько таких дырок в проприетарном ПО существует _сейчас_?
Это не zero-day, все кто хотел, вовремя обновился. Всех предупредили заранее, а дырки бывают в любом ПО...
| |
|
5.49, any (??), 09:53, 17/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
Игорь говорит, что 1.х.х -- стабильное API, а он API стабильным делать пока не хочет
| |
|
|
3.46, Michael Shigorin (ok), 14:21, 16/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
>да и уязвимость просуществовала крайне непродолжительный срок.
Если Вы случайно работаете системным администратором, сильно рекомендую сменить отношение к уязвимостям :-(
Важно не то, сколько "просуществовала" в принципе незаткнутая дырка, а то, когда на системах под вашим (как минимум) управлением этой дырки не стало. Этот срок обычно "подпирается" снизу временем публикации исправления; если возможно оперативное исправление своими силами, то временем публикации информации о проблеме; если проводится самостоятельный аудит кода, то может быть локально исправлено ранее, чем даже будет опубликована кем-либо информация.
Насчёт "назапускает" -- см. про DoS.
Насчёт "затачивать" -- бывают достаточно широко используемые комбинации, чтобы был смысл возиться при желании их задействовать в своих целях.
| |
|
4.48, hhg (ok), 23:35, 16/09/2009 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вижу Вы за пару минут уже написали сплойт для всех распространнённых BSD и linux систем и свысока поглядываете на окружающих, которые тратят на обновление в полтора раза больше времени, чем вы на взлом. Что-ж, это ваша проблема. отношения же к уязвимостям - это ваши измышления, основанные исключительно на вашей способности листать астрал как открытую книгу и поучать остальных, отвлёкшись от своего основного призвания, в целом состоящего из способности бегать и голосить на тему пожар-кашмар-мы_все_умрём.
:-\
| |
|
5.53, User294 (ok), 04:51, 20/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
>Вижу Вы за пару минут уже написали сплойт для всех распространнённых BSD
>и linux систем
Ну вы иногда на milw0rm.com и т.п. сайты захаживайте для приличия? Так, для профилактики спокойного сна :).Нет, я не хочу сказать что там сплойт для нжинксы уже есть (это была бы жесть) но его содержимое от спокойного сна админам - помогает, да. Там же и шеллкоды для <ваша_любимая_ОС> можно нарыть, удостоверившись что в принципе хаксоры не возражают против освоения новых горизонтов :).Ну, ладно, шеллкод для пингвинов на ARM я там не нашел, да. Жалко - хакерам еще есть над чем поработать :)
Еще хороший помощник от спокойного сна - http://securityvulns.ru/ (он же security.nnov.ru). Невзрачный и не очень известный сайтик одного любителя безопасности, вполне способный лишить иной раз спокойного сна любого мало-мальски вменяемого админа :)
| |
|
6.58, hhg (ok), 01:54, 23/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
> security.nnov.ru
Согласен, daily рассылка самое занимательное чтиво с утренним кофе. Бодрит. ;-)
| |
6.59, na (??), 20:57, 24/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
>и не очень известный сайтик одного любителя безопасности, вполне способный лишить
>иной раз спокойного сна любого мало-мальски вменяемого админа :)
на самом деле довольно известный, но в узких кругах :)
а 3proxy по моему знает любой юниксовый ru админ.
| |
|
7.60, User294 (ok), 23:17, 24/09/2009 [^] [^^] [^^^] [ответить]
| +/– |
>на самом деле довольно известный, но в узких кругах :)
Где-то так. ИМХО весьма приличный сайт по уязвимостям.
>а 3proxy по моему знает любой юниксовый ru админ.
Не заметил что-то. Хотя он того явно стоит. Совершенно забойная прокся которая при мизерном размере по фичности спокойно делает множество платных коммерческих программ.
| |
|
|
|
|
|
|
1.61, Аноним (-), 00:43, 04/10/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
кстате, http_dos.py не работает, баг даже не срабатывает. нафиг такое выкладывать?
| |
|