Как защитить сайт от ботов


Методы защиты веб-формы без капчи / Хабр

О чём речь?

В последнее время на Хабре было предложено довольно много идей для капчи. Сложная, умная, смешная, капча остаётся одним из основных способов защиты формы от ботов.

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

В этом обзорном посте я бы хотел рассмотреть незаметные для пользователя методы защиты от ботов.

Методы защиты


Минимальное время заполнения формы

Суть метода заключается в том, что сервер замечает время создания формы. Если пользователь заполнил форму меньше чем за определённое время, то он считается ботом. Время можно варьировать в зависимости от сложности формы.
Верно также, что если форма не была заполнена слишком долго, то что-то не так.
Скрытое поле

Этот метод может показаться странным, но он, похоже, работает. К форме добавляется скрытое поле (скрытое в смысле display:none). Если поле заполнено, то пользователь считается ботом.
Удивительно, но многие простенькие боты заполняют все неизвестные поля.
Обфускация или шифрование HTML

Исходный код страницы является, по сути, вызовом javascript функции вроде document.write( decode( encodedHTML ) ), где encodedHTML — это как-то зашифрованный HTML.

Методы шифрования могут варьироваться от простого эскейпирования значений буковок (буква превращается '%код' ) до некоторых алгоритмов шифрования (например, простенький XOR).
В интернете есть много готовых решений, например, вот тут.

Блокирование определённых user-agent

Некоторые боты используют весьма специфические заголовки user-agent. Можно блокировать запросы не содержащие user-agent вообще или содержащие заведомо плохой заголовок.

В интернете есть списки таких заголовков. Вот, например, от некого Нила Гантона.

«Ловушка» для ботов

Суть этого метода заключается в создании специального раздела сайта вроде "/bot/guestbook". Ссылка на этот раздел не видна для пользователя, однако если бот зайдёт в этот раздел и сделает там хоть что-нибудь, то его IP тут же блокируется.
Раздел должен содержать лакомые для бота слова вроде «email», «submit», «add comment» и тому подобные. Файл «robots.txt» предупреждает хороших ботов.
Хеширование формы (BarsMonster)

При сабмите формы на сервер вычисляется хеш полей формы и добавляется в одно из специальных скрытых полей. Сервер проверяет значение хеша.
Использование прозрачных кнопок (BarsMonster)

У формы есть несколько кнопок типа <input type="image". Лишь на одной из картинок написан текст, остальные — прозрачные. Для сабмита пользователь должен нажать на картинку с текстом.
Динамическое создание формы (maxshopen)

Сама форма полностью создаётся javascript-методом динамчески. Таким образом, форму может увидить лишь пользователь, у которого отработал соответствующий скрипт.
Использование сторонних сервисов (le0pard)

Можно туннелировать трафик через специальный сервис, предназначенный для анализа контента на спам. Примером такого сервиса может быть Akismet
Гибридный подход

По умолчанию форма защищена каким-либо javascript-методом (динамическое создание формы или шифрование данных) или методом из приведённых выше. Если форма была засабмичена некорректно, то возвращается ошибка и просьба заполнить не очень простую капчу.
Важные замечания

Раз. Приведённые выше методы не являются универсальной защитой от ботов. Они не спасут от прямой атаки, но смогут помочь от ботов-пауков.

Два. Пост не рассматривает слабые стороны методов. Это можно обсудить в комментариях.

Три. Заинтересовавшимся рекомендую почитать пост некого Нила Гантона (на английском).

UPD: Добавил несколько методов из комментариев. Спасибо, BarsMonster.

UPD2: Добавил ещё один метод из комментариев.
Спасибо, maxshopen, за отличную критику методов.

UPD3: Добавил ещё один метод из комментариев. Спасибо, maxshopen.

UPD4: Добавил ещё один метод из комментариев. Спасибо, le0pard.
mprokopov кинул ссылку на спам-блок плагин для рельсов: snook

Заключение

Увы, мне удалось найти не так много методов защиты веб-форм.

А какие ещё безкапчевые методы защиты вы знаете?

Как защитить свой сайт от спам-ботов и поддельных подписок

Блог
  • получить демо
  • журнал в
  • каналов
  • Особенности
    • Автоматизация Создание автоматизированных рабочих процессов, отправляющих сообщения на автопилоте
    • КампанииСоздайте потрясающие кампании по электронной почте и SMS, чтобы дополнить вашу омниканальную стратегию
    • СегментацияУлучшите свой таргетинг с помощью полноценной сегментации для электронной торговли
    • Формы Превратите свой трафик в подписчиков с помощью динамических форм для захвата электронной почты
    • Content Editor Используйте наш гибкий визуальный редактор с перетаскиванием для создания красивых писем каждый раз
    • ОтчетыИспользуйте действенные отчеты с данными, необходимыми для совершенствования ваших кампаний
  • Стоимость
  • Партнеры
  • ресурсов
    • Ресурсы по COVID-19 Полезные ресурсы для брендов, которые хотят развивать и развивать свой онлайн-бизнес в эти нестабильные времена.
.

Как плохие боты вредят вашему сайту и что вы можете сделать, чтобы защитить его

  • Блог
  • Поддержка
  • Английский ⌄
    • Немецкий
    • Русский
    • Арабский
  • РЕШЕНИЯ
    • Производительность в Интернете и на мобильных устройствах
      • Статический и динамический CDN
      • Мульти CDN
      • Оптимизация и доставка изображений
      • Мобильная доставка
      • Доставка в Китай
      • Премиум DNS
      • Решения для потоковой передачи
    • Облачная безопасность
      • Защита от DDoS-атак
      • Межсетевой экран облачных веб-приложений
      • Защита центра обработки данных
      • DNS и защита инфраструктуры
      • Безопасность приложений и сети
      • Защита от ботов
      • Защита от мошенничества
      • Безопасность API
      • SD-WAN
      • Безопасность без доверия
      • Платформа управления идентификацией
      • Безопасность Kubernetes
    • Облачная производительность
      • Оптимизация затрат на облако
      • Программно определяемые операции
      • Маршрутизация, оптимизированная для облака
      • Мониторинг реального пользователя
      • Анализ журнала
    • Хостинг и оборудование
      • Размещение
.

security - Защита от «регистрационных ботов»?

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии
.

Как защитить свой список рассылки от ботов

Недавно мы объявили, что будем поддерживать однократную подписку на списки Mailchimp прямо из наших собственных форм подписки. Это вызвало много замечательных разговоров о доставляемости - некоторые из которых мы ожидали, а некоторые нас удивили.

Как человек, ответственный за доставку в Mailchimp, мне нравится, когда люди понимают, почему это важно. Составление здорового списка - важный первый шаг на пути к входящей почте, и мы обладаем огромным опытом, помогая нашим клиентам делать и то, и другое.Мы проделали большую работу по разработке сложных и интеллектуальных систем, чтобы снизить риски, когда-то связанные с однократной подпиской, но в прошлом мы мало говорили об этом. Я хотел бы подробнее рассказать о том, как мы защищаем ваши списки и помогаем вам добраться до почтовых ящиков.

Как мы защищаем репутацию отправителя

Одна из самых больших проблем, которые мы слышали о нашем шаге по поддержке единого согласия, заключается в том, что это может повлиять на нашу репутацию отправителя. Вот более подробные шаги, предпринятые Mailchimp для защиты этой репутации:

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

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

Конечно, мы заботимся обо всех наших IP-адресах, поэтому мы склонны думать об этих уровнях IP как о хороших, лучших и лучших. Это примерно соответствует 2-3-звездочным, 4-звездочным и 5-звездочным подписчикам.Каждый подписчик начинается с 2 звездочек, и они получают дополнительные звезды, когда открываются и со временем нажимают больше на ваши электронные письма. По замыслу наш алгоритм довольно консервативен. Это гарантирует отличные 4- и 5-звездочные подписчики, но это также означает, что 2- и 3-звездочные подписчики по-прежнему генерируют много открытий и кликов, когда их принимают как группу. Это взаимодействие - вот что делает действительно сильными даже наши IP-адреса самого низкого уровня.

На нашей странице доставки вы можете увидеть, как наша репутация IP сравнивается с некоторыми из наших конкурентов в разделе Sender Score.Мы также используем эту страницу для публикации наших показателей отказов и времени доставки для 5 наших крупнейших интернет-провайдеров. Один из способов снизить показатель отказов - это наличие системы предотвращения злоупотреблений, которая постоянно отслеживает и анализирует списки.

Восстание ботов

Еще одна проблема, о которой мы слышали, касается ботов - в конце концов, в Интернете их полно. Если вы управляли веб-сайтом или даже онлайн-формой, я уверен, что вы понимаете, о чем я говорю. Есть боты, которые заполняют формы с тысячами поддельных адресов электронной почты.Есть и другие боты, которые заполняют тысячи форм с одного реального адреса электронной почты. Вы можете узнать больше об этом типе атак, выполнив поиск по таким словам, как «подписка на бомбу», «подписка на бомбу» и «рассылочная бомба».

Формы двойного согласия предлагают некоторую защиту от ботов, но они не идеальны. Каждый раз, когда отправляется форма двойной подписки, Mailchimp отправляет электронное письмо с подтверждением на указанный адрес. Если этот адрес был отправлен в вашу форму обманным путем, очень маловероятно, что получатель подтвердит и попадет в ваш список.Конечно, это по-прежнему плохо для получателя, который получает электронные письма с подтверждением, инициированные ботом, в своем почтовом ящике, поэтому двойной выбор в этом случае не является надежным.

Для борьбы с атаками на несколько списков мы внедрили простую частоту дросселирования, которая предотвращает добавление одного адреса в несколько списков за короткий период времени. У нас есть другой тип дроссельной заслонки, который срабатывает, когда боты атакуют один список. Оба эти метода регулирования работают как для форм одиночного согласия, так и для форм двойного согласия, но есть ключевое различие.Прежде чем дросселирование сработает, атакованный адрес получит приветственное письмо и будет добавлен в любой список, использующий единую форму согласия. При двойном включении атакованный адрес получит электронное письмо с подтверждением, но он не будет добавлен в список, пока не будет нажата кнопка подтверждения. Хотя наши скорости дросселирования могут ограничить влияние ботов, дросселирование не устраняет проблему полностью.

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

Это эволюция

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

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

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

.

Смотрите также

Поделиться в соц. сетях

Опубликовать в Facebook
Опубликовать в Одноклассники
Вы можете оставить комментарий, или ссылку на Ваш сайт.

Оставить комментарий