Re: Вопрос про merge_slashes

2014-04-25 Пенетрантность Илья Шипицин
спамеров интересует накрутка индексов цитирования.
если вы поправите движок форума и вместо прямой ссылки на сайт спамера
на форуме будет размещаться ссылка на вашу страничку, на которой будет
предупреждение "вы хотите перейти по такому-то адресу ?", то спамерам
не будет толка от вашего форума. и они от вас отстанут :-)

25 апреля 2014 г., 17:37 пользователь Михаил Монашёв
 написал:
> Здравствуйте.
>
> В доке http://nginx.org/ru/docs/http/ngx_http_core_module.html#merge_slashes
> написано "Однако из соображений безопасности лучше избегать отключения 
> преобразования."
>
> Что именно небезопасного может произойти приmerge_slashes off;
>
> Поясню проблему. Сайт сильно спамят. Я настроил правило, которое
> смотрит лог и если происходит более Х обращений вроде
> POST /p/add_topic.cgi HTTP/1.1
> то ip считается подозрительным. Спамер это просёк и сейчас шлёт
> запросы вот такие:
> POST //p/add_topic.cgi HTTP/1.1"
>
> Я могу свою парсилку логов поправить, но и с директивой хотелось бы
> понять проблему.
>
> --
> С уважением,
>  Михаил  mailto:postmas...@softsearch.ru
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Вопрос про merge_slashes

2014-04-25 Пенетрантность denis

25.04.2014 15:37, Михаил Монашёв пишет:

Здравствуйте.

В доке http://nginx.org/ru/docs/http/ngx_http_core_module.html#merge_slashes
написано "Однако из соображений безопасности лучше избегать отключения 
преобразования."

Что именно небезопасного может произойти приmerge_slashes off;

Поясню проблему. Сайт сильно спамят. Я настроил правило, которое
смотрит лог и если происходит более Х обращений вроде
POST /p/add_topic.cgi HTTP/1.1
то ip считается подозрительным. Спамер это просёк и сейчас шлёт
запросы вот такие:
POST //p/add_topic.cgi HTTP/1.1"

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


#to http
map $binary_remote_addr $is_post {
POST $binary_remote_addr;
}
limit_req_zone $is_post zone=post:1m rate=12r/m;

location / {
limit_req zone=post burst=1 nodelay;
limit_req zone=limitReqsPerIP burst=8 nodelay;
...

И ловим в еррлогах 503, после чего уже банним.
Вариант 2

location /login/ {
   if ($request_method = POST) {
   #limit_req zone=pmk-login; #burst=1;
   return 402;
   }

   error_page 402 @post;

location @post {
access_log post.log;
limit_req zone=pmk-login; #burst=1;

proxy_pass http://BE;
proxy_redirect off;
proxy_next_upstream error timeout invalid_header 
http_500 http_502 http_503;

}

Вариант 3
location ~* add_topic.cgi$ {
и тоже лимиты, if на POST итд

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Вопрос про merge_slashes

2014-04-25 Пенетрантность Maxim Dounin
Hello!

On Fri, Apr 25, 2014 at 03:37:34PM +0400, Михаил Монашёв wrote:

> Здравствуйте.
> 
> В доке http://nginx.org/ru/docs/http/ngx_http_core_module.html#merge_slashes
> написано "Однако из соображений безопасности лучше избегать отключения 
> преобразования."
> 
> Что именно небезопасного может произойти приmerge_slashes off;
> 
> Поясню проблему. Сайт сильно спамят. Я настроил правило, которое
> смотрит лог и если происходит более Х обращений вроде
> POST /p/add_topic.cgi HTTP/1.1
> то ip считается подозрительным. Спамер это просёк и сейчас шлёт
> запросы вот такие:
> POST //p/add_topic.cgi HTTP/1.1"
> 
> Я могу свою парсилку логов поправить, но и с директивой хотелось бы
> понять проблему.

Если отключить merge_slashes, то ограничения вида

location /p/ { allow 127.0.0.1; deny all; ... }

точно так же легко обходятся добавлением лишнего слеша.

-- 
Maxim Dounin
http://nginx.org/

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru