CityHost.UA
Допомога і підтримка

Погані боти: чим вони шкодять сайту і як їх заблокувати

 397
17.01.2023
article

 

 

Боти — це програмне забезпечення, спрямоване на збір та аналіз інформації в інтернеті, а також виконання повторюваних дій, які міг би здійснювати користувач. Наприклад, боти можуть парсити дані на сайтах, клікати по рекламі, заповнювати форми зворотнього зв’язку, давати запрограмовані відповіді у чатах.

Термін «бот» має широке використання, ним називають і автоматизовані відповіді у соцмережах та на сайтах (чат-боти), і людей, які керують фіктивними акаунтами в соцмережах. Ми ж будемо говорити саме про тих ботів, які заходять на сайт і здійснюють там певні дії без відома власника.  

Завдяки більшій швидкості бот може здійснити в сотні разів більше операцій, ніж людина за той же час. Крім того, використання бота коштує дешевше, ніж найм працівників — наприклад, для збору даних. Тому боти лежать в основі автоматизації багатьох процесів у мережі.

Майже половина трафіка в інтернеті створюється ботами. Згідно з дослідженнями Statista у 2021 році шкідливі боти створювали 27,7% трафіка, тоді як корисні боти — тільки 14,6%. Людям у цьому розподілі дісталося 57,7% трафіка.

Кожен бот, входячи на сайт, створює певне навантаження. І якщо з трафіком від корисних ботів доведеться змиритися, то шкідливі боти спричиняють одразу кілька проблем в залежності від мети свого існування. Крім навантаження на сайт це і несанкціонований збір даних, і DDoS-атаки, і обхід систем захисту. 

Незалежно від того, де розміщений ваш сайт — на хостингу, виділеному сервері або VDS, боти відбирають ресурси та шкодять показникам швидкого завантаження. 

Давайте розберемося, що таке шкідливі та корисні боти, і якими вони бувають.

Що таке шкідливі боти і чим вони відрізняються від корисних

Корисні та шкідливі боти дуже схожі в технічному плані — різниця полягає в меті їхнього використання. В залежності від цілей вони розділяються на більш вузькі категорії. 

Шкідливі боти:

  • Боти-шпигуни — сканують сайти в пошуках погано захищених контактних даних користувачів для створення бази спам-розсилки та інших несанкціонованих дій. Якщо на вашу електронну пошту почали приходити підозрілі листи, то один із варіантів сценарію: ви залишили адресу на погано захищеному сайті, її знайшов бот і включив у базу. 

  • Клікботи — із назви можна здогадатися, що вони займаються тим, що клікають, а точніше, переходять за посиланнями. Найбільше неприємностей вони створюють у рекламному секторі в Google, зливаючи бюджет на оголошеннях з оплатою за кліки. Цим методом часто користуються конкуренти.

  • Взломщики підбирають паролі доступу до акаунтів адміністраторів або користувачів на сайті. 

  • Боти-спамери заповнюють форми зворотнього зв'язку та залишають рекламні коментарі з посиланнями, які часто ведуть на фішингові сайти. 

  • Завантажувачі скачують файли — їх використовують, щоб створити видимість затребуваного контенту. 

  • Боти для DDoS — ними часто стають користувацькі пристрої, заражені зловмисним програмним забезпеченням. Такі боти надсилають дуже багато запитів на сайт з метою «покласти» його.

Корисні боти:

  • Пошукові боти (краулери) — це роботи пошукових систем, які сканують сторінки сайтів з метою включення їх до індексу, ранжування та видачі у SERP. 

  • Боти сервісів SEO-аналитики — це інструменти Ahrefs, Serpstat, Semrush та інших аналогів, які моніторять на сайтах певні показники, потрібні для роботи SEO-спеціалістів (трафік, зворотні посилання, ключі, по яких ранжується сайт).

  • Сканери для визначення унікальності контенту — їх використовують для перевірки текстів копірайтери. Антиплагіатори перевіряють всі доступні в мережі статті з метою співставлення та виявлення скопійованих текстів. 

У цій класифікації зібрані найбільш розповсюджені боти — насправді ж їх набагато більше. Окрім того, така класифікація доволі умовна. Один і той же бот можна використовувати для різних цілей — наприклад, агресивний парсинг даних може спричинити уповільнення і навіть зупинку роботи сайту. Але той же парсинг корисний для сайтів, адже є частиною роботи пошукових систем, сервісів для порівняння цін та багатьох інших платформ.

Як відслідкувати активність ботів на сайті

Появу ботів можна відслідкувати за кількома критеріями: 

  1. Сплески трафіку — якщо у вас раптово «стрибнув» трафік, що не пов’язано з маркетинговими акціями, це може свідчити про активність ботів.

  2. Підвищення навантаження на сервер також може говорити про активність ботів. 

  3. Поява запитів з регіонів, у яких ви не ведете бізнес.

  4. Високий показник відмов: боти створюють запити, але не проводять на сайті достатньо часу. У IP-адрес ботів буде показник 100% відмов. 

Але найкраще діяльність ботів на сайті можна побачити, аналізуючи логи — це записи про сеанси відвідування сайту, у яких зазначено низку даних про візитера. Зокрема це такий показник як user-agent — програмні агенти, за назвою яких можна визначити пристрій чи програму, яка заходила на сайт. Юзер-агенти є у браузерів, пошукових роботів, мобільних застосунків тощо.

У кожного бота є своє ім’я, наприклад юзер-агент Google називається Googlebot, Ahrefs — AhrefsBot, SE Ranking — SE Ranking bot. 

Щоб подивитися логи, використовуйте спеціальний інструмент GoAccess від Cityhost, який сортує запити і видає статистику. Його можна знайти у розділі Хостинг => Керування => SSH => Web SSH: Відкрити. Далі рекомендуємо скористатися інструкцією, як аналізувати логи за допомогою GoAccess.

За його допомогою можна побачити країну, з якої заходили на сайт, IP-адресу, user-agent та інші параметри. 

Якщо ж у бота немає юзер-агента (пишеться як Unknown robot) — тоді, скоріш за все, це робота якогось любителя або одиночного хакера, якого можна забанити по IP-адресі. Читайте нижче, як це зробити. 

Як захистити свій сайт від шкідливих ботів

Одна з проблем у захисті від ботів полягає в тому, що вони імітують дії користувачів, і сервер не розрізняє запити від ботів та від людей. Не існує чарівної кнопки «Захиститися від ботів», яка одним рухом позбавить від труднощів. Від кожного класу ботів існує окремий захист, до того ж частину непроханих гостей доводиться фільтрувати вручну.

Закривати доступ до сайту потрібно те тільки відверто шкідливим ботам, але і тим, які не несуть користі, але створюють зайве навантаження. Наприклад, коли сайт сканує сервіс аналітики або пошуковий робот, непотрібний для вашої роботи. 

Перед веб-майстрами постає цілий ряд складних питань, які не завжди можливо вирішити — наприклад, той же захист від парсингу. Автоматичними методами неможливо відрізнити хороший і поганий парсинг, до того ж по факту цей метод не є незаконним. Переглядати та збирати дані з сайтів може хто завгодно, для цього вони і створені. Коли користувач гортає сторінки та виписує ціни — це теж процес збору даних, просто парсер робить це швидше. Такі тонкощі ускладнюють процес захисту сайту і роблять його безперервним. Потрібно постійно відслідковувати трафік та аналізувати логи, щоб побачити сеанси входу на сайт шкідливих ботів та вручну заблокувати їх.

Оскільки ботів часто використовують для DDoS, рекомендуємо вам прочитати статтю про те, як захиститися від DDoS-атак.

Методи блокування шкідливих ботів

Тут ми розкажемо про інструменти, які переважно надаються клієнтам Cityhost. Якщо ви користуєтеся послугами інших провайдерів, методи можуть дещо відрізнятися. 

  1. Блокування джерел трафіку

В панелі керування послугами Cityhost можна вручну заблокувати підозрілі джерела трафіку по IP-адресі та по URL. Знайти інструменти для блокування ви можете у розділі Хостинг => Керування => Безпека.

Окремо варто сказати про блокування по user-agent — в цьому інструменті вже є вбудований список розповсюджених шкідливих ботів. Користувач може включити або відключити інструмент, а також прибрати відмітки з певних юзер-агентів чи вибрати всі. Якщо ж ви хочете заблокувати вручну конкретних юзер-агентів — для цього є окремий алгоритм дій, описаний нижче у статті. 

Додатково у розділі «Безпека» можна встановити пароль на певні директорії, щоб до важливих папок сайту у файловому менеджері мали доступ тільки ті, хто знає цей пароль. 

  1. Капча для входу в акаунт адміністратора

У тому ж розділі ви знайдете капчу, створену Cityhost — вона захищає вхід до адмінки на нашому сайті та в установлених на хостингу CMS. Це дуже простий та ненав’язливий фільтр, у якому потрібно лише відмітити чекбокс «Я не робот» (ніяких складних процедур). Але навіть таку просту дію бот уже не може виконати.   

  1. Заборона за допомогою .htaccess

.htaccess — це файл у кореневій папці сайту, який містить певні налаштування роботи веб-ресурсу (редирект, створення сторінок помилок, блокування доступу до сайту та окремих файлів). У цьому файлі можна прописати заборони для юзер-агентів шкідливих ботів, які не зможуть надалі сканувати сайт. 

Для цього потрібно відкрити .htaccess у файловому менеджері та прописати в ньому наступні правила, де UserAgentName замінити на реального юзер-агента. 

Також можна заблокувати запити від агентів, у яких немає імені. 

  1. Захист від спам-ботів

Боти, які залишають на сайті коментарі та заповнюють форми зворотнього зв’язку, потребують окремої уваги. Для захисту від них використовують такі методи: 

  1. Капча у формі — зазвичай вона виглядає як відмітка чекбоксу «Я не робот» і не надто ускладнює взаємодію користувача з сайтом.  

  2. Верифікація пошти — надсилання листа на введену адресу, щоб користувач пройшов за посиланням і підтвердив її. Боти генерують сотні неіснуючих адрес, тому такий метод дозволяє залишати коментарі або заповнювати форми тільки для реальних e-mail. 

  3. Пастки для ботів — це невидимі поля, які користувачі не заповнять просто тому, що не побачать. Боти ж заповнюють всі поля, тому таким чином їх можна виявляти і фільтрувати. 

Як керувати діяльністю корисних ботів

Корисні боти інколи також не знають міри і надсилають занадто багато запитів, перевантажуючи сайт. Але їх можна «пригальмувати». Для кожного бота існують свої налаштування, здебільшого їх можна знайти в інструкціях на офіційному сайті. Наприклад, ось сторінки, присвячені краулерам Google, Ahrefs і Serpstat:

Ви можете знайти такі інструкції самостійно для всіх корисних ботів та обмежити тривалість і частоту сканування, щоб вони не перевантажували сайт. 

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

Як проаналізувати трафік від ботів на сайті

Подивитися, чи знизилося навантаження на сайт після запровадження будь-якого з методів захисту, можна у своїй панелі адміністратора на хостингу: Хостинг 2.0 => Керування => Ресурси => розділи «Загальна інформація», CPU, Mysql. Але варто розуміти, що зміни ви не побачите одразу — потрібно, щоб пройшло хоча б кілька годин.

Щоб убезпечити сайт від непотрібних запитів, рекомендуємо регулярно моніторити показники навантаження, логи та трафік, щоб вчасно заблокувати ботів. 

У матеріалі використані джерела:


Сподобалася стаття? Розкажіть про неї друзям: