Как защитить сайт от парсинга


Как организовать защиту от парсинга сайта? — Хабр Q&A

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

Из 1 пункта следует, что нет достаточных средств для защиты от парсеров.
Вопрос только в том, на сколько вы готовы и можете усложнить жизнь для парсеров.
А нужно ли это? Может вы - "неуловимый Джо"?
Все что может прочитать и распознать человек (а ведь именно для людей и делается сайт?) может быть воспроизведено. В части, где парсинг может быть автоматизирован, он будет автоматизирован.
Сейчас существуют мощные парсеры Яндекса и Гугла. Если они ваш сайт не смогут разобрать, то и в индексе его не будет, значит полезная информация не дойдет до конечного пользователя.
А тот, кто захочет, ее скопирует, если информация очень нужна. Если даже вы представите в виде мозаики из картинок и кусков, даже если зашифруете, но информация на экране должна все равно быть читабельной, а значит простой принтскрин и распознавание в FineReader будет быстрее, чем вы напишите защиту от него...

Бросьте это занятие!

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

И еще раз бросьте это!

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

Последний совет: бросьте это!

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

А если хотите поиграться, то пришла в голову идея: перемешивание по определенному алгоритму текста, который потом восстанавливается, применение стилей для скрытия "фальшивых" слов или фраз. Например, задать стиль, который скрывает каждое второе предложение или слово. Но к сожалению, это ломается на ура! Но доставит радости для взломщиков :-)

Извините, за столь большой сумбур!

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

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

3. Блокировка по IP не прокатит, так как могут пострадать реальные люди, достаточно применять динамический IP.

А вообще, если хотите спастись от простых парсеров, то комплекс мер может помочь. Так же могу натолкнуть на идею, того, что парсеры обычно очень активны, и по количеству запросов с одного IP, по USER_AGENT, и другим меткам, а так же по отсутствию javascript, по обработке тега <МЕТА> redirekt.info/article/redirekt-na-html-s-zaderzhko... (отложенный редирект) и другим признакам. Можно запихнуть скрытую картинку (style="display: none"), большинство парсеров ее могут дернуть (зависит от настроек).

В общем, можно поставить задачу в другом ключе: "Расстановка ловушек для парсеров". То есть ловить на том, чего обычные люди и браузеры делать не будут. Например, заполнять "скрытое поле пароль". Удачные ловушки дадут вам возможность выявить подставных, но лучше делать несколько проверок, а то можно и реального пользователя забанить. А я бы не стал банить, а сливал бы немного или частично измененную инфу. Эта инфа может стать маркером для выявления того, кто действительно желает с вас "слить".

Все, удачи!

Защитите свой сайт от веб-скрапинга

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

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

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

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

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

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

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

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

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

Займите юридическую стойку

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

Сканирование Сервисов разрешено, если оно выполняется в соответствии с положениями наших роботов.txt, но очистка Сервисов запрещена.

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

Предотвращение атак типа «отказ в обслуживании» (DoS)

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

Вы можете определить потенциальные IP-адреса и заблокировать доступ запросов к вашей службе с помощью фильтрации через брандмауэр. Хотя это ручной процесс, современные поставщики облачных услуг предоставляют вам доступ к инструментам, блокирующим потенциальные атаки. Например, если вы размещаете свои сервисы на Amazon Web Services, AWS Shield поможет защитить ваш сервер от потенциальных атак.

Использовать токены подделки межсайтовых запросов (CSRF)

Используя токены CSRF в своем приложении, вы предотвратите выполнение автоматическими инструментами произвольных запросов к гостевым URL.Маркер CSRF может присутствовать как переменная сеанса или как поле скрытой формы. Чтобы обойти токен CSRF, необходимо загрузить и проанализировать разметку и найти нужный токен, прежде чем связать его с запросом. Этот процесс требует либо навыков программирования, либо доступа к профессиональным инструментам.

Использование .htaccess для предотвращения соскабливания

.htaccess - это файл конфигурации для вашего веб-сервера Apache, и его можно настроить так, чтобы парсеры не могли получить доступ к вашим данным.Первым шагом является определение парсеров, что можно сделать через Google Webmasters или Feedburner. После того, как вы их определили, вы можете использовать множество методов, чтобы остановить процесс очистки, изменив файл конфигурации.

Как правило, файл .htaccess не включен в Apache, и его необходимо включить, после чего Apache будет интерпретировать файлы .htaccess , которые вы помещаете в свой каталог.

.htaccess файлы могут быть созданы только для Apache, но мы также предоставим эквиваленты для Nginx и IIS для наших примеров.Подробную информацию о преобразовании правил перезаписи для Nginx можно найти в файле

.Одностраничное приложение

- Защита JSON от синтаксического анализа

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

javascript - Как защитить ключ Rest API для анализа в html-приложении

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
  5. Реклама Обратитесь к разработчикам и технологам со всего мира
  6. О компании

Загрузка…

    .

    javascript - Можно ли запретить браузеру анализировать определенные элементы?

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

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

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

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

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