Главная Блог Безопасность Защита от ботов и DDoS-атак для сайта
Защита от ботов и DDoS-атак для сайта

Защита от ботов и DDoS-атак для сайта

Содержание статьи:

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

 

Как определить робота

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

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

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

  • Злонамеренные боты. Отдельной категорией выступают боты, которые создаются с целью взлома и вывода сайтов из строя. Такие боты сканируют сайт не на предмет содержащейся там информации, а в первую очередь на уязвимые компоненты, в которые могут быть внедрены элементы удаленного управления или совершения вредоносных действий. Некоторые такие боты атакуют сайт напрямую - как правило, те, что написаны конкретно для проведения DDoS-атак (Denial of Service или «отказ в обслуживании»), призванных создать такие условия, чтобы пользователи больше не смогли получить доступ к ресурсу. Основные заказчики таких атак - конкуренты, желающие вывести соперника из строя или хотя бы нанести урон, на время лишив сайт работоспособности.

 

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

 

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

 

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

 

Способы обнаружения

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

  • Отследить статистику обращений можно обратившись к логам сервера посредством файла access.log. Это текстовый файл, в котором содержится полная информация по трафику на сервере. В нем можно просмотреть IP-адрес, с которого произведен запрос, его время, тип и содержимое. Особое внимание здесь стоит обратить на параметр %{User-Agent} - заголовок, который содержит информацию о запроса, то есть приложение и язык, на котором он осуществлен. Многократное отправление запросов с одного IP и от одного и того же User-Agent с регулярным интервалом, должно вас насторожить.

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

 

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

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





 

captcha.jpg

 

Защита от ботов для сайта

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

 

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

Один из самых простых, и практически универсальных способов борьбы с ботами - создание фильтра по User Agent в файлах .htaccess (hypertext access) и robots.txt. Эти файлы находятся в корне вашего сайта на сервере, доступ к нему осуществляется через кабинет настроек хостинга. Если файлов с таким названием там нет - их нужно создать через блокнот, переименовать соответствующе, и загрузить в корневой каталог . Далее в этих файлах нужно создать правила для конкретных сомнительных пользовательских агентов, которые вы обнаружили посредством логов сервера и JavaScript.


Для ограничения в .htaccess нужно вставить в файл следующий текст:
RewriteCond %{HTTP_USER_AGENT} Имя_бота

RewriteRule (.*) - [F,L]

Ограничить доступ через robots.txt можно как частично, так и полностью. Чтобы закрыть для бота конкретные результаты, пропишите текст:
User-agent: Имя_бота

Disallow:/название_раздела/

Disallow:/messages/
 

Чтобы ограничить сайт полностью:

User-agent: Имя_бота

Disallow:/

 

Также можно уменьшить количество посещений для конкретного бота:

User-agent: Имя_бота

Crawl-delay: 10

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

 

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

 

Важно! Учтите, что для того, чтобы доступ к сайту не был заблокирован для “белых” поисковых ботов также как и для парсинговых, например для ботов от Google и Яндекс, необходимо запретить /scrapertrap/ в файле robots.txt.

 

 

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

 

setevoe-vzaimodejcnvie.jpg

 

DDoS сайта

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

 

Обычно DDoS-атаки описываются в семиуровневой модели OSI. Первый уровень сети - физический, второй - канальный (связывает сети на уровне каналов, через коммутаторы) и чем выше - тем абстрактнее. DDoS-атаки могут быть низко- и высокоуровневые. Самые низкоуровневые атаки - на сетевом, третьем-пятом уровнях: "забивание" канала ping-запросами или же запросами на подключение по протоколу TCP(т.н. SYN-запросы), с ними иметь дело просто. Но чем выше уровень атаки, тем сложнее становится защита. 

 

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

 

Чтобы справиться с такими атаками мы используем WAF (Web Application Firewall) - особую систему мониторов и фильтров, предназначенных для обнаружения и блокирования сетевых атак на веб-приложение. Однако это достаточно высокий уровень атаки, и WAF мы подключаем лишь в самых тяжелых случаях - как правило, достаточно и базовой защиты, которая по умолчанию включена на всех наших серверах.

 

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

 

Но лучше всего, конечно, если у вас есть надежный хостер, которому можно делегировать защиту сайта от DDoS. Со своей стороны мы всегда ответственно относимся к безопасности наших клиентских проектов, так что просто работая с нами от этой головной боли вы уже считайте избавились. У нас по умолчанию подключена защита всех наших сетей от DDoS, бесплатно можно подключить начальный тариф защиты от ботов, и дополнительно возможно подключить WAF или защиту от DDoS 7ого уровня и расширенную защиту от ботов Botguard.

 

Заключение

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

  • Профессиональная защита сайта - BotGuard

  • Блокировка в htaccess и robots.txt

  • Ловушка для ботов
    Для блокировки парсеров можно использовать так называемые ханипоты (honeypot, или “горшочек с медом”) - специальные приманки, вписанные в HTML код, которые выдают на запрос на поиск информации парсера определенный результат, открыв который парсер закроет себе доступ к сайту. 

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

  • Использование reCAPTCHA
    Пожалуй, наиболее простой и адекватный способ защиты от ботов на данный момент. Простой тест Тьюринга, например сервис от Google reCAPTCHA, позволяет выяснить, пытается ли зайти на сайт реальный человек, или робот. Формат теста может быть как текстовый, так и графический (второй вариант удобнее для пользователей и сложнее обойти ботам). Лучше всего совмещать сервис с использованием cookies, чтобы сохранять результаты от уже подтвердивших свою “человечность” посетителей, и не заставлять их проходить тест каждый раз, когда они заходят на вашу страницу. Однако важно учесть, что на сегодняшний день существуют сервисы, которые помогают обходить любые типы капч, поэтому в некоторых случаях этот способ может не сработать, хотя в большинстве все же выступит хорошей защитой.

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

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


Статья добавлена 1 год назад. Автор - Eltigro

поделиться статьей

Подпишитесь на новые статьи от Maxiplace


Смежные статьи

article
Защита от ботов и DDoS-атак для сайта

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

23.09.2021
article
Инструкция для Webasyst: перенос сайта на другой хостинг

Перенос сайта Webasyst на другой хостинг  - проблема, которая часто возникает при естественном росте интернет-магазинов. Webasyst зарекомендовал себя как одна из самых гибких cms-платформ, особенно благодаря действительно качественному модулю для построения интернет-магазинов (shop-script). Перенос таких ресурсов можно произвести без потерь и лишних усилий, и в этой статье мы расскажем, как.

22.09.2021
article
Как открыть свой интернет-магазин с нуля: пошаговая инструкция 2021

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

12.08.2021
article
Интернет-магазин на Webasyst: создание сайта, плюсы и минусы

Как создать интернет-магазин на Webasyst с нуля: функционал системы, настройка проекта, цены на разные тарифы, а также все плюсы и минусы площадки

09.08.2021
article
Интернет-платформа для интернет-магазина: топ лучших CMS 2021

Помогаем сделать выбор интернет-платформы для вашего интернет-магазина: разбираемся в плюсах и минусах самых известных платных и бесплатных систем

19.07.2021