Перейти до вмісту

Що таке HTTP? Розбираємо версії протоколу та блокування HTTP/1.0 у BotBlocker

Що таке HTTP?

HTTP розшифровується як HyperText Transfer Protocol (протокол передачі гіпертексту). Це основа всієї комунікації у вебі, що визначає, як браузери та сервери обмінюються інформацією. Щоразу, коли ви відкриваєте сайт, ваш браузер надсилає HTTP-запити до сервера, а той відповідає запитаними даними (як-от HTML, CSS, зображення, скрипти).

Основні версії HTTP

HTTP/1.0

  • Випущено 1996 року
  • Перша широко впроваджена версія HTTP
  • Кожен запит відкриває нове з\\\’єднання (без keep-alive за замовчуванням)
  • Бракує можливостей для ефективності та безпеки сучасного вебу

HTTP/1.1

  • Представлено 1997 року
  • Додає постійні з\\\’єднання, конвеєризацію та кращий контроль кешування
  • Досі дуже поширена й сумісна майже з усіма веб-сервісами

HTTP/2

  • Стандартизовано 2015 року
  • Забезпечує мультиплексування (кілька запитів в одному з\\\’єднанні), стиснення заголовків і швидше завантаження
  • Покращені продуктивність і безпекові можливості
  • Широко підтримується сучасними браузерами й серверами

HTTP/3

  • Базується на протоколі QUIC, нині впроваджується
  • Створений для ще кращої швидкості, надійності та безпеки
  • Ще не має універсальної підтримки, але швидко набирає популярності

Чому версія HTTP важлива для безпеки?

Більшість легітимних браузерів і користувачів використовують HTTP/1.1 або новіші версії (HTTP/2, HTTP/3).
HTTP/1.0 дуже застаріла й рідко використовується реальними відвідувачами. Однак її іноді застосовують:

  • старе непідтримуване програмне забезпечення;
  • боти, сканери та атакуючі скрипти, написані із застарілими бібліотеками;
  • сканери й інструменти пошуку вразливостей, що перевіряють сервери на слабкі місця.

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

За IETF RFC 9110, що визначає чинний стандарт семантики HTTP, старіші версії протоколу не проєктувалися з огляду на сучасний ландшафт загроз. Саме ця прогалина робить фільтрацію за версією вартою уваги для будь-якого сайту на WordPress, який дбає про безпеку.

Чому BotBlocker дозволяє блокувати HTTP/1.0?

BotBlocker має опцію блокування запитів, що використовують HTTP/1.0. Це тому що:

  • легітимні браузери майже ніколи не використовують HTTP/1.0;
  • більшість реальних відвідувачів використовують HTTP/1.1+;
  • багато автоматизованих ботів, застарілих парсерів і підозрілих інструментів досі за замовчуванням працюють через HTTP/1.0;
  • блокування такого трафіку зменшує вашу вразливість до старих експлойтів і зайве навантаження на сервер.

На практиці частка реального людського трафіку через HTTP/1.0 є мізерною. Більшість хостинг-середовищ і мереж доставки контенту повністю відмовилися від неї. Тож коли запит із цією версією досягає вашого сайту на WordPress, він значно частіше автоматизований, ніж людський. BotBlocker використовує це як один із кількох сигналів для виявлення й зупинки небажаного трафіку ще до того, як він дійде до вашого застосунку.

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

Докладніше про поведінку веб-сканерів і те, як версії протоколу впливають на виявлення ботів, можна прочитати в документації Google Search про сканери. Зокрема, Googlebot та інші великі легітимні сканери використовують сучасні версії протоколу, тож блокування старіших не зашкодить індексації вашого сайту в пошукових системах.

Коли варто ввімкнути блокування HTTP/1.0?

  • На сучасних сайтах WordPress, яким не потрібно підтримувати застарілі пристрої чи програмне забезпечення
  • Коли ви хочете зменшити поверхню атаки для старих експлойтів
  • Якщо ви помічаєте підозрілі або численні запити HTTP/1.0 у журналах сервера

Блокування HTTP/1.0 у BotBlocker є необов\\\’язковим - за замовчуванням воно вимкнене для максимальної сумісності. Ви можете ввімкнути його для суворішого захисту.

Що перевірити перед увімкненням

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

Якщо ваш сайт надає будь-який вбудований контент - віджети, API чи стрічки, які споживають сторонні системи - перевірте, чи ці інтеграції не використовують старіших клієнтів. Внутрішні інструменти моніторингу або деякі застарілі платіжні шлюзи іноді надсилають запити через старі бібліотеки. У таких випадках може знадобитися оновити інтеграцію або додати окремі IP до білого списку перед увімкненням блокування на всьому сайті.

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

Часті запитання

Чи вплине блокування HTTP/1.0 на реальних користувачів?
Майже ніколи - сучасні браузери її не використовують. Якщо ви обслуговуєте застарілі пристрої, перевірте перед увімкненням.

Чи обов\\\’язкові HTTP/2 або HTTP/3?
Ні, але обидві дають кращу продуктивність і безпеку. HTTP/1.1 залишається стандартом.

Як увімкнути блокування?
У налаштуваннях BotBlocker активуйте опцію блокування HTTP/1.0.

Чи впливає це на SEO або сканери пошукових систем?
Ні. Пошукові системи, як-от Google, використовують сучасні версії протоколу. Блокування застарілих не вплине на ваші позиції чи індексацію.

Чи можна побачити, які запити заблоковано?
Так. BotBlocker веде журнал заблокованих запитів, щоб ви могли їх переглянути й за потреби скоригувати налаштування.

Повний перелік можливостей BotBlocker

Аномалії PTR