DoS-атака: як працює атака з одного джерела і чим небезпечна
DoS-атака — що це таке, як працює удар з одного джерела, чим небезпечна для сайту і чому її простіше зупинити. Пояснюємо простими словами.
DoS-атака — це спроба зробити сайт, сервіс чи сервер недоступним, вичерпавши його ресурси запитами з одного джерела. Абревіатура розшифровується як Denial of Service — «відмова в обслуговуванні». Це «молодший брат» відомішої розподіленої атаки, і саме кількість джерел відрізняє їх між собою. Розберемо, як працює одиночний удар, чому його недооцінюють і чим він небезпечний навіть без тисяч ботів.
Як працює DoS-атака
Ідея проста: один комп'ютер чи сервер зловмисника надсилає на ціль стільки звернень, щоб у неї закінчилися ресурси — пропускна здатність, пам'ять, вільні з'єднання або процесорний час. Коли ресурси вичерпано, сервіс перестає відповідати живим користувачам. Ззовні це схоже на «зависання» без видимої причини.
Але є нюанс, про який зазвичай мовчать: сила тут не головне. З одного вузла складно забити канал сучасного хостингу, тому одиночні удари частіше беруть не обсягом, а розрахунком.
Два різні сценарії одиночного удару
- Груба сила. Потік однотипних запитів, що просто виснажує з'єднання чи канал. Спрацьовує проти слабких сайтів на дешевому тарифі й майже безсилий проти захищеної інфраструктури.
- Розумний удар по вузькому місцю. Зловмисник шукає операцію, яка коштує серверу дорого: важкий пошуковий запит, складний фільтр каталогу, генерація великого звіту, обробка спеціально складеного файлу. Тоді достатньо небагатьох звернень, щоб «покласти» застосунок. Сюди ж належать повільні з'єднання, які відкривають і навмисно не завершують, займаючи всі вільні слоти сервера.
Другий сценарій і робить DoS-атаки актуальними досі: потужний канал для них не потрібен — потрібне лише знання, де у вас тонко.
DoS-атака на сайт: чим це загрожує бізнесу
Здається, що одне джерело — дрібниця. Але для невеликого сайту на звичайному хостингу цього цілком досить: інтернет-магазин недоступний, форма замовлення не працює, клієнт іде до конкурента. Додайте сюди навантаження на підтримку й падіння позицій, якщо пошуковий робот кілька разів застане ресурс мертвим.
Ще одна причина не махати рукою: одиночний удар часто буває розвідкою. Зловмисник перевіряє, який захист стоїть і де межа міцності, — а вже потім приходить із розподіленим потоком.
Чому про це досі говорять
Історично саме одиночні удари були першим виявом «відмови в обслуговуванні»: у 1990-х вистачало одного некоректно сформованого пакета, щоб вивести з ладу операційну систему. Ті конкретні вразливості давно закриті, але сама ідея нікуди не поділася — змінилися лише мішені. Сьогодні місце «пакета-вбивці» посіли перевантажені запити до застосунку: складний фільтр, важкий пошук, надто щедрий експорт даних.
Через це одиночний удар лишається зброєю початківців і водночас інструментом розвідки для серйозних нападників. Він дешевий, не потребує ботнету й не вимагає особливих навичок — достатньо знайти сторінку, яка думає надто довго.
Чому одиночний удар простіше зупинити
Хороша новина: весь шкідливий потік іде з однієї адреси, тож його видно неозброєним оком у логах і можна відсікти на межі мережі. Саме тому серйозні зловмисники частіше вдаються до розподіленого варіанта — DDoS-атаки, яку так просто не заблокуєш. Детальне порівняння двох сценаріїв наведено в матеріалі DoS і DDoS: у чому різниця.
Як захиститися
Базовий набір простий і водночас дієвий:
- обмеження частоти запитів (rate limiting) з однієї адреси — перший і найдешевший бар'єр;
- автоматичне блокування за патерном у логах: система сама закриває джерело, яке поводиться неадекватно;
- ліміти на важкі операції — тайм-аути, обмеження розміру запиту, черга на генерацію звітів, кешування результатів пошуку;
- фаервол і фільтрація підозрілого потоку на межі мережі;
- моніторинг навантаження, щоб побачити аномалію на старті, а не після падіння.
Про ранню діагностику — у матеріалі Ознаки DDoS-атаки; ті самі сигнали працюють і для одиночного удару. Ці механізми — частина ширшого підходу, описаного у статті Захист від DDoS, а класифікацію технік наведено у Видах DDoS-атак.