Що таке атаки типу «відмова в обслуговуванні» (DDoS)?

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

Aтаки типу «відмова в обслуговуванні» (DDoS). Визначення та типи DDoS | Gridinsoft

Що таке DDoS?

April 12, 2023

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

DDoS — це абревіатура від «розподілена відмова в обслуговуванні» (англ. Distributed Denial of Service). Це визначення в багато чому пояснює суть даної ситуації. Однак спочатку слід представити причини, а також способи уникнення. Перш за все, давайте поговоримо про те, як ці атаки працюють - це дасть вам підказки, як захистити веб-сайт від будь-яких DDoS-атак.

Розподілена відмова в обслуговуванні виникає, коли сервер отримує стільки запитів, що не може їх обробити. Серверу може не вистачати оперативної пам’яті чи потужності ЦП, але ефект завжди буде однаковим – веб-сторінки не відкриватимуться з наступними кодами помилок:


500щось не так із сервером, без більш точної специфікації;
502недійсна відповідь від сервера;
503сервер тимчасово недоступний для обробки запиту;
504перевищено час відповіді сервера;
509хост отримує більше трафіку, ніж може обслуговувати сайт;
520сервер повертає невідому помилку;
521оригінальний сервер веб-сайту недоступний для проміжного сервера (зазвичай Cloudflare);
522час очікування з’єднання закінчився;
523проміжний сервер (той самий Cloudflare) не може підключитися до вашого хост-сервера;
524Час очікування підключення через сервер Cloudflare минув.

Як зробити DDoS?

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

Кіберзлочинці, які здійснюють DDoS-атаки, не винаходять нічого нового. Суть такого роду кібератак полягає в створенні величезної кількості запитів, які перевантажують сервер. Ці атаки зазвичай здійснюються за допомогою ботнетів - груп комп'ютерів, заражених вірусом, який робить їх «зомбі». Ці машини (деякі з виявлених ботнетів перевищували 100 тисяч комп’ютерів) керуються з єдиного командного центру. Шахраї можуть наказати їм надсилати запити на будь-який сайт – навіть на google.com. Маючи досить великий ботнет, ви можете закрити або ускладнити підключення навіть до великих і відомих ресурсів.

DDoS attack botnet
Схема DDoS-атаки з використанням ботнету

Іноді люди здійснюють ненавмисні DDoS-атаки, коли натовп надсилає багато запитів на той самий сервер. Наприклад, ви могли бути свідками такої ситуації під час виборів 2020 року в США, коли люди масово відкривали сайт fec.gov (де були розміщені офіційні результати). Через це сайт працював з перебоями, обслуговуючи запити кожного користувача з великою затримкою.

Death by 1000 needles

24 лютого pосія розпочала повномасштабне вторгнення на територію України!


UA

Це простий розподілений інструмент генерації навантаження, написаний на Go. Він здатний отримати просту конфігурацію JSON з локального чи віддаленого розташування. Конфігурація описує, які завдання генерації навантаження слід запускати паралельно.


⇢ Death by 1000 needles

Типи DDoS-атак

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

DDoS attack scheme
Типи DDoS атак

Чому так важко обробити звичайний запит? Кіберзлочинці, які здійснюють DDoS-атаки, мають широкий спектр інструментів. Експерти поділяють ці методи на атаки на основі обсягу, атаки на прикладному рівні та атаки на протокол. У назів перших чітко пояснено, як вони виконуються; ці атаки найпростіші. Однак ефективність однієї системи у атаках на основі об’єму досить низька, якщо не використовувати специфічні трюки. Для виконання цих атак зазвичай потрібні набагато більші бот-мережі або користувачі, які самостійно переповнять сервер.

Атаки рівня програми

Атаки прикладного рівня передбачають використання вразливостей у системі сервера або прикладному програмному забезпеченні на цьому сервері. Зокрема, одним із найбільш часто використовуваних порушень є HTTP GET або запити POST. Створення потоку цих запитів, здатних перевантажити систему, вимагає набагато менше ресурсів, ніж у інших методах. Крім того, вам навіть не потрібно неправильно формувати пакети - стандартні методи HTTP цілком підходять. Однак, їх досить важко підготувати, оскільки атака має бути спрямована на певну конфігурацію сервера.

App layer DDoS attack
Схема DDoS-атаки через прикладний рівень

Атаки на протоколи

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

Як довго тривають DDoS-атаки?

Існує дві причини до призупинення DDoS-атаки. Перша – це досягнення мети атаки (читайте нижче), а друга – застосування екстрених заходів захисту від DDoS з боку тих, хто обслуговує сервери. Рідко атака припиняється через досягнення обох умов одночасно. Наприклад, останній всесвітньо відомий ланцюжок атак, пов'язаних з війною в Україні, тривав майже тиждень від початку війни. Десяток російських і українських державних ресурсів, сайтів медіаагентств і банків були недоступні. Зловмисники досягли своєї цілі, але, ймовірно, мали намір утримувати сайти якомога довше. Водночас за цей тиждень розробникам сайту вдалося впоратися із надлишковим трафіком – через заборону підключення чи фільтрацію трафіку. Обидві сторони виконали свою роботу – зловмисники успішно зламали сайти, а системні адміністратори змогли відбити атаку.

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

Як веб-сайти захищені від DDoS-атак?

Перша DDoS-атака сталася 7 лютого 2000 року . Ця атака була скоєна 15-річним хлопцем, який здійснив серію атак на сервіси електронної комерції, включаючи Amazon і eBay. З тих пір системні адміністратори виявили багато можливих способів запобігання DDoS. Одним з найпопулярніших і найвідоміших є розгадування капчі. Коли ви робите багато кліків, подібно до комп’ютера з ботнету, який намагається перевантажити сервер запитами, унікальна система просить вас розв’язати капчу.

Cloudflare captcha
Класичний приклад captcha - фільтр для запитів, надісланих роботом

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

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

DoS- і DDoS-атаки – у чому різниця?

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

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

Приклади DDoS

Найкращою демонстрацією того, як це працює та як цьому протистояти, є огляд минулих чи поточних випадків атак. На щастя для наукової ясності, за останні кілька років було багато атак, які можна розглянути у якості енциклопедійних. Перш за все, це ланцюжок DDoS-атак на російські державні сайти та веб-сторінки комерційних банків. Особливість цієї атаки в тому, що її провели з допомогою добровільно наданих девайсів. Користувачі запропонували свої комп’ютери та мобільні телефони хактивістам, створюючим трафік за допомогою спеціальних скриптів. Ця атака зайняла близько 9,8 Тбіт/с пропускної здатності, що є приблизно середньою швидкістю запитів під час DDoS-атак за 2024.

Інший приклад стосується запису, але також стосується російської компанії. Інтернет-компанія «Яндекс», прозвана російським Google, повідомила про рекордну у світі DDoS-атаку. Через повідомлення компанії вони отримали потік 22 мільйонів запитів на секунду. Навіть Cloudflare - компанія, для якої боротьба з шкідливим трафіком - це її хліб - заявила, що вони були свідками атаки лише 17,2 мільйона запитів на секунду. Цю атаку вимірювали в запитах на секунду, оскільки вона була скоєна методами на основі обсягу. Зловмисники намагалися порушити доступність веб-сайту, виконавши забагато запитів, і їм це не вдалося – у Яндекса проблем не виникло.

Останні DDoS-атаки: