Не позволяя сценаристам захлопнуть ваш сайт

Поскольку я не нашел jQuery-бесплатный ответ, который я мог бы скопировать / вставить, вот решение, которое я использовал:

function clickEvent(e) {
  // e = Mouse click event.
  var rect = e.target.getBoundingClientRect();
  var x = e.clientX - rect.left; //x position within the element.
  var y = e.clientY - rect.top;  //y position within the element.
}

JSFiddle полного примера

486
задан 14 revs, 6 users 53% 4 May 2018 в 17:37
поделиться

125 ответов

Я просто задаюсь вопросом, могло ли быть простое решение этого.

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

, Что, если Вы сделали объявление с помощью изображения вместо этого? Выполнение так могло бы изложить некоторые проблемы проектирования, но они могли быть преодолены и возможно служить импульсом для некоторой оригинальной креативности.

Выпуском № 1
Там должно было бы быть некоторое пространство дизайна, выделенное изображению. (Хотите быть действительно хитрыми? Поверните локальную рекламу через этот слот. Конечно, название изображения должно было бы быть статичным, чтобы не давать скребкам аромат. Это - один слот, который никогда не должен был бы волноваться о слепоте рекламы...)

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

я не знаю..., что они просто программировали бы своих ботов для удара сайта каждый раз, когда объект канала вышел?

Другие проблемы? Вероятно, много. Возможно, это поможет с некоторой мозговой атакой, все же.

Заботятся,
Brian

0
ответ дан 5 May 2018 в 03:37
поделиться

Что относительно Управление NoBot от Ajax ASP.net управляют инструментарием?

Это делает некоторые автоматизировали запрос JavaScript и синхронизирующие приемы, чтобы препятствовать тому, чтобы боты получили доступ к сайту без взаимодействия с пользователем.

Жаль, если это не отвечает некоторому требованию, я должен буду просто звонить
tl; доктор> D

0
ответ дан TJB 5 May 2018 в 03:37
поделиться

Вот некоторые допустимые предположения для Вас для создания:

  • Любое автоматическое решение может и повреждаться.
  • Создание сайта полностью потребовать человеческого входа (например, КАПЧА) значительно увеличит трудность входа в/и т.д.
  • у Вас есть ограниченное количество Нагрудных патронташей Капусты для продажи.
  • можно отследить пользователей сессией через клиентский cookie.
  • Вы не имеете дело с чрезвычайно жесткими преступниками здесь; это просто технические люди, которые изгибаются, но не повреждаются, закон. Успешные заказы с помощью ботов перейдут к дому человека и вероятно не некоторому стороннему почтовому отбрасыванию.

решением не является техническое. Это - политика один.

  • Журнал все клиентские идентификаторы сессии на Вашем веб-сервере.
  • Выполняют "ограниченных ботов" политика; скажите, одно экранное царапанье каждые X секунды, чтобы дать людям с регулярными браузерами способность поразить обновление. Любой пользователь, который, как находят, пробегался через этот предел, не выигрывает woot.
  • Развивают это путем отправки известным владельцам ботов набора Leakfrogs.
0
ответ дан Mark 5 May 2018 в 03:37
поделиться

Вот то, что я сделал бы:

  1. Требуют, чтобы все участники торгов для мешка загаженных продаж зарегистрировались в сайте.
  2. , Когда Вы хотите запустить продажу, сообщение "продажа BOC, запускающаяся скоро, проверяют Вашу электронную почту, чтобы видеть, имеете ли Вы право" на Вашей основной странице.
  3. Отсылают приглашения на случайный выбор зарегистрированных плееров, с URL, уникальным для той конкретной продажи, когда продажа запускается.
  4. Гарантируют, что используемый URL отличается для каждого события продаж.
  5. Тонкая настройка случайный алгоритм приглашения выбора к выпадающему elibiblity для частых победителей, основанных на Кредитной карте, используемой для покупки, счета PayPal или адреса поставки.

Это мешает ботам, поскольку Ваша основная страница только показывает незаконченное событие BOC. Боты не будут иметь доступа к URL, не получая его в электронном письме и не иметь никакой гарантии, они получат его вообще.

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

Viola. Единое игровое поле, без тонн эвристики и анализа веб-трафика. Система может все еще играться людьми, настраивающими огромные числа почтовых ящиков, но настраивающий участвующие критерии выбора CC#, счетом PayPal, адрес поставки смягчает это.

0
ответ дан Simon 5 May 2018 в 03:37
поделиться

Существует несколько решений, которые Вы могли взять, на основе уровня сложности, в которую Вы хотите войти.

Они - все на основе отслеживания IP, которое разваливается несколько в соответствии с ботнетами и облачными вычислениями, но должно мешать подавляющему большинству botters. Возможности, что у Joe Random есть облако ботов в его распоряжении, намного ниже, чем шанс, что он просто запускает бота Woot, которого он загрузил где-нибудь, таким образом, он может получить свой мешок дерьма.

Простая Регулировка

На очень простом, сыром уровне, Вы могли отрегулировать запросы на IP в период времени. Сделайте некоторый анализ и решите, что законный пользователь получит доступ к сайту не больше, чем X раз в час. Запросы ограничения на IP в час в том числе и боты должны будут решительно уменьшить свою частоту запросов, или они заблокируют себя в течение следующих 58 минут и будут абсолютно слепыми. Это не решает проблему бота отдельно, но она действительно уменьшает загрузку и увеличивает шанс, что у законных пользователей будет выстрел в объект.

Адаптивная Регулировка

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

End-of-the-line капча

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

комбинация А вышеупомянутого

Реализация основная, щедрая регулировка для остановки самого оскорбительного из ботов, при принятии во внимание потенциала для нескольких законных пользователей позади единственного корпоративного IP. Число сокращения было бы очень высоко - Вы процитировали ботов, поражающих Ваш сайт 10x/sec, который является 2,16 миллионами запросов/час, который является, очевидно далек выше любого законного использования, даже для самых больших корпоративных сетей или совместно использованного дюйм/с

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

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

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

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

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

Дроссель Приложения

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

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

, Который оставляет botter без обращения за помощью, но выполнять сеть ботов с одним ботом на IP и зарегистрированной учетной записью Woot на бота. Это, к сожалению, эффективно неотличимо от большого количества несвязанных законных пользователей.

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

0
ответ дан 3 revscheald 5 May 2018 в 03:37
поделиться

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

я думаю, что необходимо было бы добавить дополнительный критерий, которым боты не могут экранное царапанье или управлять от их конца. Например, скажите в любое время существует 5 000 человек, поражающих страницу несколько раз минута, ища мешок дерьма и 50 ботов, хлопающих им каждую секунду. За первые несколько секунд после того, как это появится, эти 50 ботов собираются накинуться на все это.

Так, Вы могли добавить условие, что дерьмо кажется первым любым пользователям, где модуль, 30 из их целочисленного IP являются случайным числом, говорят 17. Возможно, другое случайное число добавляется каждую секунду, таким образом, дерьмо показано инкрементно всем клиентам более чем 30 секунд.

Теперь воображают то, что происходит за первые несколько секунд: в настоящее время все 50 ботов могут накинуться на все дерьмо сразу, и люди добираются 0. В соответствии с этой схемой, после 6 секунд удались только 10 ботов, в то время как 1 000 человек прошли, и большая часть дерьма переходит к людям. Вы могли играть с синхронизациями и случайным модулем, чтобы попытаться оптимизировать тот интервал, в зависимости от пользовательских количеств и доступных единиц.

Не идеальное решение, а улучшение. Позитивный аспект является значительно большим количеством людей, чем боты извлекут выгоду. Существует несколько оборотных сторон, главным образом это не, каждый человек получает равный выстрел в дерьмо в какой-то конкретный день - хотя у них нет большой части выстрела теперь, и я предположил бы даже без ботов, большинство из них закрывается наугад, если они, оказывается, не обновляются в просто правильную секунду. И, это не работало бы над ботнетом с большим количеством распределенного дюйм/с, не знают, гадит ли чье-либо действительно использование ботнета только для woot все же.

0
ответ дан Dogwelder 5 May 2018 в 03:37
поделиться

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

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

0
ответ дан MrDatabase 5 May 2018 в 03:37
поделиться

