Я задал этот вопрос на прошлой неделе, последовал советам по отладке и теперь получил дополнительную информацию.
У меня странная проблема - на веб-сайте с высокой посещаемостью (миллионы посетителей в месяц) каждый день мы получаем около 20 ситуаций, когда один хост начинает непрерывно запрашивать одну и ту же страницу снова и снова - несколько раз в секунду, для любой продолжительности от нескольких минут до всего дня.
Атака явно не является злонамеренной, поскольку я отследил IP-адрес и сопоставил их с некоторыми из наших зарегистрированных пользователей, с которыми я беседовал. Они говорят, что когда это происходит, их компьютер становится медленным, но в остальном его можно использовать. Это происходит не при каждой загрузке страницы, а скорее спорадически.
Хиты журнала имеют следующие характеристики:
Мы не знаем, что с этим делать. Простой фильтр DoS не подходит - он у нас есть, и порог его срабатывания намного выше, чем запрос одной страницы (без связанных изображений, CSS и т. Д.) В секунду. Мы также установили mod_evasive, но это не улавливает их, поскольку у нас есть система с несколькими серверами, которая работает для каждого ребенка.
Стек представляет собой LAMP, Redhat install, PHP 5.2, Apache 2.2.3, с NGINX-сервером, работающим как программный балансировщик нагрузки перед несколькими веб-серверами и базами данных.
Из-за отсутствия хороших идей мы прибегли к написанию собственного фиктивного фильтра в memcached, который хранит ключ IP + URI в memcached IFF, пользователь - Firefox 3.x, а реферер пуст, и увеличивает каждый запрос страницы. Как только он преодолевает определенный порог за определенный период времени, мы отправляем 403 дополнительных запроса.
Однако я НЕ думаю, что это подходящее место в сетевом стеке для решения этой проблемы. Надеюсь, что кто-то другой видел их и может помочь нам найти закономерность.
Спасибо за все, что вы можете сделать!
- Пользователь часто не обращает внимания на то, что происходит - их страница не перезагружается, поэтому все, что происходит, происходит для них в фоновом режиме, и я считаю, что Firefox просто выбрасывает информацию.
Похоже на фоновый процесс ... Расширение, которое сбилось с пути?
- Это продолжается до тех пор, пока посетитель находится на этой конкретной странице, и загрузка следующей страницы часто происходит нормально.
Усиливает аргументы в пользу ошибки в расширении. Что-то ужасно выходит из строя во время "нормальной" обработки, но когда вы перезагружаете, он перезапускается какая бы обработка ни была прервана, и завершается успешно, а не зацикливается.
Это или как jholloway7 упоминалось, что что-то, выполняющее поддержание активности, предназначено для других сеансов. (комментарий +1 за указание на пример)