Назад | Перейти на главную страницу

Черный список: IP или домены?

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

Когда я нахожу кого-то / робота, который соответствует моим критериям для внесения в черный список, я хочу отправить его в свою БД как объект в черном списке.

Мой вопрос в том, следует ли мне занести их в черный список как IP или как домен?

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

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

Есть ли решение, которое мне не хватает?

Самый простой способ - ограничить время внесения в черный список.
В первый раз, когда IP-адрес помещается в БД, установите тайм-аут на 3 дня или что-то в этом роде.
При последующих отправках с этого IP:

  • Второй раз мусор приходит с IP, установленного таймаутом на 2 недели.
  • В третий раз мусор приходит с того же IP-адреса, установите тайм-аут для Постоянного (0)

  • Or something similar to that, SMTP Greylisting works something like this, and it's quite effective.

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

    Я установил страницу по умолчанию (созданную по сценарию) в одном или нескольких подкаталогах (папках), заблокированных в robots.txt. Эта страница, если она загружена некорректным роботом или шпионящим человеком, добавляет свой IP-адрес в список заблокированных. Но у меня есть обработчик ошибок 403 («не авторизован»), который перенаправляет эти заблокированные IP-адреса на страницу, объясняющую, что происходит, и содержащую капчу, которую человек может использовать для разблокировки IP. Таким образом, если IP-адрес заблокирован из-за того, что один человек использовал его один раз с плохой целью, следующий человек, который получит этот IP-адрес, не будет заблокирован навсегда - просто это немного неудобно. Конечно, если конкретный IP-адрес продолжает часто повторно блокироваться, я могу предпринять дальнейшие шаги вручную, чтобы решить эту проблему.

    Вот логика:

    1. Если IP не заблокирован, разрешите доступ в обычном режиме.
    2. Если посетитель переходит в запретную зону, заблокируйте его IP.
    3. Если IP заблокирован, перенаправьте весь доступ на форму «разблокировать», содержащую капчу.
    4. Если пользователь вручную вводит правильную капчу, удалите IP из списка заблокированных (и запишите этот факт).
    5. Промыть, вспенить, ПОВТОРИТЬ вышеуказанные шаги для дальнейшего доступа.

    Это оно! Один файл сценария для обработки уведомления о блокировке и разблокировки подачи капчи. Одна запись (минимум) в файле robots.txt. Одно перенаправление 403 в файле htaccess.

    Надеюсь, это поможет ... кому-нибудь. У меня это работает очень хорошо. Я использую его на нескольких сайтах.

    Хммм ... это зависит от того, какой тип серверной части используется на веб-сайте, например, есть плагин Bad Behavior, который используется в установках Wordpress, который выполняет работу по занесению в черный список. Он обладает гибкостью в том, что вы можете занести в черный список по ip, домену или строке пользовательского агента. Кроме того, мне интересно, а можно ли предположить, что у вас есть капча?

    Однозначно забанить IP. Это не решает проблему на 100%, но в каждом домене может быть несколько IP-адресов и, конечно же, некоторые домены, которые вы не хотите запрещать (comcast и т. Д.).

    Намного безопаснее делать это на основе IP, и у вас будет то же самое, что и в одной подсети:

    192.168.1.10
    192.168.1.25
    192.168.1.30
    

    Затем вы хотите банить по диапазону:

    192.168.1.x
    

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

    Ну, я думаю, под доменом вы имеете в виду занесение адреса электронной почты в черный список? поскольку занесение всего домена в черный список может удержать НАМНОГО больше пользователей, чем занесение в черный список ip.

    Думаю, я бы пошел с IP, хотя я думаю, что вы обращаетесь к этому не с того места.

    Чтобы роботы / спам-боты не публиковали сообщения, используйте капчу, например рекапча неплохо (и с его помощью вы помогаете оцифровывать старые книги).

    Чтобы не допустить плохих пользователей, IP-адрес можно довольно легко изменить, так как у большинства людей нет фиксированного IP-адреса (фиксированный IP-адрес обычно стоит дополнительно), поэтому они просто подключаются повторно и готовы к работе, пока вы их снова не заметите. На самом деле довольно сложно удержать «злых» пользователей подальше, хотя уловка, похоже, заключается в том, чтобы не дать забаненному пользователю знать, что он забанен, поэтому пусть контактная форма ведет себя так, как если бы они не были, чтобы они дольше разобраться и сменить имейл / ip. Но да, зачем или / или если вы могли бы запретить их IP ТАКЖЕ в качестве адреса электронной почты?