Я не вижу, почему фильтрация IP-адреса должна быть непомерно дорогой. С IIS можно создать фильтр ISAPI, чтобы сделать это в собственном коде. Я уверен, что у апача есть подобные интерфейсы. Используя IP-адрес клиента, можно записать простой ограничитель уровня для Запросов HTTP, который не зависит от списка запрещенных товаров или другой такой ерунды.

0
ответ дан a_mole 5 May 2018 в 03:37
поделиться
  1. Tarpit. Ограничение просмотров страницы к 1 в секунду не побеспокоит пользователей - людей.
  2. Ссылки через JavaScript. Простые боты не роют это. с удобства использования, шоу статистики, что меньше затем 1% пользователей не использует JS. 2a. жесткая версия вышеупомянутых. Ссылки в Flash.
  3. параметры, сохраненные на сессии, скорее затем в строке запроса. Большая часть бота является не сохраняющей состояние.
0
ответ дан vartec 5 May 2018 в 03:37
поделиться

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

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

Используют в своих интересах питание обработки изображений людей с массовым параллелизмом!

0
ответ дан scottynomad 5 May 2018 в 03:37
поделиться

Сделайте сканирование сайта дорогим.

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

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

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

0
ответ дан Mathias F 5 May 2018 в 03:37
поделиться

Чтобы гарантировать продающие товары только людям нев виде сценария, Вы могли обнаружить бесчеловечно быстрые ответы между объектом, отображаемым на первой полосе и сделанным порядком? Это переворачивает тактику задержки с ног на голову, вместо того, чтобы затруднить всех искусственно через.5 вторых задержек, позвольте запросы максимально быстро и ботов вкуса, которые являются явно сверхчеловеческими:)

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

, только используя КАПЧИ приблизительно из времени приемлемы, Вы могли увеличить время задержки до быстрого человека (в противоположность сверхчеловеческому) и потребовать КАПЧИ подтверждения сообщения, если кто-то нажимает действительно быстро. Сродни тому, как некоторые сайты требуют подтверждения КАПЧИ, если кто-то отправляет несколько сообщений быстро.

Печально я не знаю ни о каких хороших способах остановить экранные скребки Ваших списков продуктов :(

0
ответ дан Ryan 5 May 2018 в 03:37
поделиться

Мое Мнение как долговременный WOOTer

я был бы рад иметь КАПЧУ на упорядочивании, включенный только для BOC. Я думаю, что большая часть wooters согласилась бы. Плюс, 99,9% времени Вы даже не добираетесь до экрана порядка, потому что он распродает настолько быстро, так едва кто-либо даже знал бы!!

, Если Вы делаете КАПЧУ действительно трудной математической проблемой, я смогу наконец объяснить своей маме практическое преимущество такого количества лет учащейся математики.

0
ответ дан Mark Harrison 5 May 2018 в 03:37
поделиться

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

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

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

оборотная сторона путания ада из ботов - то, что это также перепутает ад из поисковых роботов поисковой системы.

0
ответ дан Sylverdrag 5 May 2018 в 03:37
поделиться

Во-первых, позвольте мне резюмировать то, что мы должны сделать здесь. Я понимаю, что просто перефразирую исходный вопрос, но важно, чтобы мы получили это 100% прямо, потому что существует много больших предложений, которые вытаскивают 2 или 3 из 4 прав, но как я продемонстрирую, Вам будет нужен многоаспектный подход для покрытия всех требований.

Требование 1: Избавление от 'хлопанья бота':

Скоропалительное 'хлопанье' Вашей первой полосы повреждает функционирование Вашего сайта и в ядре проблемы. 'Хлопанье' прибывает и из ботов единственного IP и из - предположительно - из ботнетов также. Мы хотим избавиться от обоих.

Требование 2: не смешивайте с пользовательским опытом:

Мы могли зафиксировать ситуацию с ботом довольно эффективно путем реализации противной процедуры проверки как вызов по телефону человеческому оператору, решив набор КАПЧЕЙ, или подобный, но это будет похоже на то, чтобы вынуждать каждого невинного пассажира самолета перейти через сумасшедшие обручи безопасности только для небольшого шанса ловли очень самый глупый из террористов. О, ожидайте - мы на самом деле делаем это. Но давайте посмотрим, не можем ли мы сделать этого на woot.com.

Требование 3: Предотвращение 'гонки вооружений':

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

Требование 4: Срыв 'сигнальных' ботов:

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


Хорошо, поэтому позвольте нам se, если мы можем отвечать всем четырем требованиям. Во-первых, как я упомянул, никакая мера не собирается добиться цели. Необходимо будет объединить несколько приемов для достижения его, и необходимо будет глотать два раздражения:

  1. Небольшое количество пользователей потребуется, чтобы переходить через обручи
  2. Небольшое количество пользователей будет не мочь получить специальные предложения

Я понимаю, что они являются раздражающими, но если мы можем сделать 'маленькое' количество достаточно маленьким, я надеюсь, что Вы согласитесь, что положительные стороны перевешивают отрицательные стороны.

Первая мера: основанная на пользователе регулировка:

Этот - легкая задача, и я уверен, что Вы уже делаете это. Если пользователь зарегистрирован и продолжает обновляться 600 раз в секунду (или что-то), Вы прекращаете отвечать и говорите ему охлаждать его. На самом деле Вы, вероятно, регулируете его запросы значительно раньше, чем это, но Вы получаете идею. Таким образом, зарегистрированный бот будет запрещаться/регулироваться, как только он начинает опрашивать Ваш сайт. Это - легкая часть. Неаутентифицируемые боты являются нашей настоящей проблемой, таким образом, на них:

Вторая мера: Некоторая форма регулировки IP, как предложено почти всеми:

Независимо от того, что, необходимо будет сделать некоторую основанную на IP регулировку для срыва 'хлопанья бота'. Так как для Вас кажется важным позволить неаутентифицируемый (невошел в систему) посетители для получения специальных предложений, у Вас только есть дюйм/с, чтобы пройти первоначально, и хотя они не прекрасны, они действительно работают против ботов единственного IP. Ботнеты являются другим зверем, но я возвращусь тем. На данный момент мы сделаем некоторую простую регулировку для избиения скоропалительных ботов единственного IP.

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

Третья мера: Сокрытие дросселя с кэшируемыми ответами:

Со скоропалительными ботами единственного IP, которых отрегулировали, мы все еще должны обратиться к медленным ботам единственного IP, т.е. ботам, которых конкретно настраивают для 'полета под радаром' путем интервала запросов немного далее независимо, чем регулировка предотвращает.

Для мгновенного рендеринга медленных бесполезных ботов единственного IP просто используйте стратегию, предложенную abelenky: служите 10-минутным старым кэшируемым страницам всему дюйм/с, которые были определены за прошлые 24 часа (или так). Тем путем каждый IP получает один 'шанс' в день/час/неделю (в зависимости от периода, который Вы выбираете), и не будет никакого видимого раздражения реальным пользователям, которые просто поражают 'перезагрузку', за исключением того, что они не выигрывают предложение.

Красота этой меры, это - также банки 'сигнальные боты', пока они не происходят из ботнета.

(Я знаю, что Вы, вероятно, предпочли бы его, если бы реальным пользователям разрешили обновиться много раз, но нет никакого способа сказать массово рассылающему обновление человеку от массово рассылающего запрос бота независимо без КАПЧИ или подобный),

Четвертая мера: reCAPTCHA:

Вы правы, что КАПЧИ повреждают пользовательский опыт и должны избежаться. Однако в _one_ ситуации они могут быть Вашим лучшим другом: при разработке очень строгой системы для срыва ботов, это - из-за его строгого - также ловит много ложных положительных сторон; затем КАПЧА, подаваемая как последнее прибежище, позволит тем реальным пользователям, которые пойманы для скольжения регулировкой (таким образом избегающий раздражающих ситуаций DoS).

Зона наилучшего восприятия, конечно, когда ВСЕ боты пойманы в Вашей сети, в то время как чрезвычайно немного реальных пользователей побеспокоены КАПЧОЙ.

Если Вы, при подавании 10-минутных старых кэшируемых страниц, также предлагаете альтернативное, дополнительное, проверенное КАПЧОЙ 'размещенное на первой полосе напоминание', то люди, которые действительно хотят продолжать обновляться, могут все еще сделать так, не получая старую кэшируемую страницу, но за счет необходимости решить КАПЧУ для каждого обновления. Это - раздражение, но дополнительный только для несгибаемых пользователей, которые склонны быть более прощающими, потому что они знают, что играют система для улучшения их возможностей, и это улучшилось, возможности не прибывают свободные.

Пятая мера: Ложное дерьмо:

У Christopher Mahan была идея, что мне скорее понравилось, но я помещу другое вращение на него. Каждый раз Вы готовите новое предложение, готовите два других 'предложения' также, что никакой человек не выбрал бы, как 12-миллиметровая крыльчатая гайка за 20$. Когда предложение появится на первой полосе, поместите все три 'предложения' в то же изображение с числами, соответствующими каждому предложению. Когда пользователь/бот на самом деле продолжает заказывать объект, они должны будут выбрать (переключатель), которые предлагают, они хотят, и так как большинство ботов просто предположило бы, в два из трех случаев, боты будут покупать бесполезный спам.

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

Шестая мера: Регулировка Ботнета:

[удаленный]

Хорошо............ Я теперь провел большую часть своего вечера, думая об этом, пробуя разные подходы.... глобальные задержки.... основанные на cookie маркеры.. обслуживание с очередями... 'незнакомец, регулирующий'.... И это просто не работает. Это не делает. Я осознал главную причину, почему Вы не признали, что любой ответ все же был то, что никто не предложил способ мешать распределенному/зомби нападению сети/ботнета...., таким образом, я действительно хотел взломать ее. Я полагаю, что взломал проблему ботнета для аутентификации в другом потоке, таким образом, у меня были большие надежды на Вашу проблему также. Но мой подход не переводит в это. У Вас только есть дюйм/с, чтобы пройти, и достаточно большой ботнет не показывает себя ни в каком анализе на основе IP-адресов.

Таким образом, там у Вас есть он: Моей шестой мерой является ничто.Ничего. Zip. Если ботнет не является маленьким и/или достаточно быстрым, чтобы быть пойманным в обычном дросселе IP, я не вижу эффективной меры против ботнетов, которая не включает явную человеческую проверку, такую как CAPTHAs. Я сожалею, но я думаю, комбинируя вышеупомянутые пять мер, Ваш лучший выбор. И Вы могли, вероятно, сделать очень хорошо с одним только просто приемом abelenky с 10 мелкими кэшированиями.

7
ответ дан 22 November 2019 в 22:41
поделиться

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

2
ответ дан 22 November 2019 в 22:41
поделиться

использовать ограничение одновременных подключений для каждого IP-адреса через iptables на сервере (если он основан на Linux) или использовать выделенный «маршрутизатор»

0
ответ дан 22 November 2019 в 22:41
поделиться

Предварительные оговорки:

Я не разбираюсь в сценариях; Я не читал здесь многих других комментариев.

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

Woot находится в уникальном положении, где он одновременно коммерческий сайт и пункт назначения с лояльными пользователями, и я понимаю кажущуюся хрупкость этого баланса. Но лично я считаю, что ваше беспокойство по поводу «негативного воздействия на пользователя» Crap-CAPCHA («CRAPCHA» - почему-то я сомневаюсь, что я первый, кто делает эту шутку) сильно преувеличено. Как пользователь, я буду счастлив доказать, что я человек. И я верю, что Woot сделает процесс увлекательным и интересным, интегрируя его в общий опыт.

Приведет ли это к предполагаемой «гонке вооружений»? Я не знаю, но это может только помочь. Если, скажем, ключевая информация для покупки включена в изображение продукта или подразумевается в описании продукта (каждый раз по-разному), лучшее, что может сделать сценарий, - это открыть страницу покупки при обнаружении C-слова. На самом деле, я думаю, что это нормально: от вас по-прежнему требуется быть в сети, и все еще применяется принцип «первым пришел - первым обслужен» - Wootalyzer и подобные инструменты просто повышают осведомленность , а не автоматизируют покупки, пока я сплю или Работа.

Удачи в этом разобраться, и продолжайте в том же духе.

JGM

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

Удачи в этом разобраться, и продолжайте в том же духе.

JGM

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

Удачи в этом разобраться, и продолжайте в том же духе.

JGM

0
ответ дан 22 November 2019 в 22:41
поделиться

You should have some record of the users who have purchased BOC most often, why not just ban those accounts or something. Sure legit users will be banned in this process but you are a business providing a product and if your are being abused by a group of users and such you have the right to refuse service to them. You have a lot of info on your users including paypal and bank accounts, you could ban those accounts forcing the bot users to get new accounts. Certainly I could come up with a script to buy BOC all the time or just download one from the net, but I have better morals than that. Never actually having successfully purchased BOC, I know the frustration of legit users who would like to receive a BOC in the hopes of getting a great deal. Perhaps instead of offering a BOC as an individual item every once and awhile, you could just give it to random users every day. When they receive an item they get a little note and and an additional item saying they also received a BOC. Then the only way someone could get a BOC is if they legitimately purchased something that only an actual human would have wanted. There would be nothing better than purchasing a coffee maker or something and also receiving a 42" tv or something in addition to your legitimate purchase. I think the majority of script kiddies would no longer be interested in your site if in order to get a BOC they would also have to commit to a purchase of more than 10 dollars.

0
ответ дан 22 November 2019 в 22:41
поделиться

Как насчет продажи ключей RSA каждому пользователю :) Эй, если они могут сделать это для WoW, вы, ребята, должны уметь это делать.

Я ожидаю BoC за свой ответ; )

0
ответ дан 22 November 2019 в 22:41
поделиться

Что касается CAPTCHAing всех, почему бы не использовать решение Google, требующее CAPTCHA только с IP-адресов, которые вы подозреваете как ботов, или даже просто пользователей, которые забивают сайт? Я уверен, что просить кого-нибудь о CAPTCHA, когда они покупают, не так уж и плохо, если они все равно забивали сайт, это примерно то же самое, что не спать и несколько раз нажимать F5. Это или может потребоваться периодическая CAPTCHA при забивании, скажем, каждые сто (может быть, меньше?) Или около того обновлений, чтобы остановить работу тревожных роботов. Вам нужна какая-то CAPTCHA для предотвращения ботов, но вы также должны учитывать тот факт, что ваши настоящие пользователи будут действовать как боты.

0
ответ дан 22 November 2019 в 22:41
поделиться

Сегодня вы заработаете достаточно денег, чтобы заплатить за программу CAPTCHA от Cisco !! Мы все привыкли к ним покупать билеты на концерты и прочее ... Это только кажется справедливым. То, как это делается сегодня, некоторых расстраивает и вызывает вопросы о лотереях или розыгрышах. Я уверен, что вы проверили это до того, как попробовали, но это не совсем интересный способ покупать BOC ... Это избавляет от всего волнения!

Получение BOC в первую очередь или отличный продукт, даже будучи на виду, привлекает людей к Woot. Если нет причин торчать и покупать кучу ненужных вещей, ожидая появления случайного BOC, продажи упадут. CAPTCHA может быть единственным способом победить этих людей и сохранить волнение Woot.

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

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

Только мое мнение. Лори

0
ответ дан 22 November 2019 в 22:41
поделиться

Что если бы вы рандомизировали или зашифровали имена и идентификаторы форм, рандомизировали порядок полей формы и сделали метки формы случайным изображением капчи, что значительно усложнило бы атаку сценария :-D

0
ответ дан 22 November 2019 в 22:41
поделиться

2 вещи:

решение уровня сервера: mod_evasive (если вы используете apache)

http://www.zdziarski.com/projects/mod_evasive/

решение переднего уровня : обратная капча или другая ненавязчивая капча

http://www.ccs.uottawa.ca/webmaster/reverse-captcha.html

0
ответ дан 22 November 2019 в 22:41
поделиться

Сделайте всю чертову страницу CAPTCHA!
Вроде «Улица Сезам» ... восемь из этих вещей, здесь не место ...

Разместите на экране 9 элементов, 9 HTML-форм, 9 Я ХОЧУ ОДНУ кнопку.
(9 - это просто число на день ... выберите любое число, которое вы хотите, чтобы макет по-прежнему выглядел хорошо. Возможно, 12. Может быть, настройте его под разрешение загружаемого браузера ...)

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

0
ответ дан 22 November 2019 в 22:41
поделиться

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

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

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

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

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

0
ответ дан 22 November 2019 в 22:41
поделиться

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

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

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

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

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

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

• Вы не реализовали скучную, а иногда и мучительно трудную для чтения капчу. • вы сделали процесс более увлекательным, • вы снизили нагрузку на фактический сервер защищенных покупок • Вы научите пользователей, что им нужно что-то «ДЕЛАТЬ», чтобы получить BOC. • Вы остановите ботов на промежуточной странице, отложив их покупки до тех пор, пока у большинства людей не будет хотя бы возможности попытаться разгадать забавную, но не очень сложную головоломку.
• Поскольку случайность - это суть BOC, случайная и изменяющаяся головоломка / задача будет просто вписываться во всю высоту BOC.

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

я приобрел без помощи ботов или каких-либо скриптов, кроме Wootalyzer, который я считаю приемлемым подспорьем, 7 BOC с 31.05.05. Лучшим из них, которого мне не досталось, был «Пожалуйста, понравись мне». Батареи B&D тоже были забавными, но я полагаю, они не сбили с толку ботов, а только расстроили обычных пользователей.

Иногда лучшее решение технологической проблемы - это не просто технология.

0
ответ дан 22 November 2019 в 22:41
поделиться

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

0
ответ дан 22 November 2019 в 22:41
поделиться

Два решения, одно высокотехнологичное, одно низкотехнологичное.

Сначала высокотехнологичные: предложения BOC распродаются за секунды, потому что боты получают многие из них в первые несколько миллисекунды. Поэтому вместо того, чтобы пытаться победить ботов, продайте им то, что они ищут: мешок с дерьмом. Конечно, никчемная чушь: погнутые скрепки и испорченные фотографии Рози О'Доннелл. Затем имейте встроенные случайные задержки на сервере на несколько секунд за раз. По мере продолжения продажи фактическая стоимость проданного продукта будет увеличиваться, а цена продажи - нет. Таким образом, первые покупатели (боты в первые несколько миллисекунд) получат что-то гораздо меньшее, чем они заплатили (коричневые луковые лепешки?), Следующие покупатели (более медленные боты или более быстрые люди) получат что-то не впечатляющее, но стоящее покупной цены ( куплен на консигнацию?), и последние покупатели (почти все люди) получат что-то более дорогое, чем закупочная цена (разливать шампанское?). Этот телевизор с плоским экраном может быть в самой последней купленной BOC.

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

Низкотехнологичное решение могло бы состоять в том, чтобы изменить название BOC на то, что люди могут интерпретировать, но не могут боты. Мехи экскрементов? Мешок с запахом? Топологически ровная поверхность, прилегающая к разным товарам? Никогда не используйте одно и то же имя дважды, используйте незначительно разные изображения и объясните в описании продукта, что на самом деле продается.

Тот, кто слишком долго ждет, упустит шанс, но в то же время тот, кто купит слишком быстро, будет обижен. Уловка состоит в том, чтобы подождать какое-то время ... но не слишком много. В этом есть некоторая удача, которая так и должна быть.

Низкотехнологичное решение могло бы состоять в том, чтобы изменить название BOC на то, что люди могут интерпретировать, но не могут боты. Мехи экскрементов? Мешок с запахом? Топологически ровная поверхность, прилегающая к разным товарам? Никогда не используйте одно и то же имя дважды, используйте незначительно разные изображения и объясните в описании продукта, что на самом деле продается.

Тот, кто слишком долго ждет, упустит шанс, но в то же время тот, кто купит слишком быстро, будет обижен. Уловка состоит в том, чтобы подождать какое-то время ... но не слишком много. В этом есть некоторая удача, которая так и должна быть.

Низкотехнологичное решение могло бы состоять в том, чтобы изменить название BOC на то, что люди могут интерпретировать, но не могут боты. Мехи экскрементов? Мешок с запахом? Топологически ровная поверхность, прилегающая к разным товарам? Никогда не используйте одно и то же имя дважды, используйте незначительно разные изображения и объясните в описании продукта, что на самом деле продается.

Нетехнологичным решением было бы изменить название BOC на то, что люди могут интерпретировать, а боты - нет. Мехи экскрементов? Мешок с запахом? Топологически ровная поверхность, прилегающая к разным товарам? Никогда не используйте одно и то же имя дважды, используйте незначительно разные изображения и объясните в описании продукта, что на самом деле продается.

Нетехнологичным решением было бы изменить название BOC на то, что люди могут интерпретировать, а боты - нет. Мехи экскрементов? Мешок с запахом? Топологически ровная поверхность, прилегающая к разным товарам? Никогда не используйте одно и то же имя дважды, используйте незначительно разные изображения и объясните в описании продукта, что на самом деле продается.

0
ответ дан 22 November 2019 в 22:41
поделиться

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

  • Любые изображения, изображающие этот элемент, должны иметь либо одно и то же имя изображения (например, «current_item.jpg»), либо быть случайным именем, которое изменяется для каждый запрос. Сервер должен знать текущий элемент и доставить соответствующее изображение. Это изображение также должно иметь случайное количество отступов, чтобы роботы не сравнивали размеры изображений. (Возможно изменение какого-либо водяного знака для отпугивания более сложных ботов.)
  • Удалите текст ALT с этих изображений. Этот текст обычно представляет собой избыточную информацию, которую можно найти в другом месте на страницах, или сделать их общим замещающим текстом (например, «Текущее изображение предмета будет здесь»).
  • Описание может меняться каждый раз, когда появляется мешок с дрянью. Он мог вращаться (случайным образом) между несколькими разными именами: «Случайная дрянь», «BoC», «Crappy Crap» и т. Д.
  • Woot также может предлагать больше предметов по цене «Random Crap» или иметь случайную цену от 0,95 до 1,05 доллара (только изменение цена один раз за каждый раз, когда появляется дерьмо, а не для каждого пользователя, для справедливости)
  • Цена, описание и другие области, которые отличают BoC от других Woot, могут быть изображениями вместо текста.
  • Эти поля также могут быть Java (не javaScript) или Flash. Хотя это зависит от стороннего плагина, ботам будет сложнее очистить ваш сайт полезным способом.
  • Использование комбинации изображений, Java, Flash и, возможно, других технологий было бы другим способом. чтобы усложнить задачу ботам. Управлять этим будет немного сложнее, так как администраторам придется знать много разных платформ.
  • Есть и другие способы скрыть эту информацию. Использование комбинации клиентских сценариев (javascript и т. Д.) И обфускации на стороне сервера (случайные имена изображений) было бы наиболее вероятным способом сделать это, не влияя на взаимодействие с пользователем. Добавление запутывающего Java и / или Flash или чего-то подобного усложнило бы задачу и, возможно, минимально повлияло бы на некоторых пользователей.
  • Объедините некоторые из этих приемов с некоторыми из упомянутых выше: если страница перезагружается более x раз в минуту, измените имя изображения (если у вас было имя статического изображения, предложенное выше), или дайте им две минуты старая кешированная страница.
  • Есть несколько очень сложных вещей, которые вы можете делать на сервере с отслеживанием поведения пользователя, которые могут не потребовать слишком много обработки. Вы можете переложить эту работу на выделенный сервер, чтобы минимизировать влияние на производительность. Возьмите некоторые данные из запроса и отправьте их на выделенный сервер, который может обработать эти данные. Если он обнаруживает подозреваемого бота, основываясь на его поведении, он может отправить ловушку на другой сервер (брандмауэр внешней маршрутизации, сервер, маршрутизатор и т. Д. ИЛИ внутренний веб-сервер или сервер содержимого), чтобы добавить дополнительную безопасность этим пользователям. возможно, добавить Java-апплеты для этих пользователей или потребовать от пользователя дополнительной информации (не заполняйте все поля на странице заказа заранее, каждый раз делая разные поля пустыми и т. д.).
0
ответ дан 22 November 2019 в 22:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: