butteff
@butteff
Раз в тысячу лет заправляю свитер в носки

Какие методы противодействия Ddos атакам существуют, что вообще есть по теме полезного?

Я вот сижу в раздумьях и ФЕЛАСАФ внутри меня никак не может понять сущность бытия.
Вот есть школьник обыкновенный. И он берет и ддосит сайт. Конечно, скачать какую-нибудь программу с хакир.ру и нажать на кнопку особого ума не надо, но где они берут ботнет? Для меня это загадка. Это первый пунктик, который я не могу понять. Сами собирают? Это не быстро, не безопасно и не просто. Если уязвимость используют общедоступную, то она быстро трется и ботнет этот становится ничтожно малым довольно быстро. Покупают приватные сеточки? Но откуда у школьника на них деньги? Мало того, что уголовный кодекс нарушается, так еще и мамка в угол поставит, а вдруг там холодно, страшно и темно?

Вторая философская загадка кроится в том, что вроде как защита есть, можно запросы фильтровать, перенаправлять и вообще нагрузки на разные сервера распределять, но в то же время канал не резиновый все равно и при желании большими объемами трафика можно положить что угодно, даже фэйсбук, и куда после этого постить фотографии кота? Т.е. под большими объемами уязвимы все.

Получается, что защиты нет, а ддос прост даже для детей. Пичалька.

Или все же ддос не так прост?
И защита все же имеется?
Тогда какая, кроме qrator и клаудфары?

Ну и еще вопросы для общего развития:

1. Как понять что тебя ддосят, если твой сервер лежит и не отвечает? мало ли что там может быть такого убаюкивающего для него. Как понять, что идет именно ддос?
2. Что можно сделать самому на сервере, чтобы максимально быть готовым к ддосу? Кроме правил iptables есть ли еще какие-то фичи?
3. Законно ли перенаправлять атакующий трафик назад? С одной стороны, он сам нарвался же. С другой, зараженные сервера ботнета могут быть полезными, вдруг там порносайт какой, а я его ответным трафиком положу... Есть ли где-то инструкции или чтиво по теме отражения атак?
4. если я купил много прокси серверов и провожу ддос атаки на свой с целью проверить нагрузки и отказоустойчивость, это я тоже закон нарушил? Ботнет же, атаки во все поля....
5. Отслеживается ли вообще активность таких атак как-то по сети? Не зря же китайцы фаервол себе захерачили, наверное отслеживается? Почему тогда школьников не попересажали еще, вероятно, отслеживается плохо?
6. Как ведут себя провайдеры? им проще клиента отключить, как я понимаю, верно? Но если ДНС прописаны на сервера хостинг провайдера, как его не выброси, атаки пойдут именно туда. Все равно придется фильтровать как-то... Как вообще борятся с атаками хостинги и провайдеры? Не сидят же они сложа руки?

Ну и любые советы, книги, статьи по данному направлению приветствуются.
Особенно интересны методы защиты. А то сплю плохо.
  • Вопрос задан
  • 6843 просмотра
Решения вопроса 4
RicoX
@RicoX
Ушел на http://ru.stackoverflow.com/
1. Как понять что тебя ддосят, если твой сервер лежит и не отвечает? мало ли что там может быть такого убаюкивающего для него. Как понять, что идет именно ддос?

Ну на большинстве серверов все-таки стоит система мониторинга, которая и показывает аномальный рост определенного показателя сервера, если ситема не стоит и вы еще можете попасть на сервер, то смотрится ручками, если уже не можете попасть удаленно то смотрите через IP-KVM, все прекрасно видно по каунтерам.
2. Что можно сделать самому на сервере, чтобы максимально быть готовым к ддосу? Кроме правил iptables есть ли еще какие-то фичи?

Зависит от количества свободных денег, тут как обычно противодействие оружия и брони, кто больше вложил тот и победил, ваши правила фаирвола для ДДоС до задницы, помогут только от простого ДоС, при нормальном ДДоС вас проще всего снести атакой на полосу и вообще не заморачиваться тем, что там у вас настроено - это дешево и эффективно.
3. Законно ли перенаправлять атакующий трафик назад? С одной стороны, он сам нарвался же. С другой, зараженные сервера ботнета могут быть полезными, вдруг там порносайт какой, а я его ответным трафиком положу... Есть ли где-то инструкции или чтиво по теме отражения атак?

ДДосят не с одного адреса, ну перенаправляйте, поднимите на свой сервак нагрузку в 2 раза, ляжете вдвое быстрее. Представьте что вокруг вас стоит 1000 человек и каждый плюет в вас, сможете от всех отплеваться?
4. если я купил много прокси серверов и провожу ддос атаки на свой с целью проверить нагрузки и отказоустойчивость, это я тоже закон нарушил? Ботнет же, атаки во все поля....

Атаки не проводят с proxy серверов, с таким же успехом можно атаковать со своего тостера. Для проверки поведения сервера под нагрузкой есть специальные инструменты, например hping, ab, yandex tank .... их достаточно, чтоб понять как поведет себя сервер под определенной атакой, смотреть просто, по плечу атаки, чем больше плече, тем проще уложить ваш сервер, многим сервакам достаточно атаки с одной машины чтобы лечь полностью.
5. Отслеживается ли вообще активность таких атак как-то по сети? Не зря же китайцы фаервол себе захерачили, наверное отслеживается? Почему тогда школьников не попересажали еще, вероятно, отслеживается плохо?

Кому нужно, те отслеживают, большинству начхать. Чтоб отслеживать надо не слабо вложиться в коллекторы трафика, купить систему анализа, нанять спецов по работе с ней, этим занимаются только богатые фирмы, посмотрите цены на оборудование того-же Arbor - поймете начиная с какого уровня компании есть смысл с этим заморачиватся, а не уходить под чужую защиту.
6. Как ведут себя провайдеры? им проще клиента отключить, как я понимаю, верно? Но если ДНС прописаны на сервера хостинг провайдера, как его не выброси, атаки пойдут именно туда. Все равно придется фильтровать как-то... Как вообще борятся с атаками хостинги и провайдеры? Не сидят же они сложа руки?

Если мы говорим о хостерах, то мелкие уходят под защиту, крупные имеют свое оборудование для борьбы в автоматическом режиме, если клиента постоянно атакуют, а он не хочет платить за защиту, то его дешевле отключить. Если мы говорим про ISP, то в большинстве случаев им насрать и дешевле пропускать весь трафик, чем анализировать его, у ISP очень жирные каналы и начинают они чесаться если ДДоС уж очень серьезный, на сегодня это за 100 гигабит полосы, тогда начинают блочить атакуемые адреса на BGP, заворачивая в null.

Из книг и советов - лучший гугл, ищите список возможных атак, потом по каждой атаке читаете отдельно методы противодействия, защита от серьезной атаки, не уровня hping у школьника - это очень дорого.
Ответ написан
kumaxim
@kumaxim
Web-программист
Значит так, господин философ, примитивная защита реализуется на уровне сервера примерно так:
1)Ставим nginx как бэк-энд apache. Первый у нас будет отдавать юзерам статику, второй - обрабатывать динамику
2)Под атакой для всех юзеров, которые нас посещают, пытаемся установить javascript'ом свой cookie. Если получается - перед нами человек, нет - бот, который идет в топку
3)Далее фильтр по белому списку стран. Если у тебя 90% посетителей из РФ - руби остальные страны нафиг.

Это не сильно затратные меры, по цене протиподействия где-то около 100 баксов опытному админу за настройку.

Отдельно могу посоветовать посмотреть свой код, может быть где-то можно усилить кэширование, где-то оптимизировать вычисления(для самописных сайтов).

Далее, если ДДоС предыдущими средствами зарезать не удалось, подключай CDN. Из популярных нынче могу рекомендовать CloudFlare. Есть бесплатный тариф. Если мало - смотри в сторону Amazon S3. Из российских есть от reg.ru Jelastic. Можешь тоже посмотреть, но вопрос про ДДоС советую в тех.поддержку задать отдельно.

Если ты нарвался на атаку, от которой тебя не спасает даже CDN, значит ты сотрудник правительства РФ, а таких на тостере, лично я, не консультирую.
Ответ написан
@sergey_privacy
Админ со стажем, начинающий DevOps
Ваш вопрос слишком охватывает слишком широкий круг атак, чтобы можно было ответить однозначно. Сначала изучите базу, а потом определитесь с конкретными видами атак. Защиту от каждой в отдельности уже и изучайте. В целом, от ДДОС защиты нет, может быть комплекс мер, уменьшающий риск от ДДОС-а. ДДОС-атаки могут быть разных видов.
1. Простое параллельное открытие десятков страниц с тысячи компов - вот уже ДДОС, направленный на веб сервисы. Спастись можно установкой ограничения на количество одновременно запрашиваемых страниц с одного адреса. Остальное резать файрволом. Можно расширить "ферму" серверов, балансируя нагрузку равномерно. Использовать кэширующие серверы.
2. Старейшая и классическая ДОС, расширенная до ДДОС: TCP SYN-ACK атака. Т.е. с каждого компьютера происходит запрос на открытие нового TCP-соединения, переполняя буферы операционной системы. Защита как в первом случае + система обнаружения вторжений помогут свести на нет всю атаку.
3. Самый обычный ICMP-флуд гораздо эффективнее и от него спастись гораздо сложнее. Адрес вашего сервиса находят с помощью запроса к ДНС. Потом по таблице маршрутизации пакеты идут к вашему провайдеру и далее к вашему компьютеру или сервису. Любой пришедший к вам пакет провайдер отсылает вам, а можете вы его переварить или нет - не его проблема. При наличии канала в 100Мбит/сек до провайдера, вдруг приходит поток ICMP ping пакетов объемом 400Мбит/сек. Маршрутизатор провайдера передает его вам. Все пакеты, которые не уместились в ширину канала, были отброшены. Все, ДДОС прошел. Ваши сервера могут иметь любые сервисы и службы для защиты от атак. Канал забит, значит хакер добился цели. Провайдер может обнаружить атаку и начать резать трафик к вам на своем уровне. Но ДДОС легко может забить и входящий канал провайдера. В таком случае нужно строить сложную схему с распределением нагрузки по серверам, наличие нескольких провайдеров, соглашение с ними о сервисе защиты от атак и т.д. Стоимость реализации такая, что ее могут себе позволить только компании-гиганты.

Видов ДДОС-атак может быть множество. Одни направлены на забивание канала, другие направлены на зависание операционной системы, третьи на неработоспособность сервисов. Защита от всех ДДОС-ов требует целого комплекса ОЧЕНЬ дорогостоящих мер, выделения большого количества оборудования, согласования совместных мер с провайдером.
Ответ написан
Комментировать
@throughtheether
human after all
В нижеследующих параграфах под DDoS-атакой я буду подразумевать высокоинтенсивный флуд, если не указано иного. В общем смысле это неверно, но по определенным причинам такой подход довольно популярен.

Конечно, скачать какую-нибудь программу с хакир.ру и нажать на кнопку особого ума не надо, но где они берут ботнет? Для меня это загадка. Это первый пунктик, который я не могу понять. Сами собирают? Это не быстро, не безопасно и не просто.
Иногда бывает, что многие люди одновременно сами осознанно запускают "вредоносную" программу (см. hacktivism, loic и прочая), т.е. ботнет не нужен. Иногда бывает (amplification attacks), что достаточно десятков скомпроментированных серверов (у них пропускная способность выше), чтобы сгенерировать несколько гигабит/c трафика, которые затем многократно умножатся и придут к жертве.

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

Вторая философская загадка кроится в том, что вроде как защита есть, можно запросы фильтровать, перенаправлять и вообще нагрузки на разные сервера распределять, но в то же время канал не резиновый все равно и при желании большими объемами трафика можно положить что угодно, даже фэйсбук, и куда после этого постить фотографии кота? Т.е. под большими объемами уязвимы все.
Скажем так, чтобы к жертве пришло N гигабит/с трафика,их должен кто-то сгенерировать. Поэтому чем более сконцентрирована цель и чем более "распределен" атакующий, тем больше вероятность успешной атаки. И наоборот.

1. Как понять что тебя ддосят, если твой сервер лежит и не отвечает? мало ли что там может быть такого убаюкивающего для него. Как понять, что идет именно ддос?
При помощи внятного заранее настроенного мониторинга. Необходимо заранее рассмотреть возможные варианты атаки, спрогнозировать (смоделировать) их влияние на оперативно отслеживаемые метрики (утилизация каналов в bps/pps, утилизация CPU, поведение веб-сервера или сервера приложений), иметь отдельную консоль (в смысле dashboard) со всему релевантными метриками, уметь их правильно истолковать.

2. Что можно сделать самому на сервере, чтобы максимально быть готовым к ддосу? Кроме правил iptables есть ли еще какие-то фичи?
Разрешить только рабочий трафик, запретить весь остальной. Организовать out-of-band доступ к серверам/инфраструктуре. С моей точки зрения, стоит стремиться к тому, чтобы рабочий сервер мог в штатном режиме обработать трафик, утилизирующий всю его канальную емкость.

3. Законно ли перенаправлять атакующий трафик назад? С одной стороны, он сам нарвался же. С другой, зараженные сервера ботнета могут быть полезными, вдруг там порносайт какой, а я его ответным трафиком положу... Есть ли где-то инструкции или чтиво по теме отражения атак?
По поводу законности подобных действий ничего не могу сказать, к тому же вы не указали юрисдикцию.

4. если я купил много прокси серверов и провожу ддос атаки на свой с целью проверить нагрузки и отказоустойчивость, это я тоже закон нарушил? Ботнет же, атаки во все поля....
Опять же ничего не могу сказать касательно законности подобных действий. Намекну, если неизвестный аноним, соблюдая минимальные предосторожности, заказал двум-трем популярным DDoS-сервисам [тестовую] атаку на вашу инфраструктуру, то вы-то тут при чём?

5. Отслеживается ли вообще активность таких атак как-то по сети? Не зря же китайцы фаервол себе захерачили, наверное отслеживается? Почему тогда школьников не попересажали еще, вероятно, отслеживается плохо?
Подобная активность, насколько мне известно, в основном отслеживается профильными организациями (например, Arbor networks). Касательно второго и третьего вопросов ничего не могу сказать.

6. Как ведут себя провайдеры? им проще клиента отключить, как я понимаю, верно? Но если ДНС прописаны на сервера хостинг провайдера, как его не выброси, атаки пойдут именно туда. Все равно придется фильтровать как-то... Как вообще борятся с атаками хостинги и провайдеры? Не сидят же они сложа руки?
Если трафик до клиента представляет угрозу работоспособности хостинга в целом (например, вследствие чрезмерной утилизации аплинков), то трафик до него, как правило, блокируется (вручную при помощи ACL на оборудовании вышестоящего провайдера, при помощи BGP blackhole и т.д.). При наличии, может использоваться специализированное оборудование.

Ну и любые советы, книги, статьи по данному направлению приветствуются.
Особенно интересны методы защиты.

Статьи:
www.incapsula.com/blog
https://blog.cloudflare.com/
www.arbornetworks.com/asert
www.arbornetworks.com/resources/media-library/ente...
nsfocusblog.com/tag/anti-ddos
www.team-cymru.org/articles.html
Некоторые технологии, полезные для защиты: BGP Anycast, BGP RTBH, BGP flowspec, BPF. В области L7-анализа и фильтрации различных технологий и подходов больше.

А то сплю плохо.
Высыпайтесь.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@inkvizitor68sl
Linux-сисадмин с 8 летним стажем.
Записал в тудушку себе написать статью, недели через 2 на debian.pro появится. Может раньше.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы