Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Атака и 400 Bad Request
Максим, как можно поймать "нехороших компьютеров", которые делают вот такое:
17:20:20.685740 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21243000, win 63510, length 0 17:20:20.685763 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21247380, win 62780, length 0
17:20:20.685772 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21251760, win 62415, length 0 17:20:20.685783 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21254680, win 62050, length 0
17:20:20.685793 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21257600, win 61320, length 0 17:20:20.685992 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21260520, win 60590, length 0
17:20:20.686014 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21266360, win 59860, length 0 17:20:20.686029 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21269280, win 61685, length 0
17:20:20.686041 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21275120, win 61320, length 0 17:20:20.686058 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21278040, win 62780, length 0
17:20:20.686067 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21283880, win 62415, length 0 17:20:20.686102 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21286800, win 63875, length 0
17:20:20.686494 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21292640, win 63510, length 0 17:20:20.686519 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21299940, win 64240, length 0
17:20:20.686529 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21307240, win 64605, length 0 17:20:20.686540 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21311620, win 64970, length 0
17:20:20.686550 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21314540, win 64240, length 0 17:20:20.686560 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21317460, win 63510, length 0
17:20:20.686570 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21321840, win 62415, length 0 17:20:20.686580 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21326220, win 62415, length 0
17:20:20.686591 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21330600, win 62415, length 0 17:20:20.686604 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21336440, win 61320, length 0
17:20:20.686617 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21343740, win 61685, length 0 17:20:20.691741 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21348120, win 61685, length 0
17:20:20.692239 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21353960, win 61320, length 0 17:20:20.692992 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21358340, win 62780, length 0
17:20:20.693281 IP xx.xx.xx.xx.http > 81.23.5.148.54819: Flags [.], seq 21400680:21456160, ack 1, win 123, length 55480 17:20:20.694312 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21365640, win 61685, length 0
17:20:20.694343 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21368560, win 63145, length 0 17:20:20.694361 IP xx.xx.xx.xx.http > 81.23.5.148.54819: Flags [.], seq 21400680:21456160, ack 1, win 123, length 55480
17:20:20.695541 IP xx.xx.xx.xx.http > 81.23.5.148.54819: Flags [.], seq 21456160:21520400, ack 1, win 123, length 64240 17:20:20.695684 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21374400, win 63145, length 0
17:20:20.696765 IP xx.xx.xx.xx.http > 81.23.5.148.54819: Flags [.], seq 21520400:21584640, ack 1, win 123, length 64240 17:20:20.697520 IP xx.xx.xx.xx.http > 81.23.5.148.54819: Flags [.], seq 21520400:21584640, ack 1, win 123, length 64240
17:20:20.697740 IP xx.xx.xx.xx.http > 81.23.5.148.54819: Flags [.], seq 21520400:21584640, ack 1, win 123, length 64240 17:20:20.697988 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21380240, win 65335, length 0
17:20:20.698024 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21387540, win 65335, length 0 17:20:20.698043 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21390460, win 65335, length 0
17:20:20.698983 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21393380, win 64605, length 0 17:20:20.699734 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21400680, win 62780, length 0
17:20:20.701266 IP xx.xx.xx.xx.http > 81.23.5.148.54819: Flags [.], seq 21584640:21594860, ack 1, win 123, length 10220 17:20:20.704298 IP xx.xx.xx.xx.http > 81.23.5.148.54819: Flags [.], seq 21594860:21641580, ack 1, win 123, length 46720
17:20:20.705805 IP xx.xx.xx.xx.http > 81.23.5.148.54819: Flags [.], seq 21594860:21641580, ack 1, win 123, length 46720 17:20:20.706734 IP xx.xx.xx.xx.http > 81.23.5.148.54819: Flags [.], seq 21641580:21648880, ack 1, win 123, length 7300
17:20:20.717222 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21406520, win 61685, length 0 17:20:20.717272 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21410900, win 63145, length 0
17:20:20.717499 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21416740, win 62780, length 0 17:20:20.717971 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21421120, win 64240, length 0
17:20:20.718719 IP 81.23.5.148.54819 > xx.xx.xx.xx.http: Flags [.], ack 21428420, win 63145, length 0
в логе ни одной записи по этому ip а траффика от него идет мегабитами... не пойму как их отлавливать
2012/1/12 Maxim Dounin <mdounin@xxxxxxxxxx>
Hello!
On Thu, Jan 12, 2012 at 12:59:46PM +0200, Дмитрий Леоненко wrote:
> Приветствую!
>
> Вчера ко мне пришло много-много траффика на 80 порт с бесполезными данными
> в запросе, то есть просто мусор.
> Траффика исходящего было дофига и как я понял весь он состоял из ответов
> nginx об плохом запросе 400 Bad request.
> Я настроил так
> log_format fail2ban '$time_local $remote_addr == $request == $status ==
> $http_referer == $http_user_agent';
>
> в логи сыпит дофига запросов вида:
>
> 12/Jan/2012:14:57:47 +0400 222.253.150.xxx == - == 400 == - == -
> 12/Jan/2012:14:57:49 +0400 123.24.190.xxx == - == 400 == - == -
> 12/Jan/2012:14:57:50 +0400 141.250.83.xxx == - == 400 == - == -
> 12/Jan/2012:14:57:51 +0400 187.59.185.xxx == - == 400 == - == -
>
>
> С помощью fail2ban добавлял в ipset на блокировку всех с такими запросами.
> За часов 10 набежало в ipset:
>
> > # ipset list fail2ban-badbot-ips | tail -n +7 | wc -l
> > 6687
>
>
> Меня терзают смутные сомнения, не блочу ли я легитимных пользователей по
> какой-то причине?
Современные браузеры (e.g. Chrome) любят открывать
"дополнительные" соединения, и закрывать их без каких-либо
запросов, если работы для них не нашлось. Так что легитимные
трафик там вполне может быть.
Лучше читать error_log, там должны быть сообщения "client sent
invalid ..." (правда на уровне info).
Maxim Dounin
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|