Що таке відмова в обслуговуванні і DDoS-атаки?

Що таке відмова в обслуговуванні і DDoS-атаки?

DoS (відмова в обслуговуванні) і DDoS (розподілена відмова в обслуговуванні) стають все більш поширеними і потужними атаками. Атаки типу «Відмова в обслуговуванні» бувають різних форм, але мають спільну мету: заборонити користувачам доступ до ресурсу, будь то веб-сторінка, електронна пошта, телефонна мережа або щось ще цілком. Давайте подивимося на найбільш поширені типи атак на веб-цілі і на те, як DoS може стати DDoS.

Найбільш поширені типи атак типу «відмова в обслуговуванні» (DoS)

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


Атаки по TCP

Майже весь веб-трафік (HTTP/HTTPS) виконується з використанням протоколу управління передачею (TCP). TCP має більше службових даних, ніж альтернативний протокол користувацьких дейтаграм (UDP), але розрахований на надійність. Два комп'ютери, з'єднані один з одним через TCP, підтвердять отримання кожного пакета. Якщо підтвердження не надано, пакет слід надіслати знову.

Що станеться, якщо комп'ютер вимкнеться? Можливо, користувач втрачає харчування, у його провайдера виникає збій, або будь-яка програма, яку він використовує, завершує роботу без повідомлення іншого комп'ютера. Інший клієнт повинен припинити повторну відправку того ж пакета, інакше він витрачає ресурси даремно. Щоб запобігти нескінченній передачі, вказується тривалість тайм-ауту і/або встановлюється обмеження на те, скільки разів пакет може бути повторно відправлений до повного розриву з'єднання.

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

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

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

Посилення DNS-атак

Атаки відмови в обслуговуванні також можуть бути націлені на DNS-сервери: сервери, які переводять доменні імена (наприклад, .com) в IP-адреси (12.345.678.900), які комп'ютери використовують для зв'язку. Коли ви набираете.com у своєму браузері, він відправляється на DNS-сервер. Потім DNS-сервер направляє вас на реальний веб-сайт. Швидкість і низька затримка є основними проблемами для DNS, тому протокол працює за протоколом UDP замість TCP. DNS є важливою частиною інфраструктури Інтернету, і пропускна здатність, використовувана DNS-запитами, як правило, мінімальна.


Тим не менш, DNS повільно зростав, з плином часу поступово додаючи нові функції. Це створило проблему: обмеження розміру пакета в DNS становило 512 байт, що було недостатньо для всіх цих нових функцій. Так, у 1999 році IEEE опублікував специфікацію механізмів розширення для DNS (EDNS), яка збільшила обмеження до 4096 байт, дозволяючи включати додаткову інформацію в кожен запит.

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

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

Так що ж таке атака розподіленої відмови в обслуговуванні (DDoS)?

Розподілена атака типу «відмова в обслуговуванні» - це атака з кількома (іноді мимовільними) зловмисниками. Веб-сайти та програми призначені для обробки безлічі одночасних підключень - зрештою, веб-сайти були б не дуже корисні, якби тільки одна людина могла відвідувати одночасно. Гігантські сервіси, такі як Google, Facebook або Amazon, призначені для обслуговування мільйонів або десятків мільйонів одночасно працюючих користувачів. Через це жоден зловмисник не може знищити їх за допомогою атаки типу «відмова в обслуговуванні». Але багато зловмисників могли.

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

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

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


Як я можу захистити себе від атак типу «відмова в обслуговуванні»?

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

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

Image

Publish modules to the "offcanvas" position.