Многотысячные запросы к страницам сайта

S
На сайте с 06.07.2013
Offline
36
1415

День добрый. Очень нужна ваша помощь! На сайт начались атаки. К одним и тем же страницам сайта идут многотысячные запросы. С одного IP около 15 минут идут 20000 запросов к определенной странице, спустя какое-то время с другого IP 5000 на другую страницу. Таких страниц пока 5. И так уже продолжается 3-е суток. На хостинге идет превышение лимита в разы. Сайт постоянно не доступен. Пробивала IP. Выяснилось, что они принадлежат различным серверам виртуального хостинга, которые были взломаны (так писали мне в службе поддержки хостингов, которым IP принадлежат) . Блокировка в по IP в htaccess ничего не дает, так как IP меняются.

В службе поддержки моего хостинга написали: " У нас существует система блокировки по IP-адресу, однако данные запросы проходят фильтрацию, так как имеют тип запроса GET, реальный User-Agent и их количество в секунду весьма невелико, то есть невозможно создать такое правило на стороне сервера, которое при этом не блокировало бы при этом легитимные запросы к сайтам"

Сайт на Joomla! 3.6.4. Может какие есть плагины по защите от подобных атак? Или еще есть варианты справится с этой проблемой?

Maxim-KL
На сайте с 26.01.2011
Offline
350
#1

Очень знакомая картина, меня самого не так давно таким же штормили.

serenetkina:
запроса GET, реальный User-Agent

Можно небольшой лог запросов выложить?

Мои услуги по прогонам: ✅Качественный ручной статейный прогон по базе сайтов с ИКС10+ (maximgroups.net/progon-statejnyj) ✅Прогон Максимум - Все включено, 300+ качественных ссылок (maximgroups.net/progon-maksimum)
S
На сайте с 06.07.2013
Offline
36
#2

[19/Nov/2016:19:58:19 +0300] 0.200 0.200 301 141.8.195.36 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 OPR/20.0.1387.64" "-" 367 141.8.192.23 site
[19/Nov/2016:19:58:19 +0300] 0.200 0.200 301 141.8.195.36 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 OPR/20.0.1387.64" "-" 367 141.8.192.23 site
[19/Nov/2016:19:58:19 +0300] 0.200 0.200 301 141.8.195.36 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 OPR/20.0.1387.64" "-" 367 141.8.192.23 site
[19/Nov/2016:19:58:19 +0300] 0.200 0.200 301 141.8.195.36 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 OPR/20.0.1387.64" "-" 367 141.8.192.23 site
[19/Nov/2016:19:58:19 +0300] 0.200 0.200 301 141.8.195.36 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 OPR/20.0.1387.64" "-" 367 141.8.192.23 site

[17/Nov/2016:23:59:57 +0300] 0.200 0.200 301 5.101.157.48 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)" "-" 367 141.8.192.23 site
[17/Nov/2016:23:59:57 +0300] 0.200 0.200 301 5.101.157.48 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)" "-" 367 141.8.192.23 site
[17/Nov/2016:23:59:57 +0300] 0.150 0.150 301 5.101.157.48 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)" "-" 367 141.8.192.23 site
[17/Nov/2016:23:59:57 +0300] 0.200 0.200 301 5.101.157.48 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)" "-" 367 141.8.192.23 site


[17/Nov/2016:00:11:38 +0300] 0.200 0.200 301 5.101.156.113 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 OPR/20.0.1387.64" "-" 367 141.8.192.23 site
[17/Nov/2016:00:11:38 +0300] 0.150 0.150 301 5.101.156.113 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 OPR/20.0.1387.64" "-" 367 141.8.192.23 site
[17/Nov/2016:00:11:38 +0300] 0.200 0.200 301 5.101.156.113 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 OPR/20.0.1387.64" "-" 367 141.8.192.23 site
[17/Nov/2016:00:11:38 +0300] 0.200 0.200 301 5.101.156.113 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 OPR/20.0.1387.64" "-" 367 141.8.192.23 site
[17/Nov/2016:00:11:38 +0300] 0.150 0.150 301 5.101.156.113 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 OPR/20.0.1387.64" "-" 367 141.8.192.23 site
[17/Nov/2016:00:11:38 +0300] 0.200 0.200 301 5.101.156.113 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 OPR/20.0.1387.64" "-" 367 141.8.192.23 site
[17/Nov/2016:23:59:57 +0300] 0.200 0.200 301 5.101.157.48 site.by GET /razvivayushchie-multfilmy/ HTTP/1.1 "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)" "-" 367 141.8.192.23 site

hb2bd
На сайте с 06.04.2016
Offline
29
#3

Через iptables блочите обидчика по ip и все. (если формат данных правильный)

А если нет, то можно будет блочить через совокупность юзерагент-хедер-страница-кол-во переданных данных И так далее

включайте кэш, подключайте cloudflare, адаптируйте cdn

М
eiweb
На сайте с 08.11.2014
Offline
82
#4

Если у Вас VPS, установите mod_evasive и настройте его определенным образом.

Например не более 1 или 2 соединений в сек с 1 IP.

Или то же самое, но средствами iptables

VPS сервер (https://hosteiweb.com) в Европе и США - от €3.43 /мес. (базовое администрирование)
S
На сайте с 30.09.2016
Offline
469
#5

Попробую догадаться: сайт на обычном шаред хостинге, - Спринтхост.

Простейшее решение: в самом начале файла index.php подключить маленький скриптик, который будет отслеживать количество запросов с определённого IP за определённый промежуток времени и заносить этот IP в чёрный список.

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
S
На сайте с 06.07.2013
Offline
36
#6
Sitealert:
Попробую догадаться: сайт на обычном шаред хостинге, - Спринтхост.
Простейшее решение: в самом начале файла index.php подключить маленький скриптик, который будет отслеживать количество запросов с определённого IP за определённый промежуток времени и заносить этот IP в чёрный список.

Как его подключить. Подскажите блондинке))))

S
На сайте с 30.09.2016
Offline
469
#7
serenetkina:
Как его подключить.

Как обычно:

include ( 'script.php' );

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

Д
На сайте с 01.04.2012
Offline
115
#8
eiweb:

Например не более 1 или 2 соединений в сек с 1 IP.

Круто! Спасибо. Сарказм.

VPN/SSD VPS в любой локации на выбор ( https://cp.inferno.name/cart.php ). Скидка 25% для новых заказов по промо-коду ZIMA2023
R
На сайте с 14.02.2010
Offline
77
#9

ничего смешного. это нормальная практика, по крайней мере для скриптов.

всегда настраиваю в nginx несколько зон для limit_req - 2/sec, 5/sec, 25/sec... с небольшими вариациями в зависимости от ситуации.

потом, в случае внезапного DDoS например, очень удобно из логов nginx-a выдергивать ботов грепая на предмет "limiting excess" лог ошибок.

много-много раз спасался таким образом сам и помогал людям. если канал не укладывают конечно...

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий