Какой HTTP-ответ вы вернете к попаданию из черного списка ip?

15

Я использую http: BL, чтобы заблокировать доступ плохих IP-адресов к моему сайту.

Если вредоносный IP (комментарий спамер) пытается попасть на сайт, я просто exitвеб-скрипт, который неявно возвращает 200 OKответ.

Другие ответы, которые я мог бы вернуть:

404 Не Найдено?

Если я верну 404, возможно, роботы подумают: «Это пустая трата времени, давайте перейдем к атаке на другой сайт», что уменьшит нагрузку на сайт (в настоящее время я получаю около 2 спам-ударов в секунду).

тем не мение

  • Я не хочу возвращать 404 на URL, которые при нормальных обстоятельствах могут быть найдены.
  • Я не уверен, могут ли спам-роботы «тратить время». то есть, зачем автору ботов надоедать писать код для 404-х, когда они все равно бьют по сети?

401 Несанкционированный?

Блокировка неверного IP-адреса - это не то же самое, что «ресурс требует аутентификации пользователя 1), который еще не был предоставлен, или 2) который был предоставлен, но не прошел тесты авторизации».


В целом я чувствую, что «реагирование на плохих ботов в соответствии с надлежащим протоколом http» дает плохим парням преимущество. В том смысле, что я играю по правилам, а они нет (немного похоже на Великобританию в ЕС - ха, ха). В некоторые дни я чувствую, что должен сделать что-то умное, чтобы отвлечь этих ботов. В другие дни я просто думаю, что я не должен принимать это на свой счет и просто игнорировать их. Принятие его в качестве номинала для ведения веб-сайта.

Я не знаю - что ты думаешь? Как вы реагируете, когда знаете, что это плохой IP?

JW01
источник
8
Лично я хотел бы вернуть заряд молнии, но я еще не понял, как это сделать через Интернет.
Жестянщик
Несколько лет назад на французском веб-сайте PR7, открытом для комментариев, я заметил, что если мы не удалим 3-4 новых спам-комментария в первые 36 часов, спамер отправит еще 100-300 комментариев. Поэтому они отправили исследование, подтвердили, что это будет хорошей целью, а затем отправили реальную атаку. Тогда было много IP-адресов. Как работают ваши злоумышленники?
FelipeAls
Я чувствую, что за 99% спам-хитов приходится не более 2 или 3 организаций. Похоже, что они не проверяют, потому что ни одна из их тысяч заявок не была опубликована на моем сайте. Все это довольно бессмысленная ситуация - они тратят свое время на то, чтобы ничего не добиваться, а я - на удаление спама.
JW01
6
Возврат '402 Требуется оплата' :)
keppla

Ответы:

19

Если вы хотите играть по правилам, 403 Запрещенный или 403.6 Отклоненный IP-адрес (специфический для IIS) будет правильным ответом.

Предоставление ответа 200 (и игнорирование комментария) может просто увеличить нагрузку на сервер, так как спам-бот, вероятно, продолжит отправлять спам в будущем, не подозревая, что он не имеет никакого эффекта. Ответ 4XX, по крайней мере, гласит: «Уходи, тебе нужно проверить свои факты» и, скорее всего, это уменьшит будущие попытки.

В маловероятном случае, если у вас есть доступ к брандмауэру, тогда блок занесенных в черный список IP-адресов на брандмауэре уменьшит нагрузку на сервер / создаст впечатление, что ваш сервер не существует для спаммера.

Я собирался предложить использовать 302 Временное перенаправление на собственный IP-адрес спаммера - но это, вероятно, не будет иметь никакого эффекта, так как у бота не будет причин следовать перенаправлению.

Если вы имеете дело со спамом, отправленным вручную, то делать спам видимым только по IP-адресу, который отправил, это хорошая тактика. Спамер уходит счастливым и довольным (и не меняет своего подхода к обходу вашей защиты), а другие пользователи никогда не видят спам.

MZB
источник
Благодарю. Я никогда не слышал о статусе 403.6. Что касается переадресации обратно на их IP: Да, я подумал о том, чтобы держать зеркало, чтобы все, что бросается на нас, возвращалось им ... но потом я понял, что дублирование плохого трафика не было блестящей идеей. 403, вероятно, разумный путь.
JW01
Мне нравится 403 или 404, склонность к 404. 403 может побудить их попробовать разные тактики. 404 подразумевает, что страницы просто нет, и это плохой URL. Я написал много пауков для прошлых работ, и редко видел 403, но столкнулся с большим количеством 404. В любом случае мой код удалил бы URL из очереди, но это потому, что я пытался играть честно. Я также думаю, что перманентное перенаправление на 127.0.0.1 может быть лучше, чем на их собственный IP, хотя я не играл с ним. К плохому, мы не можем перенаправить их в настоящую черную дыру.
Жестянщик
ха ха Я только что перечитал свой первый комментарий: «Спасибо. Я никогда не слышал о статусе 403.6». - Я думаю, что это одна из самых отвратительных вещей, которые я сказал.
JW01
Re firewall - я не понимаю, почему хостинговые компании не предлагают это как часть стандартного пакета.
JW01
1
@ JW01: На выделенных или виртуальных машинах это так. Он не может быть частью общего хоста, так как это повлияет на других пользователей. Если у вас есть root-доступ, откорректируйте его.
d -_- б
5

Я не знаю, является ли это плохой практикой, но я бы настроил сервер так, чтобы он вообще не отправлял никакого ответа.

Анджей Бобак
источник
1
это нереально, учитывая, как происходит большая часть серверной архитектуры. Маршрутизаторы и другие объекты поддерживают запросы открытыми до тех пор, пока ответ не будет отправлен, поэтому отправка «без ответа» создает проблемы на уровне архитектуры сервера, которые вам не нужны.
Джейсон Ф.Б.