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

flash12320
На сайте с 29.02.2016
Offline
72
1526

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

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

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

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

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

LEOnidUKG
На сайте с 25.11.2006
Online
1744
#1

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

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

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

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
suffix
На сайте с 26.08.2010
Offline
331
#2

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

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

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

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

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

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

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

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

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

fliger
На сайте с 17.09.2015
Offline
107
#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
107
#8
aleksandrbol:
вот это точно отработает!

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

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


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

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