LINUX.ORG.RU

Какую тактику в борьбе с ботами на сайте выбрать?

 , , , ,


0

3

Анализировать источники по user-agent ip подсети и отсекать..

.htaccess какие хаки и лайфхаки есть?

Что ещё можно применить??

Яндекс капту,cloudflare не предалагать.

Отсечь тех ботов которые ПФ скручивают и накручиваю.

Мне это сео нафиг не нужно.

Тут инфобез интересует.

Может в дебрях github сушествует javascript который по фингерпринтинг отсекает ?



Последнее исправление: antonio-an (всего исправлений: 2)

При первой загрузке страницы показываешь юзеру «Проверка безопасности, пожалуйста, подождите». В это время спаунишь Web Worker, который брутит SHA256 с N ведущих нулевых бит. После успеха сабмиттишь результат на бекэнд и он ставит некий токен в куках (для простоты можно JWT). При наличии этого токена последующие запросы идут без этой проверки (можно вести учёт использования таких сессий со стороны бекэнда и если подозрительно много запросов за единицу времени инвалидировать токен, чтобы юзер снова проходил проверку).

N подбирается таким, чтобы даже на слабых устройствах «проверка» проходила за 2-3 секунды, не больше.

Но вообще надо определиться от чего защищаешься. Если от скрапинга публично доступных данных, то тут вопрос лежит не в технической, а в психологической сфере. Походи к психологу, поработай над навыками принятия ситуации. С сервером ничего делать не нужно. Ну кроме простейших вещей типа подгрузки данных с помощью JS вместо статического рендеринга (но это автоматически прощай индексация поисковиками, сайт не могут найти - сайт умер). Простых ботов, которые просто парсят HTML остановит, ботов которые запускают headless браузер и могут выполнять JS не остановит НИЧЕГО (если данные доступны без авторизации). Многократно проверено.

Если защищаешься от спама или брутфорса формы логина, то капча/proof-of-work описанный выше. Ещё опционально временный бан по IP, если слишком много неудачных попыток.

KivApple ★★★★★
()
Последнее исправление: KivApple (всего исправлений: 1)
Ответ на: комментарий от KivApple

показываешь юзеру «Проверка безопасности, пожалуйста, подождите».

  • пользователь ушел
  • бот дождался
  • можно побеждать ботав!
anonymous
()

Анализировать источники по user-agent ip подсети и отсекать..

Тем индивидам, которые смотрят на user-agent и выкатывают дополнительные проверки/заглушки только исходя из него тоже хочется что–нибудь ненужное отсечь. Например, верхнюю конечность с неразвившимся нервным ганглием.

Для ботов не составляет никакой проблемы написать другую строчку в куске питонокода. А вот когда на пустом месте, только из–за «устаревшего» UA отваливаются ретроплатформы, где браузер нельзя поменять в принципе — это раздражает невероятно.

anonymous
()

Перенаправляй ботов на генератор бесконечных бредовых страниц.

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

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

Stanson ★★★★★
()
Ответ на: комментарий от KivApple

При первой загрузке страницы показываешь юзеру «Проверка безопасности, пожалуйста, подождите». В это время спаунишь Web Worker, который брутит SHA256 с N ведущих нулевых бит. После успеха сабмиттишь результат на бекэнд и он ставит некий токен в куках (для простоты можно JWT). При наличии этого токена последующие запросы идут без этой проверки (можно вести учёт использования таких сессий со стороны бекэнда и если подозрительно много запросов за единицу времени инвалидировать токен, чтобы юзер снова проходил проверку).

Как сказать «используй Anubis» не упоминая про Anubis…

…подгрузки данных с помощью JS вместо статического рендеринга…

Не спасает от нормальных скраперов с полноценным DOM и инструментированных браузеров. Также не спасает от целенаправленного раздёргивания скриптами, если пишется граббер под ваш конкретный сайт. Зато неимоверно выбешивает всех, у кого JS по умолчанию выключен.

