Защита через htaccess

flash12320
На сайте с 29.02.2016
Offline
48
1519

Подскажите пожалуйста, часто пытаются найти уязвимости в движке набором и перебором таких команд:

https://site.ru/enter/../../../../script.14.13425.5255225.5/. ./.goal.php и т. д.

Можно ли запретить доступ (403) с такими запросами,

к примеру если запрос содержит лишние слеши /../

И как такое реализовать?

LEOnidUKG
На сайте с 25.11.2006
Offline
1674
#1

Пусть ищут, если уязвимости нет, то в чём проблема то?

Ну завтра будут искать /?../, а после завтра /?x05x18x12

Запаритесь бегать за этим.

✅ Трастовых площадок под размещение статей и ссылок. Опыт 15 лет! ( https://searchengines.guru/ru/forum/675690 ) ⭐ Купить вечные трастовые ссылки для сайта ( https://getmanylinks.ru/?srh ) ⭐ Новый аналог AllSubbmitter https://getmanylinks.ru/getmanysubmits.html (Бесплатное демо)
suffix
На сайте с 26.08.2010
Offline
312
#2

Если есть .htaccess то значит есть Apache.

Как раз для борьбы с такими запросами предназначен waf модуль для Apache - modsecurity.

Только аккуратнее с настройками !

Затем и fail2ban настроить стоит на error.log пусть все ip на которые modsecurity срабатывает сразу банит скажем на месяц!

Клуб любителей хрюш (https://www.babai.ru)
LEOnidUKG
На сайте с 25.11.2006
Offline
1674
#3

suffix, а они такие идиоты всё с 1 IP делают и то левого. В основном это идёт массово через прокси. Для этого целых 2-а модуля подключать + ещё iptable забивать.... ну это такое себе удовольствие.

suffix
На сайте с 26.08.2010
Offline
312
#4
LEOnidUKG:
suffix, а они такие идиоты всё с 1 IP делают и то левого. В основном это идёт массово через прокси. Для этого целых 2-а модуля подключать + ещё iptable забивать.... ну это такое себе удовольствие.

Ну почему два-то ? modsecurity уже будет не пускать !.

fail2ban это уже по желанию.

fliger
На сайте с 17.09.2015
Offline
92
#5

Если у вас есть шаблон используемых на сайте URI, создайте переменную allow_uri:

SetEnvIf Request_URI ^ШАБЛОН_URI$ allow_uri

Order Deny,Allow

Deny from env=!allow_uri

Альтернатива - создать переменную по шаблону запрещенных URI, если не знаете, какие URL будут использоваться на сайте.

dws77
На сайте с 31.10.2008
Offline
128
#6

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

Сенбернар - это такая собака, которая находит под снегом пропавших людей, тем и живёт.
Александр
На сайте с 17.07.2009
Offline
371
#7
fliger:
Если у вас есть шаблон используемых на сайте URI, создайте переменную allow_uri:

SetEnvIf Request_URI ^ШАБЛОН_URI$ allow_uri

Order Deny,Allow
Deny from env=!allow_uri

Альтернатива - создать переменную по шаблону запрещенных URI, если не знаете, какие URL будут использоваться на сайте.

вот это точно отработает!

Сайты на WordPress тут просто летают! (https://vk.cc/atAGUU)
fliger
На сайте с 17.09.2015
Offline
92
#8
aleksandrbol:
вот это точно отработает!

Конечно работает. Кроме того, метод POST нужно разрешить только для тех URI, где он используется.

А еще через mod_rewrite разрешить параметры запроса в URL только для тех, где они есть (т.е. ссылки вида /ССЫЛКА/?параметр-запроса):


RewriteCond %{QUERY_STRING} ^.+$
RewriteCond %{THE_REQUEST} !^(?:GET|HEAD)\ /разрешенный_URI\?разрешенный_QUERY_STRING\ HTTP/
...
...
RewriteRule ^.*$ - [F]

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