ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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



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@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.