anonymous
()
Ответ на: комментарий от KivApple

показываешь юзеру «Проверка безопасности, пожалуйста, подождите».

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

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

Stanson ★★★★★
()

Какую тактику в борьбе с ботами на сайте выбрать?

Зачем ты борешься с ботами? Тебе байтов жалко, электричества или ты обеспокоен износом своего вычислительного оборудования? Если уж ты решил рассказать о себе в мировой сети, то придется нести издержки. А своей борьбой с поисковыми роботами ты только обычным людям жизнь усложнишь, а пользы никакой не принесешь.

Enthusiast ★★★★
()

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

jura12 ★★★
()
Ответ на: комментарий от Sylvia

Китайские, вьетнамские и сингапурские нейронки смотрят на эти правила со смехом, т.к. давно мимикрируют под валидные клиентские UA.

Dimez ★★★★★
()
Последнее исправление: Dimez (всего исправлений: 2)

Сначала берешь базу подсетей хостеров и банишь их.

anonymous
()

А ты пробовал предлагать выбрать все картинки со светофорами?

LightDiver ★★★★★
()

даже гугл не знает, как боротьс с ботами. Если в тырнетик через мобильник лезть, то регулярно обвиняют в ботоводстве.

TPPPbIHDELj ★★
()
Ответ на: комментарий от Dimez

лучше чем ничего.

для WordPress в виде плагина реализация получше, например есть (ну или раньше было точно) определение допустимых диапазонов IP/AS в отношении к User-Agent.

.htaccess - вообще вариант сам по себе плохой, для шаред хостингов, для тех, кто не может поставить nginx и написать правила для (x)tables, использовать fail2ban...

Sylvia ★★★★★
()
Ответ на: комментарий от Dimez

По ссылке не фильтр UA а фильтр урлов для дырявых вордпрессов и подобного.

firkax ★★★★★
()

Думаю стоит развивать законодательную тактику - объявить ботов, не шлющих заголовок I-Am-Bot: true вне закона, нарушителям отключать интернет и штрафовать. Тогда эвристические алгоритмы придётся только для иностранных айпи применять, что заметно снизит уровень проблемы.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

это потом, а пока
https://www.rbc.ru/technology_and_media/27/04/2026/69ede8fb9a7947ae89a66727
Правительство РФ смягчило ряд требований законопроекта о регулировании искусственного интеллекта, которые ранее подверглись критике со стороны бизнеса. В числе прочего для обучения больших языковых моделей можно будет использовать любые данные.

Bad_ptr ★★★★★
()
Ответ на: комментарий от Bad_ptr

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

firkax ★★★★★
()
Ответ на: комментарий от legolegs

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

Paka_RD
()
Ответ на: комментарий от Paka_RD

отдавай контент на canvas.

Отличный вредный совет! Григорий Остер смотрит с одобрением.

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

Воющий на полные обороты кулер, жор памяти, неработающие копипаст, масштабирование и чтение с экрана (привет слабовидящим) — посетители ведь это так любят, так любят…

А роботам пофигу. Для гуглбуксов существует экстрактор и не один, для slideshare и подобных документопомоек — тоже. Если человек ставит целью не просто посещать ваш сайт, а дербанить его на контент — такие мелочи его не остановят.

Сайт для людей — это максимально простая и линейная вёрстка, чтобы шаблонизатор выплёвывал странички за один проход, оптимизированные запросы к БД, кэширование ответов БД и готовых страничек, статика на cdn. Чтобы безразлично было, набежит ли толпа человеков или толпа роботов — всё работает даже под нагрузкой.

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

anonymous
()
Ответ на: комментарий от anonymous

Из перечисленного - только чтение с экрана будет проблемой. Откуда жор cpu? Браузеру так дорого полученный битмап выложить? А как способ верстки от работы с БД зависит? Ну разве что в случае oracle apex :)

Paka_RD
()

Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария