Що є що та хто є хто на ринку захисту від DDoS

"Хлопчик, який робив нам сайт, вже налаштував захист від DDoS".
"У нас же стоїть захист від DDoS, чому сайт ліг?"
"Скільки-скільки тисяч хоче Qrator?"

Щоб нормально відповідати такі запитання замовника/начальника, непогано було б знати, що ховається під назвою «захист від DDoS». Вибір сервісів захисту більше нагадує вибір ліки лікарем, аніж вибір столу в IKEA.

Я займаюся підтримкою сайтів 11 років, пережив сотні атак на сервіси, що підтримуються мною, і зараз трохи розповім про внутрішню кухню захисту.
Що є що та хто є хто на ринку захисту від DDoS
Регулярні атаки 350k req total, 52k req legitimate

Перші атаки з'явилися практично одночасно з Інтернетом. DDoS як явище став масовим з кінця 2000-х років. www.cloudflare.com/learning/ddos/famous-ddos-attacks).
Приблизно з 2015-2016 майже всі хостинг-провайдери стали під захист від DDoS атак, як і більшість помітних сайтів у конкурентних сферах (зробіть whois по IP сайтів eldorado.ru, leroymerlin.ru, tilda.ws, побачите мережі операторів захисту).

Якщо 10-20 років тому більшість атак можна було відбити на сервері (оцініть рекомендації системного адміністратора Lenta.ru Максима Мошкова з 90-х: lib.ru/WEBMASTER/sowetywww2.txt_with-big-pictures.html#10), то зараз завдання із захисту стали складнішими.

Види DDoS атак з погляду вибору оператора захисту

Атаки на рівні L3/L4 (за моделлю OSI)

- UDP flood з ботнета (прямо із заражених пристроїв на сервіс, що атакується, відправляється багато запитів, серверам завалюють канал);
— DNS/NTP/etc amplification (з заражених пристроїв надсилається багато запитів на вразливі DNS/NTP/etc, адреса відправника підробляється, хмара пакетів із відповіддю на запити завалює канал тому, кого атакують; так виконуються наймасовіші атаки в сучасному інтернеті);
- SYN / ACK flood (на атаковані сервери надсилається багато запитів на встановлення з'єднання, відбувається переповнення черги з'єднань);
- Атаки з фрагментацією пакетів, ping of death, ping flood (погуглите плз);
- і т.п.

Ці атаки ставлять за мету «завалити» канал серверу або «вбити» його здатність приймати новий трафік.
Хоча SYN/ACK флуд та ампліфікація сильно відрізняються, багато компаній борються з ними однаково добре. Проблеми виникають із атаками з наступної групи.

Атаки на L7 (рівень програми)

- http flood (якщо атакується веб-сайт або якийсь http api);
- атака на вразливі ділянки сайту (що не мають кешу, що дуже сильно навантажують сайт, етс.).

Мета - змусити сервер "важко працювати", обробляти багато "ніби реальних запитів" і залишитися без ресурсів для справжніх запитів.

Хоча є й інші атаки, ці найпоширеніші.

Серйозні атаки на рівні L7 створюються унікальним чином під кожен атакований проект.

Чому дві групи?
Тому що є багато тих, хто вміє добре відбивати атаки на рівні L3/L4, але або взагалі не береться за захист на рівні програми (L7), або поки справляється з ними слабше за альтернативи.

Хто є хто на ринку захисту від DDoS

(мій особистий погляд)

Захист на рівні L3/L4

Щоб відбивати атаки з ампліфікацією («завал» каналу сервера) вистачає широких каналів (багато з сервісів захисту підключаються до більшості великих магістральних провайдерів у Росії і мають канали з теоретичною ємністю більше 1 Тбіт). Не забуваємо, що дуже рідкісні атаки з ампліфікацією тривають довше за годину. Якщо ви Spamhaus і вас все не люблять — так, вам можуть намагатися покласти канали на кілька діб навіть із ризиком для подальшого виживання світового ботнету, що використовується. Якщо у вас просто інтернет-магазин, навіть якщо це mvideo.ru - 1 Тбіт протягом кількох діб ви побачите дуже нескоро (сподіваюся).

Щоб відбивати атаки з SYN/ACK флудом, фрагментацією пакетів, етс, необхідно обладнання або софтверні системи для детекції та відсікання таких атак.
Таке обладнання виробляють багато (Arbor, є рішення у Cisco, Huawei, софтверні реалізації від Wanguard і т.п.), багато магістральних операторів вже встановили його та продають послуги захисту від DDoS (я знаю про інсталяції у Ростелеком, Мегафон, ТТК, МТС) , По суті у всіх великих провайдерів, це ж роблять хостери зі своїм захистом a-la OVH.com, Hetzner.de, стикався сам із захистом в ihor.ru). Деякі компанії розробляють свої софтверні рішення (технології типу DPDK дозволяють обробляти трафік у десятки гігабіт на одній фізичній машині x86).

З відомих гравців більш-менш ефективно L3/L4 DDoS відбивати вміють усі. Я зараз не скажу, у кого більша максимальна ємність каналу (це інсайдерська інформація), але зазвичай це не так важливо, і різниця тільки в тому, наскільки швидко спрацьовує захист (миттєво або за кілька хвилин даунтайму проекту, як у Hetzner).
Питання в тому, наскільки якісно це робиться: атаку з ампліфікацією можна відбити, заблокувавши трафік із країн із найбільшою кількістю шкідливого трафіку, а можна відкидати лише справді зайвий трафік.
Але при цьому, виходячи з мого досвіду, всі серйозні гравці ринку справляються з цим без проблем: Qrator, DDoS-Guard, Kaspersky, G-Core Labs (колишній SkyParkCDN), ServicePipe, Stormwall, Voxility, etc.
Із захистом від операторів типу Ростелеком, Мегафон, ТТК, Білайн не стикався, за відгуками колег вони ці послуги надають досить якісно, ​​але поки періодично дається взнаки брак досвіду: іноді потрібно щось докрутити через підтримку оператора захисту.
У деяких операторів є окрема послуга «захист від атак на рівні L3/L4», або «захист каналів», вона коштує набагато дешевше за захист на всіх рівнях.

А як не магістральний провайдер відбиває атаки в сотні Гбіт, у нього немає своїх каналів?Оператор захисту може підключитися до будь-якого з великих провайдерів і відбивати атаки "за його рахунок". За канал доведеться платити, але всі ці сотні Гбіт будуть утилізовані далеко не завжди, є варіанти значного зниження вартості каналів у цьому випадку, тож схема залишається працездатною.
Що є що та хто є хто на ринку захисту від DDoS
Ось такі звіти від вищестоящого захисту L3/L4 я регулярно отримував, підтримуючи системи хостинг-провайдера.

Захист на рівні L7 (рівень програми)

Атаки на рівні L7 (рівень програми) стабільно та якісно вміють відбивати одиниці.
У мене є реальний досить великий досвід з
- Qrator.net;
- DDoS-Guard;
- G-Core Labs;
- Kaspersky.

Вони беруть плату за кожен мегабіт чистого трафіку, мегабіт коштує близько кількох тисяч рублів. Якщо у вас хоча б 100 Мбіт чистого трафіку - ой. Захист буде дуже дорогим. Можу розповісти в наступних статтях, як проектувати програми, щоб дуже добре заощадити на ємності каналів захисту.
Реальний «цар гори» – Qrator.net, решта від них відстає. Qrator поки що єдині в моїй практиці, хто дає близький до нуля відсоток хибних спрацьовувань, але при цьому вони в кілька разів дорожчі за інших гравців ринку.

Інші оператори теж дають якісний та стабільний захист. Багато сервісів на нашій підтримці (в т.ч. дуже відомі в країні!) стоять під захистом від DDoS-Guard, G-Core Labs, і цілком задоволені результатом.
Що є що та хто є хто на ринку захисту від DDoS
Атаки, відбиті Qrator

Є ще досвід із невеликими операторами захисту типу cloud-shield.ru, ddosa.net, тисячі їх. Однозначно не рекомендуватиму, т.к. досвід не дуже великий, розповім про принципи їхньої роботи. Вартість захисту у них часто на 1-2 порядки нижча, ніж у великих гравців. Як правило, вони купують послугу часткового захисту (L3/L4) у когось із великих гравців + роблять власний захист від атак на більш високих рівнях. Це може бути цілком ефективно + ви можете отримати хороший сервіс за менші гроші, але це все ж таки невеликі компанії з маленьким штатом, врахуйте, будь ласка.

У чому складність відбиття атак на рівні L7?

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

Колись вистачало модуля nginx-testcookie (https://github.com/kyprizel/testcookie-nginx-module), і його і зараз вистачає для відображення великої кількості атак. Коли я працював у хостинг-індустрії, L7 захист будував якраз на nginx-testcookie.
На жаль, атаки стали складнішими. testcookie використовує перевірки на ботів на базі JS, а багато сучасних ботів вміють їх успішно проходити.

Атакуючі ботнети також унікальні, і потрібно враховувати особливості кожного великого ботнету.
Ампліфікація, прямий флуд з ботнету, фільтрація трафіку з різних країн (різна фільтрація для різних країн), SYN/ACK флуд, фрагментація пакетів, ICMP, http флуд, при цьому на рівні програми/http можна вигадувати необмежену кількість різних атак.
У сумі на рівні захисту каналів, спеціалізованого обладнання для очищення трафіку, спец софту, додаткових налаштувань фільтрації для кожного клієнта можуть бути десятки та сотні рівнів фільтрації.
Щоб правильно керуватися цим і коректно тюнити налаштування фільтрації під різних користувачів, потрібен великий досвід та кваліфіковані кадри. Навіть великий оператор, який вирішив надавати послуги захисту, не може «тупо закидати проблему грошима»: досвід доведеться набивати на сайтах, що лежать, і помилкових спрацьовуваннях на легітимному трафіку.
Для оператора захисту немає кнопки «відбити DDoS», є багато інструментів, ними потрібно вміти користуватися.

І ще один бонусний приклад.
Що є що та хто є хто на ринку захисту від DDoS
Сервер без захисту був заблокований хостером при атаці ємністю 600 Мбіт.
(«Пропадання» трафіку не помітно, оскільки атакований був лише 1 сайт, його на якийсь час прибрали з сервера і блокування було знято в межах години).
Що є що та хто є хто на ринку захисту від DDoS
Цей сервер під захистом. Атакуючі "здалися" після доби відбитих атак. Сама атака виявилася не найсильнішою.

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

Джерело: habr.com

Додати коментар або відгук