Hello! On Wed, Apr 09, 2014 at 07:32:30PM +0400, Vladislav Shabanov wrote:
> Существует ли простой способ сделать (на уровне конфигов, разумеется, > программировать это > скорее всего никому не захочется) логирование холостых обращений (сокет > открыли, но ничего > не GET/POST/…) ? Включить error_log на уровне info, "холостые" обращения будут видны как "client closed connection while waiting for request": 2014/04/09 15:35:34 [info] 57195#0: *1 client closed connection while waiting for request, client: 127.0.0.1, server: 0.0.0.0:8080 > И, кстати, вопрос тем, кто nginX отлаживает: а много таких холостых обращений > «по жизни»? Много, т.к. современные браузеры очень любять открывать соединения "про запас". Но, повторюсь, всё это мало относится к вопросам детектирования эксплуатации проблемы в heartbeat. Никто не мешает атакующему сделать в соединении честный запрос, а heartbeat-запросы слать параллельно и/или потом, пока соединение будет в keepalive'е. > > 09 апр. 2014 г., в 15:47, Maxim Dounin <mdou...@mdounin.ru> написал(а): > > > Hello! > > > > On Wed, Apr 09, 2014 at 01:41:06PM +0400, Vladislav Shabanov wrote: > > > >> Добрый день! > >> > >> В чём суть уязвимости и как исправлять все, думаю, уже в курсе. > >> А вот вопрос, который после исправления было бы интересно поизучать: > >> > >> В типовых настройках конфигов при таких вот битых обращениях ни одной > >> строчки в лог > >> не пишется. Что нужно сделать, чтобы в логах nginX были видны такие > >> обращения? > >> Вариант «включить уровень логов DEBUG и в нём утонуть» не нравится. > >> > >> У кого какие мысли? > > > > Максимум, что можно сделать со стороны nginx'а - это логгировать > > сам факт соединения (и он таки логгируется на уровне info). > > > > Следует однако понимать, что отличить соединение, в котором > > уязвимость эксплуатируется, от обычного соединения с обычным > > запросом при правильном подходе к вопросу эксплуатации данной > > уязвимости - не представляется возможным вообще никак. Разве что > > запрошенный через heartbeat кускок данных будет достаточно > > большим, чтобы вызвать segmentation fault в OpenSSL. > > > > -- > > Maxim Dounin > > http://nginx.org/ > > > > _______________________________________________ > > nginx-ru mailing list > > nginx-ru@nginx.org > > http://mailman.nginx.org/mailman/listinfo/nginx-ru > > _______________________________________________ > nginx-ru mailing list > nginx-ru@nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru -- Maxim Dounin http://nginx.org/ _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru