Страницы

Поиск по вопросам

четверг, 13 февраля 2020 г.

Защита от ботов

#алгоритм #защита


Какие НЕСТАНДАРТНЫЕ методы существуют для защиты сайта от ботов, чтобы они не могли
тыкать и посылать запросы по определенной ссылке? Какие у Вас оригинальные мысли есть
по этому вопросу? :)
Captcha меня не устраивает, т.к. она достаточно надоедливая штука, и не оригинальная...
Почему я задаю этот вопрос, а не ищу в интернете:
В интернете конечно есть кучу информации по этому вопросу, и гугл выдаст мне примерно
6 770 000 (0,15 сек.) данных. Но на первых местах будут статьи, ссылки, теории о стандартных
методах ухода от ботов. А чем более стандартный метод защиты - тем больше над обходом
этого метода задействовано средств. Т.е. - тем более стандартный существует метод обхода.
Поэтому я решил задать вопрос тут, и узнать мысли у Наших Специалистов!

Известные мне защиты:

Капча-обыкновенная (она же картинка) - дается пользователю картинка с искаженным
текстом, необходимо ввести этот текст. 

Недостатки: Многие виды современных капчей-картинок распознать тяжело, даже если
Вы не робот.
Вариант обхода: Распознается с помощью OCR или специальных сервисов типа антигейт

Текстовая капча (или вопрос-ответ) - дается пользователю текст (или картинка) с вопросом,
например сложите 2 числа.

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

Интерактивная капча - дается пользователю задание, которая решается манипуляцией
объектов на странице. Например есть 4 картинки с надписями (1,2,3,4) их необходимо
перетащить в область по возрастанию. Вот например.

Недостатки Необходимо тестировать на всех браузерах (или ограничивать браузеры)
Вариант обхода В принципе можно ухитриться на JS, но тут надо хорошо подумать бото-писателю )

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

Варианты обхода эмулятор браузера, бот бродит в точности как человек.

Еще одно ухищрение JS - при нажатии на кнопку, отправляются координаты нажатия на кнопку

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

сервисы фильтрации спама основана на вычленении каких-то признаков спама из текста
сообщений и может быть IP адресов, может быть куках браузера

Недостатки Не способна защитить формы регистрации, или какие-либо другие произвольные
формы
Вариант обхода С помощью управляемого браузера и не сильно агрессивного поведения
бота, можно спамить

Вот, что первым пришло в голову :) Суть вопроса еще в том, чтобы немного повысить
свой багаж знаний. По данным ответам и комментариям уже появились новые мысли в этом
направлении...    


Ответы

Ответ 1



Ну хорошо, давайте устроим мозговой штурм. Замените ссылки a href=... на css-класс + привязанным к этому классу события в js. Уберите ссылки вообще, пусть ваши пользователи вместо этого пишите инструкции для пользователей (Чтобы выполнить запрос А, добавьте к адресу текущей страницы GET-параметр B со значением C...) Сделайте сайт в фреймах, нижний фрейм будет выполнять роль консоли, в которой пользователь пишет некоторые данные, которые от него требуются в верхнем фрейме. Данные будут синхронизироваться при помощи localStotage, comet или ajax. Используйте ссылки-капчи. Допустим есть ссылка "Продолжить", после нее в скобках стоит (нажмите на первую половину слова). Вариант п. 4. Сделайте три ссылки "Продолжить" с указанием какую именно их них нажать (ссылки могут быть разного цвета).

Ответ 2



Фильтрация пользователей без поддержки JS & cookie. Ограничение периодичности запросов на сервер. В hidden readonly input средствами JavaScript записывается хеш-код информации всех полей формы. Значение повторно вычисляется на сервере и сравнивается с полученным. Проверка useragent Установить минимально допустимое время на заполнение формы. Обфускация или шифрование HTML & JS Установка капчи только для неавторизированных пользователей или новичков. Вот еще мой любимый, но немного странный способ (перенаправление запросов через JS).

Комментариев нет:

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