Ботнет 10к+ на wp-login

[umka]
На сайте с 25.05.2008
Offline
456
#211

Палю тему, как с помощью .htaccess избавиться от назойливых ботов и снизить нагрузку.

Для WP в .htaccess в корне сайта добавляем:

RewriteEngine on
RewriteCond %{HTTP_COOKIE} !some_cookie=some_value
RewriteRule ^(wp-login\.php|wp-admin/)$ - [F,L]
ErrorDocument 403 "<html><body><script>document.cookie='some_cookie=some_value;path=/';location.reload();</script></body></html>"

Для Joomla добавляем в .htaccess в директории "administrator":

RewriteEngine on
RewriteCond %{HTTP_COOKIE} !some_cookie=some_value
RewriteRule ^index\d?\.php$ - [F,L]
ErrorDocument 403 "<html><body><script>document.cookie='some_cookie=some_value;path=/';location.reload();</script></body></html>"

some_cookie и some_value меняем на произвольные.

Данный код выдаёт всем ботам без куки ошибку 403 с ява-скриптом, устанавливающим эту куку.

Код не дружит с плагинами, устанавливающими собственные страницы для ошибки 403. В частности, с WP Bulletproof security.

Выдаваемый ява-скрипт рекомендую модифицировать. У нас он, например, подвергается обфускации, чтобы нельзя было простым анализом выяснить, какую куку нужно устанавливать, чтобы получить возможность заходить в админку.

В довесок в прицепе список из 14к айпишек для тех, у кого есть имеются навыки работы с фаерволом :)

zip ips.txt.zip
Лог в помощь!
T
На сайте с 22.04.2011
Offline
57
tlk
#212
timonzor:
Не плохо, как добился?

против wp-login - fail2ban + wp fail2ban

против POST /edit - один fail2ban

Дешевые VPS в России (http://goo.gl/DB5d0Y). Надежные сервера и VDS по всему миру (http://goo.gl/joUFXm) с мгновенным русским саппортом. Бесплатный SMS-мониторинг всего (http://goo.gl/jCIDxN) - есть API для профессионалов.
C
На сайте с 11.10.2006
Offline
67
cap
#213
[umka:
;12016142]Палю тему, как с помощью .htaccess избавиться от назойливых ботов и снизить нагрузку.

/ru/forum/comment/12014898 ;)

У меня БОТ ни в какую не ел яву с сайта. Просто игнорировал.

+

Данный код выдаёт всем ботам без куки ошибку 403 с ява-скриптом, устанавливающим эту куку.

получается при следующем обращении, если бот съел куку, .htaccess его пропустит?

Z
На сайте с 06.09.2012
Offline
129
#214
cap:
получается при следующем обращении, если бот съел куку, .htaccess его пропустит?

Все способы с кукой пропустят ботов, которые работают на движке реального браузера, например на фантоме. Такие боты обнаруживаются только сбором статистики и анализом аномального поведения.

Черный список врунов и обманщиков: ua-hosting.company, riaas.ru, takewyn.ru, yahoster/cadedic, Andreylab
Den73
На сайте с 26.06.2010
Offline
523
#215

сделал предварительное решение для всех глобально, без apache

/wp-login.php

/administrator/index.php

/admin.php

если пришел клиент без куки то отдаем html для простановки куки, без специальной уникальной куки не пускаем, если клиент без куки да и еще настырный то баним.

---------- Добавлено 05.08.2013 в 00:22 ----------

zzzit:
Все способы с кукой пропустят ботов, которые работают на движке реального браузера, например на фантоме. Такие боты обнаруживаются только сбором статистики и анализом аномального поведения.

а таких и смысла банить нету, они все равно волной приходят а потом уходят.

[umka]
На сайте с 25.05.2008
Offline
456
#216
cap:
/ru/forum/comment/12014898 ;)

У меня БОТ ни в какую не ел яву с сайта. Просто игнорировал.

+

получается при следующем обращении, если бот съел куку, .htaccess его пропустит?

Если бот полноценным образом выполняет ява-скрипт, то да.

Но таких очень немного. И для них тоже можно придумать методы противодействия. "На каждую хитрую задницу …", как говорится.

Den73
На сайте с 26.06.2010
Offline
523
#217

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

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

Mikanoshi
На сайте с 09.10.2008
Offline
101
#218
'[umka:
;12016142']Код не дружит с плагинами, устанавливающими собственные страницы для ошибки 403.

С ajax плагинами входа тоже, они посылают POST запрос на wp-login.php, исключения для callback в урле можно хотя бы добавить, если запрос через XMLHttpRequest.

[umka]
На сайте с 25.05.2008
Offline
456
#219
Den73:
еще бывают на основе настоящего браузера - с такими справиться намного сложнее тут уже нужен поведенческий анализ каждого клиента и за ранее накопленная статистика по сайту

А выполнять выдаваемым ява-скриптом нужные действия только после mouseover над body? не? :)

Den73
На сайте с 26.06.2010
Offline
523
#220
'[umka:
;12016230']А выполнять выдаваемым ява-скриптом нужные действия только после mouseover над body? не? :)

можно но не факт, тут проблема в том что авторы таких программ тоже не дураки если они делают такое то берут захват намного шире, да и вкурсе они какие есть средства противодействия/хитрости.

вот только для брутелок конечно не кто не будет делать, это уже умная ddos-илка.

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